RTC Toolkit  0.1.0-alpha
Public Member Functions | Protected Attributes | List of all members
rtctk::telRepub::PubThreadBase< Q_SIZE > Class Template Reference

#include <ddsPubThread.hpp>

Public Member Functions

 PubThreadBase (const char *topic_name)
 
virtual ~PubThreadBase ()
 
virtual bool push (topicT const &value)
 
std::string getTopicName ()
 

Protected Attributes

bool push_ret
 
boost::lockfree::spsc_queue< topicT, boost::lockfree::capacity< Q_SIZE > > * queue_m
 
unsigned long rcvSamples_m
 
unsigned long skipedSamples_m
 
uint32_t lastSkipedSample_m
 
std::string topic_name_m
 
boost::mutex mut
 
boost::condition_variable cond
 

Detailed Description

template<int Q_SIZE = 3000>
class rtctk::telRepub::PubThreadBase< Q_SIZE >

DDS publisher thread class that provides queue with aggregated topic to be published by DDS. At the moment the size is hardcoded to 3000 i.e. 3000 agnostic topic samples

Constructor & Destructor Documentation

◆ PubThreadBase()

template<int Q_SIZE = 3000>
rtctk::telRepub::PubThreadBase< Q_SIZE >::PubThreadBase ( const char *  topic_name)
inline

◆ ~PubThreadBase()

template<int Q_SIZE = 3000>
virtual rtctk::telRepub::PubThreadBase< Q_SIZE >::~PubThreadBase ( )
inlinevirtual

Member Function Documentation

◆ getTopicName()

template<int Q_SIZE = 3000>
std::string rtctk::telRepub::PubThreadBase< Q_SIZE >::getTopicName ( )
inline

◆ push()

template<int Q_SIZE = 3000>
virtual bool rtctk::telRepub::PubThreadBase< Q_SIZE >::push ( topicT const &  value)
inlinevirtual

Push aggregated topic to the queue. If it is full an error message is logged.

Parameters
valueaggregated topic sample to be put (push) to the queue

Member Data Documentation

◆ cond

template<int Q_SIZE = 3000>
boost::condition_variable rtctk::telRepub::PubThreadBase< Q_SIZE >::cond
protected

◆ lastSkipedSample_m

template<int Q_SIZE = 3000>
uint32_t rtctk::telRepub::PubThreadBase< Q_SIZE >::lastSkipedSample_m
protected

◆ mut

template<int Q_SIZE = 3000>
boost::mutex rtctk::telRepub::PubThreadBase< Q_SIZE >::mut
protected

◆ push_ret

template<int Q_SIZE = 3000>
bool rtctk::telRepub::PubThreadBase< Q_SIZE >::push_ret
protected

◆ queue_m

template<int Q_SIZE = 3000>
boost::lockfree::spsc_queue<topicT, boost::lockfree::capacity<Q_SIZE> >* rtctk::telRepub::PubThreadBase< Q_SIZE >::queue_m
protected

◆ rcvSamples_m

template<int Q_SIZE = 3000>
unsigned long rtctk::telRepub::PubThreadBase< Q_SIZE >::rcvSamples_m
protected

◆ skipedSamples_m

template<int Q_SIZE = 3000>
unsigned long rtctk::telRepub::PubThreadBase< Q_SIZE >::skipedSamples_m
protected

◆ topic_name_m

template<int Q_SIZE = 3000>
std::string rtctk::telRepub::PubThreadBase< Q_SIZE >::topic_name_m
protected

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