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

#include <subscription_queue.h>

Inheritance diagram for ros::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 ros::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_
 
boost::mutex queue_mutex_
 
uint32_t queue_size_
 
int32_t size_
 
std::string topic_
 

Additional Inherited Members

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

Detailed Description

Definition at line 50 of file subscription_queue.h.

Member Typedef Documentation

◆ D_Item

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

Definition at line 64 of file subscription_queue.h.

Constructor & Destructor Documentation

◆ SubscriptionQueue()

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

Definition at line 36 of file subscription_queue.cpp.

◆ ~SubscriptionQueue()

ros::SubscriptionQueue::~SubscriptionQueue ( )

Definition at line 44 of file subscription_queue.cpp.

Member Function Documentation

◆ call()

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

Call this callback.

Returns
The result of the call

Implements ros::CallbackInterface.

Definition at line 102 of file subscription_queue.cpp.

◆ clear()

void ros::SubscriptionQueue::clear ( )

Definition at line 93 of file subscription_queue.cpp.

◆ full()

bool ros::SubscriptionQueue::full ( )

Definition at line 175 of file subscription_queue.cpp.

◆ fullNoLock()

bool ros::SubscriptionQueue::fullNoLock ( )
private

Definition at line 181 of file subscription_queue.cpp.

◆ push()

void ros::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 
)

Definition at line 49 of file subscription_queue.cpp.

◆ ready()

bool ros::SubscriptionQueue::ready ( )
virtual

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

Reimplemented from ros::CallbackInterface.

Definition at line 170 of file subscription_queue.cpp.

Member Data Documentation

◆ allow_concurrent_callbacks_

bool ros::SubscriptionQueue::allow_concurrent_callbacks_
private

Definition at line 88 of file subscription_queue.h.

◆ callback_mutex_

boost::recursive_mutex ros::SubscriptionQueue::callback_mutex_
private

Definition at line 90 of file subscription_queue.h.

◆ full_

bool ros::SubscriptionQueue::full_
private

Definition at line 83 of file subscription_queue.h.

◆ queue_

D_Item ros::SubscriptionQueue::queue_
private

Definition at line 86 of file subscription_queue.h.

◆ queue_mutex_

boost::mutex ros::SubscriptionQueue::queue_mutex_
private

Definition at line 85 of file subscription_queue.h.

◆ queue_size_

uint32_t ros::SubscriptionQueue::queue_size_
private

Definition at line 87 of file subscription_queue.h.

◆ size_

int32_t ros::SubscriptionQueue::size_
private

Definition at line 82 of file subscription_queue.h.

◆ topic_

std::string ros::SubscriptionQueue::topic_
private

Definition at line 81 of file subscription_queue.h.


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


roscpp
Author(s): Morgan Quigley, Josh Faust, Brian Gerkey, Troy Straszheim, Dirk Thomas , Jacob Perron
autogenerated on Thu Nov 23 2023 04:01:45