#include <fifo.h>
Public Member Functions | |
Fifo (int fifo_length=20) | |
virtual bool | Pop (T &element, fifo_timestamp ×tamp, size_t &counter) |
virtual size_t | Push (const T &element, const fifo_timestamp timestamp=fifo_clock::now(), size_t counter=0) |
virtual double | SecondsSinceLastPush () |
virtual void | Shutdown (void) |
virtual size_t | Size (void) |
virtual size_t | TotalMessagesPushed () |
virtual | ~Fifo () |
Static Public Member Functions | |
static double | Seconds (const fifo_timestamp ×tamp_start, const fifo_timestamp ×tamp_end=fifo_clock::now()) |
Protected Types | |
typedef std::tuple< T, fifo_timestamp, size_t > | fifo_element |
Protected Attributes | |
std::condition_variable | m_cond |
int | m_fifo_length |
std::mutex | m_mutex |
size_t | m_num_messages_received |
std::queue< fifo_element > | m_queue |
bool | m_shutdown |
fifo_timestamp | m_timestamp_last_msg_received |
|
protected |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinestatic |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |