Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
roswrap::SubscriptionQueue Class Reference

#include <subscription_queue.h>

Inheritance diagram for roswrap::SubscriptionQueue:
Inheritance graph
[legend]

Classes

struct  Item
 

Public Member Functions

virtual CallbackInterface::CallResult call ()
 Call this callback. More...
 
void clear ()
 
bool full ()
 
void push (const SubscriptionCallbackHelperPtr &helper, const MessageDeserializerPtr &deserializer, bool has_tracked_object, const VoidConstWPtr &tracked_object, bool nonconst_need_copy, ros::Time receipt_time=ros::Time(), bool *was_full=0)
 
virtual bool ready ()
 Provides the opportunity for specifying that a callback is not ready to be called before call() actually takes place. More...
 
 SubscriptionQueue (const std::string &topic, int32_t queue_size, bool allow_concurrent_callbacks)
 
 ~SubscriptionQueue ()
 
- Public Member Functions inherited from roswrap::CallbackInterface
virtual ~CallbackInterface ()
 

Private Types

typedef std::deque< ItemD_Item
 

Private Member Functions

bool fullNoLock ()
 

Private Attributes

bool allow_concurrent_callbacks_
 
boost::recursive_mutex callback_mutex_
 
bool full_
 
D_Item queue_
 
std::mutex queue_mutex_
 
uint32_t queue_size_
 
int32_t size_
 
std::string topic_
 

Additional Inherited Members

- Public Types inherited from roswrap::CallbackInterface
enum  CallResult { Success, TryAgain, Invalid }
 Possible results for the call() method. More...
 

Detailed Description

Definition at line 51 of file subscription_queue.h.

Member Typedef Documentation

◆ D_Item

typedef std::deque<Item> roswrap::SubscriptionQueue::D_Item
private

Definition at line 65 of file subscription_queue.h.

Constructor & Destructor Documentation

◆ SubscriptionQueue()

roswrap::SubscriptionQueue::SubscriptionQueue ( const std::string &  topic,
int32_t  queue_size,
bool  allow_concurrent_callbacks 
)

◆ ~SubscriptionQueue()

roswrap::SubscriptionQueue::~SubscriptionQueue ( )

Member Function Documentation

◆ call()

virtual CallbackInterface::CallResult roswrap::SubscriptionQueue::call ( )
virtual

Call this callback.

Returns
The result of the call

Implements roswrap::CallbackInterface.

◆ clear()

void roswrap::SubscriptionQueue::clear ( )

◆ full()

bool roswrap::SubscriptionQueue::full ( )

◆ fullNoLock()

bool roswrap::SubscriptionQueue::fullNoLock ( )
private

◆ push()

void roswrap::SubscriptionQueue::push ( const SubscriptionCallbackHelperPtr helper,
const MessageDeserializerPtr deserializer,
bool  has_tracked_object,
const VoidConstWPtr tracked_object,
bool  nonconst_need_copy,
ros::Time  receipt_time = ros::Time(),
bool *  was_full = 0 
)

◆ ready()

virtual bool roswrap::SubscriptionQueue::ready ( )
virtual

Provides the opportunity for specifying that a callback is not ready to be called before call() actually takes place.

Reimplemented from roswrap::CallbackInterface.

Member Data Documentation

◆ allow_concurrent_callbacks_

bool roswrap::SubscriptionQueue::allow_concurrent_callbacks_
private

Definition at line 89 of file subscription_queue.h.

◆ callback_mutex_

boost::recursive_mutex roswrap::SubscriptionQueue::callback_mutex_
private

Definition at line 91 of file subscription_queue.h.

◆ full_

bool roswrap::SubscriptionQueue::full_
private

Definition at line 84 of file subscription_queue.h.

◆ queue_

D_Item roswrap::SubscriptionQueue::queue_
private

Definition at line 87 of file subscription_queue.h.

◆ queue_mutex_

std::mutex roswrap::SubscriptionQueue::queue_mutex_
private

Definition at line 86 of file subscription_queue.h.

◆ queue_size_

uint32_t roswrap::SubscriptionQueue::queue_size_
private

Definition at line 88 of file subscription_queue.h.

◆ size_

int32_t roswrap::SubscriptionQueue::size_
private

Definition at line 83 of file subscription_queue.h.

◆ topic_

std::string roswrap::SubscriptionQueue::topic_
private

Definition at line 82 of file subscription_queue.h.


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


sick_scan_xd
Author(s): Michael Lehning , Jochen Sprickerhof , Martin Günther
autogenerated on Fri Oct 25 2024 02:47:15