camcom 1.0.3
 
Loading...
Searching...
No Matches
camcom::common::Queue< QueueType > Class Template Reference

#include <queue.hpp>

Public Member Functions

 Queue ()
 
 Queue (unsigned int max_size, std::string id)
 
virtual size_t GetSize ()
 
virtual void Clear ()
 
virtual void Push (QueueType value)
 
virtual bool Pop (QueueType &value)
 
virtual void Pop ()
 

Public Attributes

std::string m_queue_id
 
unsigned int m_max_size
 

Protected Attributes

std::queue< QueueType > m_queue
 
std::chrono::time_point< std::chrono::system_clock > m_last_queue_full_push_err {common::TimeNow()}
 
uint32_t m_queue_full_push_count {0}
 
std::mutex m_mutex
 
std::chrono::duration< double_t > m_log_full_push_timer {std::chrono::duration<double_t>(10)}
 

Constructor & Destructor Documentation

◆ Queue() [1/2]

template<typename QueueType>
camcom::common::Queue< QueueType >::Queue ( )
inline

◆ Queue() [2/2]

template<typename QueueType>
camcom::common::Queue< QueueType >::Queue ( unsigned int max_size,
std::string id )
inline

Member Function Documentation

◆ Clear()

template<typename QueueType>
virtual void camcom::common::Queue< QueueType >::Clear ( )
inlinevirtual

◆ GetSize()

template<typename QueueType>
virtual size_t camcom::common::Queue< QueueType >::GetSize ( )
inlinevirtual

◆ Pop() [1/2]

template<typename QueueType>
virtual void camcom::common::Queue< QueueType >::Pop ( )
inlinevirtual

◆ Pop() [2/2]

template<typename QueueType>
virtual bool camcom::common::Queue< QueueType >::Pop ( QueueType & value)
inlinevirtual

◆ Push()

template<typename QueueType>
virtual void camcom::common::Queue< QueueType >::Push ( QueueType value)
inlinevirtual

Member Data Documentation

◆ m_last_queue_full_push_err

template<typename QueueType>
std::chrono::time_point<std::chrono::system_clock> camcom::common::Queue< QueueType >::m_last_queue_full_push_err {common::TimeNow()}
protected

◆ m_log_full_push_timer

template<typename QueueType>
std::chrono::duration<double_t> camcom::common::Queue< QueueType >::m_log_full_push_timer {std::chrono::duration<double_t>(10)}
protected

◆ m_max_size

template<typename QueueType>
unsigned int camcom::common::Queue< QueueType >::m_max_size

◆ m_mutex

template<typename QueueType>
std::mutex camcom::common::Queue< QueueType >::m_mutex
protected

◆ m_queue

template<typename QueueType>
std::queue<QueueType> camcom::common::Queue< QueueType >::m_queue
protected

◆ m_queue_full_push_count

template<typename QueueType>
uint32_t camcom::common::Queue< QueueType >::m_queue_full_push_count {0}
protected

◆ m_queue_id

template<typename QueueType>
std::string camcom::common::Queue< QueueType >::m_queue_id

The documentation for this class was generated from the following file: