SubscriberLink handles broadcasting messages to a single subscriber on a single topic. More...
#include <transport_subscriber_link.h>
Public Member Functions | |
virtual void | drop () |
virtual void | enqueueMessage (const SerializedMessage &m, bool ser, bool nocopy) |
Queue up a message for publication. Throws out old messages if we've reached our Publication's max queue size. More... | |
const ConnectionPtr & | getConnection () |
virtual std::string | getTransportInfo () |
virtual std::string | getTransportType () |
bool | handleHeader (const Header &header) |
bool | initialize (const ConnectionPtr &connection) |
TransportSubscriberLink () | |
virtual | ~TransportSubscriberLink () |
Public Member Functions inherited from ros::SubscriberLink | |
int | getConnectionID () const |
const std::string & | getDataType () |
const std::string & | getDestinationCallerID () const |
const std::string & | getMD5Sum () |
const std::string & | getMessageDefinition () |
virtual void | getPublishTypes (bool &ser, bool &nocopy, const std::type_info &ti) |
const Stats & | getStats () |
const std::string & | getTopic () const |
virtual bool | isIntraprocess () |
SubscriberLink () | |
virtual | ~SubscriberLink () |
Private Member Functions | |
void | onConnectionDropped (const ConnectionPtr &conn) |
void | onHeaderWritten (const ConnectionPtr &conn) |
void | onMessageWritten (const ConnectionPtr &conn) |
void | startMessageWrite (bool immediate_write) |
Private Attributes | |
ConnectionPtr | connection_ |
boost::signals2::connection | dropped_conn_ |
bool | header_written_ |
std::queue< SerializedMessage > | outbox_ |
boost::mutex | outbox_mutex_ |
bool | queue_full_ |
bool | writing_message_ |
Additional Inherited Members | |
Protected Member Functions inherited from ros::SubscriberLink | |
bool | verifyDatatype (const std::string &datatype) |
Protected Attributes inherited from ros::SubscriberLink | |
unsigned int | connection_id_ |
std::string | destination_caller_id_ |
PublicationWPtr | parent_ |
Stats | stats_ |
std::string | topic_ |
SubscriberLink handles broadcasting messages to a single subscriber on a single topic.
Definition at line 41 of file transport_subscriber_link.h.
ros::TransportSubscriberLink::TransportSubscriberLink | ( | ) |
Definition at line 44 of file transport_subscriber_link.cpp.
|
virtual |
Definition at line 52 of file transport_subscriber_link.cpp.
|
virtual |
Implements ros::SubscriberLink.
Definition at line 233 of file transport_subscriber_link.cpp.
|
virtual |
Queue up a message for publication. Throws out old messages if we've reached our Publication's max queue size.
Implements ros::SubscriberLink.
Definition at line 177 of file transport_subscriber_link.cpp.
|
inline |
Definition at line 51 of file transport_subscriber_link.h.
|
virtual |
Implements ros::SubscriberLink.
Definition at line 228 of file transport_subscriber_link.cpp.
|
virtual |
Implements ros::SubscriberLink.
Definition at line 223 of file transport_subscriber_link.cpp.
bool ros::TransportSubscriberLink::handleHeader | ( | const Header & | header | ) |
Definition at line 65 of file transport_subscriber_link.cpp.
bool ros::TransportSubscriberLink::initialize | ( | const ConnectionPtr & | connection | ) |
Definition at line 57 of file transport_subscriber_link.cpp.
|
private |
Definition at line 122 of file transport_subscriber_link.cpp.
|
private |
Definition at line 137 of file transport_subscriber_link.cpp.
|
private |
Definition at line 144 of file transport_subscriber_link.cpp.
|
private |
Definition at line 151 of file transport_subscriber_link.cpp.
|
private |
Definition at line 68 of file transport_subscriber_link.h.
|
private |
Definition at line 69 of file transport_subscriber_link.h.
|
private |
Definition at line 66 of file transport_subscriber_link.h.
|
private |
Definition at line 71 of file transport_subscriber_link.h.
|
private |
Definition at line 72 of file transport_subscriber_link.h.
|
private |
Definition at line 73 of file transport_subscriber_link.h.
|
private |
Definition at line 65 of file transport_subscriber_link.h.