#include <subscription_queue.h>
Classes | |
struct | Item |
Public Member Functions | |
virtual CallbackInterface::CallResult | call () |
Call this callback. | |
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. | |
SubscriptionQueue (const std::string &topic, int32_t queue_size, bool allow_concurrent_callbacks) | |
~SubscriptionQueue () | |
Private Types | |
typedef std::deque< Item > | D_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_ |
Definition at line 50 of file subscription_queue.h.
typedef std::deque<Item> ros::SubscriptionQueue::D_Item [private] |
Definition at line 64 of file subscription_queue.h.
ros::SubscriptionQueue::SubscriptionQueue | ( | const std::string & | topic, | |
int32_t | queue_size, | |||
bool | allow_concurrent_callbacks | |||
) |
Definition at line 36 of file subscription_queue.cpp.
ros::SubscriptionQueue::~SubscriptionQueue | ( | ) |
Definition at line 44 of file subscription_queue.cpp.
CallbackInterface::CallResult ros::SubscriptionQueue::call | ( | ) | [virtual] |
Call this callback.
Implements ros::CallbackInterface.
Definition at line 102 of file subscription_queue.cpp.
void ros::SubscriptionQueue::clear | ( | ) |
Definition at line 93 of file subscription_queue.cpp.
bool ros::SubscriptionQueue::full | ( | ) |
Definition at line 175 of file subscription_queue.cpp.
bool ros::SubscriptionQueue::fullNoLock | ( | ) | [private] |
Definition at line 181 of file subscription_queue.cpp.
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.
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.
bool ros::SubscriptionQueue::allow_concurrent_callbacks_ [private] |
Definition at line 85 of file subscription_queue.h.
boost::recursive_mutex ros::SubscriptionQueue::callback_mutex_ [private] |
Definition at line 87 of file subscription_queue.h.
bool ros::SubscriptionQueue::full_ [private] |
Definition at line 80 of file subscription_queue.h.
D_Item ros::SubscriptionQueue::queue_ [private] |
Definition at line 83 of file subscription_queue.h.
boost::mutex ros::SubscriptionQueue::queue_mutex_ [private] |
Definition at line 82 of file subscription_queue.h.
uint32_t ros::SubscriptionQueue::queue_size_ [private] |
Definition at line 84 of file subscription_queue.h.
int32_t ros::SubscriptionQueue::size_ [private] |
Definition at line 79 of file subscription_queue.h.
std::string ros::SubscriptionQueue::topic_ [private] |
Definition at line 78 of file subscription_queue.h.