Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ros::ConnectionManager Class Reference

#include <connection_manager.h>

Public Member Functions

void addConnection (const ConnectionPtr &connection)
 Add a connection to be tracked by the node. Will automatically remove them if they've been dropped, but from inside the ros thread. More...
void clear (Connection::DropReason reason)
 ConnectionManager ()
uint32_t getNewConnectionID ()
 Get a new connection ID. More...
uint32_t getTCPPort ()
const TransportTCPPtrgetTCPServerTransport ()
uint32_t getUDPPort ()
const TransportUDPPtrgetUDPServerTransport ()
void shutdown ()
void start ()
void udprosIncomingConnection (const TransportUDPPtr &transport, Header &header)
 ~ConnectionManager ()

Static Public Member Functions

static const ConnectionManagerPtrinstance ()

Private Member Functions

void onConnectionDropped (const ConnectionPtr &conn)
bool onConnectionHeaderReceived (const ConnectionPtr &conn, const Header &header)
void removeDroppedConnections ()
void tcprosAcceptConnection (const TransportTCPPtr &transport)

Private Attributes

uint32_t connection_id_counter_
boost::mutex connection_id_counter_mutex_
S_Connection connections_
boost::mutex connections_mutex_
V_Connection dropped_connections_
boost::mutex dropped_connections_mutex_
boost::signals2::connection poll_conn_
PollManagerPtr poll_manager_
TransportTCPPtr tcpserver_transport_
TransportUDPPtr udpserver_transport_

Static Private Attributes

static const int MAX_TCPROS_CONN_QUEUE = 100

Detailed Description

Definition at line 44 of file connection_manager.h.

Constructor & Destructor Documentation

ros::ConnectionManager::ConnectionManager ( )

Definition at line 49 of file connection_manager.cpp.

ros::ConnectionManager::~ConnectionManager ( )

Definition at line 54 of file connection_manager.cpp.

Member Function Documentation

void ros::ConnectionManager::addConnection ( const ConnectionPtr connection)

Add a connection to be tracked by the node. Will automatically remove them if they've been dropped, but from inside the ros thread.

Theconnection to add

Definition at line 140 of file connection_manager.cpp.

void ros::ConnectionManager::clear ( Connection::DropReason  reason)

Definition at line 103 of file connection_manager.cpp.

uint32_t ros::ConnectionManager::getNewConnectionID ( )

Get a new connection ID.

Definition at line 133 of file connection_manager.cpp.

uint32_t ros::ConnectionManager::getTCPPort ( )

Definition at line 123 of file connection_manager.cpp.

const TransportTCPPtr& ros::ConnectionManager::getTCPServerTransport ( )

Definition at line 67 of file connection_manager.h.

uint32_t ros::ConnectionManager::getUDPPort ( )

Definition at line 128 of file connection_manager.cpp.

const TransportUDPPtr& ros::ConnectionManager::getUDPServerTransport ( )

Definition at line 68 of file connection_manager.h.

const ConnectionManagerPtr & ros::ConnectionManager::instance ( )

Definition at line 43 of file connection_manager.cpp.

void ros::ConnectionManager::onConnectionDropped ( const ConnectionPtr conn)

Definition at line 148 of file connection_manager.cpp.

bool ros::ConnectionManager::onConnectionHeaderReceived ( const ConnectionPtr conn,
const Header header 

Definition at line 196 of file connection_manager.cpp.

void ros::ConnectionManager::removeDroppedConnections ( )

Definition at line 154 of file connection_manager.cpp.

void ros::ConnectionManager::shutdown ( )

Definition at line 84 of file connection_manager.cpp.

void ros::ConnectionManager::start ( )

Definition at line 59 of file connection_manager.cpp.

void ros::ConnectionManager::tcprosAcceptConnection ( const TransportTCPPtr transport)

Definition at line 185 of file connection_manager.cpp.

void ros::ConnectionManager::udprosIncomingConnection ( const TransportUDPPtr transport,
Header header 

Definition at line 173 of file connection_manager.cpp.

Member Data Documentation

uint32_t ros::ConnectionManager::connection_id_counter_

Definition at line 94 of file connection_manager.h.

boost::mutex ros::ConnectionManager::connection_id_counter_mutex_

Definition at line 95 of file connection_manager.h.

S_Connection ros::ConnectionManager::connections_

Definition at line 87 of file connection_manager.h.

boost::mutex ros::ConnectionManager::connections_mutex_

Definition at line 89 of file connection_manager.h.

V_Connection ros::ConnectionManager::dropped_connections_

Definition at line 88 of file connection_manager.h.

boost::mutex ros::ConnectionManager::dropped_connections_mutex_

Definition at line 90 of file connection_manager.h.

const int ros::ConnectionManager::MAX_TCPROS_CONN_QUEUE = 100

Definition at line 102 of file connection_manager.h.

boost::signals2::connection ros::ConnectionManager::poll_conn_

Definition at line 97 of file connection_manager.h.

PollManagerPtr ros::ConnectionManager::poll_manager_

Definition at line 85 of file connection_manager.h.

TransportTCPPtr ros::ConnectionManager::tcpserver_transport_

Definition at line 99 of file connection_manager.h.

TransportUDPPtr ros::ConnectionManager::udpserver_transport_

Definition at line 100 of file connection_manager.h.

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

Author(s): Morgan Quigley, Josh Faust, Brian Gerkey, Troy Straszheim
autogenerated on Sun Feb 3 2019 03:29:54