Public Member Functions | Private Member Functions | Private Attributes
ros::TransportPublisherLink Class Reference

Handles a connection to a single publisher on a given topic. Receives messages from a publisher and hands them off to its parent Subscription. More...

#include <transport_publisher_link.h>

Inheritance diagram for ros::TransportPublisherLink:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void drop ()
const ConnectionPtr & getConnection ()
virtual std::string getTransportType ()
bool initialize (const ConnectionPtr &connection)
 TransportPublisherLink (const SubscriptionPtr &parent, const std::string &xmlrpc_uri, const TransportHints &transport_hints)
virtual ~TransportPublisherLink ()

Private Member Functions

virtual void handleMessage (const SerializedMessage &m, bool ser, bool nocopy)
 Handles handing off a received message to the subscription, where it will be deserialized and called back.
void onConnectionDropped (const ConnectionPtr &conn, Connection::DropReason reason)
bool onHeaderReceived (const ConnectionPtr &conn, const Header &header)
void onHeaderWritten (const ConnectionPtr &conn)
void onMessage (const ConnectionPtr &conn, const boost::shared_array< uint8_t > &buffer, uint32_t size, bool success)
void onMessageLength (const ConnectionPtr &conn, const boost::shared_array< uint8_t > &buffer, uint32_t size, bool success)
void onRetryTimer (const ros::WallTimerEvent &)

Private Attributes

ConnectionPtr connection_
bool dropping_
bool needs_retry_
WallTime next_retry_
WallDuration retry_period_
int32_t retry_timer_handle_

Detailed Description

Handles a connection to a single publisher on a given topic. Receives messages from a publisher and hands them off to its parent Subscription.

Definition at line 51 of file transport_publisher_link.h.


Constructor & Destructor Documentation

ros::TransportPublisherLink::TransportPublisherLink ( const SubscriptionPtr &  parent,
const std::string &  xmlrpc_uri,
const TransportHints transport_hints 
)

Definition at line 58 of file transport_publisher_link.cpp.

Definition at line 66 of file transport_publisher_link.cpp.


Member Function Documentation

Implements ros::PublisherLink.

Definition at line 105 of file transport_publisher_link.cpp.

const ConnectionPtr& ros::TransportPublisherLink::getConnection ( ) [inline]

Definition at line 60 of file transport_publisher_link.h.

Implements ros::PublisherLink.

Definition at line 296 of file transport_publisher_link.cpp.

void ros::TransportPublisherLink::handleMessage ( const SerializedMessage m,
bool  ser,
bool  nocopy 
) [private, virtual]

Handles handing off a received message to the subscription, where it will be deserialized and called back.

Implements ros::PublisherLink.

Definition at line 283 of file transport_publisher_link.cpp.

bool ros::TransportPublisherLink::initialize ( const ConnectionPtr &  connection)

Definition at line 78 of file transport_publisher_link.cpp.

void ros::TransportPublisherLink::onConnectionDropped ( const ConnectionPtr &  conn,
Connection::DropReason  reason 
) [private]

Definition at line 243 of file transport_publisher_link.cpp.

bool ros::TransportPublisherLink::onHeaderReceived ( const ConnectionPtr &  conn,
const Header header 
) [private]

Definition at line 121 of file transport_publisher_link.cpp.

void ros::TransportPublisherLink::onHeaderWritten ( const ConnectionPtr &  conn) [private]

Definition at line 116 of file transport_publisher_link.cpp.

void ros::TransportPublisherLink::onMessage ( const ConnectionPtr &  conn,
const boost::shared_array< uint8_t > &  buffer,
uint32_t  size,
bool  success 
) [private]

Definition at line 175 of file transport_publisher_link.cpp.

void ros::TransportPublisherLink::onMessageLength ( const ConnectionPtr &  conn,
const boost::shared_array< uint8_t > &  buffer,
uint32_t  size,
bool  success 
) [private]

Definition at line 142 of file transport_publisher_link.cpp.

Definition at line 193 of file transport_publisher_link.cpp.


Member Data Documentation

Definition at line 80 of file transport_publisher_link.h.

Definition at line 86 of file transport_publisher_link.h.

Definition at line 83 of file transport_publisher_link.h.

Definition at line 85 of file transport_publisher_link.h.

Definition at line 84 of file transport_publisher_link.h.

Definition at line 82 of file transport_publisher_link.h.


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


roscpp
Author(s): Morgan Quigley, Josh Faust, Brian Gerkey, Troy Straszheim
autogenerated on Mon Oct 6 2014 11:46:44