All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Files | Classes | Typedefs | Functions
Transport

Handles transportation of messages. More...

Files

file  TransportTypes.hh
 Forward declarations for transport.
 

Classes

class  gazebo::transport::CallbackHelper
 A helper class to handle callbacks when messages arrive. More...
 
class  gazebo::transport::CallbackHelperT< M >
 Callback helper Template. More...
 
class  gazebo::transport::Connection
 Single TCP/IP connection manager. More...
 
class  gazebo::transport::ConnectionManager
 Manager of connections. More...
 
class  gazebo::transport::IOManager
 Manages boost::asio IO. More...
 
class  gazebo::transport::Node
 A node can advertise and subscribe topics, publish on advertised topics and listen to subscribed topics. More...
 
class  gazebo::transport::Publication
 A publication for a topic. More...
 
class  gazebo::transport::PublicationTransport
 transport/transport.hh More...
 
class  gazebo::transport::Publisher
 A publisher of messages on a topic. More...
 
class  gazebo::transport::RawCallbackHelper
 Used to connect publishers to subscribers, where the subscriber wants the raw data from the publisher. More...
 
class  gazebo::transport::SubscribeOptions
 Options for a subscription. More...
 
class  gazebo::transport::Subscriber
 A subscriber to a topic. More...
 
class  gazebo::transport::SubscriptionTransport
 transport/transport.hh More...
 
class  gazebo::transport::TopicManager
 Manages topics and their subscriptions. More...
 

Typedefs

typedef CallbackHelper * gazebo::transport::CallbackHelperPtr
 boost shared pointer to transport::CallbackHelper
 

Functions

void gazebo::transport::clear_buffers ()
 Clear any remaining communication buffers.
 
void gazebo::transport::fini ()
 Cleanup the transport component.
 
bool gazebo::transport::get_master_uri (std::string &_master_host, unsigned int &_master_port)
 Get the hostname and port of the master from the GAZEBO_MASTER_URI environment variable.
 
void gazebo::transport::get_topic_namespaces (std::list< std::string > &_namespaces)
 Return all the namespace (world names) on the master.
 
std::map< std::string,
std::list< std::string > > 
gazebo::transport::getAdvertisedTopics ()
 Get a list of all the topics and their message types.
 
std::list< std::string > gazebo::transport::getAdvertisedTopics (const std::string &_msgType)
 Get a list of all the unique advertised topic names.
 
std::string gazebo::transport::getTopicMsgType (const std::string &_topicName)
 Get the message typename that is published on the given topic.
 
bool gazebo::transport::init (const std::string &_master_host="", unsigned int _master_port=0)
 Initialize the transport system.
 
bool gazebo::transport::is_stopped ()
 Is the transport system stopped?
 
void gazebo::transport::pause_incoming (bool _pause)
 Pause or unpause incoming messages.
 
msgs::Response * gazebo::transport::request (const std::string &_worldName, const std::string &_request, const std::string &_data="")
 Send a request and receive a response.
 
void gazebo::transport::requestNoReply (const std::string &_worldName, const std::string &_request, const std::string &_data="")
 Send a request and don't wait for a response.
 
void gazebo::transport::requestNoReply (NodePtr _node, const std::string &_request, const std::string &_data="")
 Send a request and don't wait for a response.
 
void gazebo::transport::run ()
 Run the transport component.
 
void gazebo::transport::stop ()
 Stop the transport component from running.
 

Detailed Description

Handles transportation of messages.

Typedef Documentation

typedef CallbackHelper* gazebo::transport::CallbackHelperPtr

boost shared pointer to transport::CallbackHelper

Function Documentation

void gazebo::transport::clear_buffers ( )

Clear any remaining communication buffers.

void gazebo::transport::fini ( )

Cleanup the transport component.

bool gazebo::transport::get_master_uri ( std::string &  _master_host,
unsigned int &  _master_port 
)

Get the hostname and port of the master from the GAZEBO_MASTER_URI environment variable.

Parameters
[out]_master_hostThe hostname of the master is set to this param
[out]_master_portThe port of the master is set to this param
Returns
true if GAZEBO_MASTER_URI was successfully parsed; false otherwise (in which case output params are not set)
void gazebo::transport::get_topic_namespaces ( std::list< std::string > &  _namespaces)

Return all the namespace (world names) on the master.

Parameters
[out]_namespacesThe list of namespace will be written here
std::map<std::string, std::list<std::string> > gazebo::transport::getAdvertisedTopics ( )

Get a list of all the topics and their message types.

Returns
A map where keys are message types, and values are a list of topic names.
std::list<std::string> gazebo::transport::getAdvertisedTopics ( const std::string &  _msgType)

Get a list of all the unique advertised topic names.

Parameters
[in]_msgTypeType of message to filter the result on. If empty, then a list of all the topics is returned.
Returns
A list of the advertised topics that publish messages of the type specified by _msgType.
std::string gazebo::transport::getTopicMsgType ( const std::string &  _topicName)

Get the message typename that is published on the given topic.

Parameters
[in]_topicNameName of the topic to query.
Returns
The message type, or empty string if the topic is not valid.
bool gazebo::transport::init ( const std::string &  _master_host = "",
unsigned int  _master_port = 0 
)

Initialize the transport system.

Parameters
[in]_master_hostThe hostname or IP of the master. Leave empty to use pull address from the GAZEBO_MASTER_URI env var.
[in]_master_portThe port of the master. Leave empty to use pull address from the GAZEBO_MASTER_URI env var.
Returns
true if initialization succeeded; false otherwise
bool gazebo::transport::is_stopped ( )

Is the transport system stopped?

Returns
true if the transport system is stopped; false otherwise
void gazebo::transport::pause_incoming ( bool  _pause)

Pause or unpause incoming messages.

When paused, messages are queued for later delivery

Parameters
[in]_pauseIf true, pause; otherwise unpause
msgs::Response* gazebo::transport::request ( const std::string &  _worldName,
const std::string &  _request,
const std::string &  _data = "" 
)

Send a request and receive a response.

This call will block until a response is received.

Parameters
[in]_worldNameThe name of the world to which the request should be sent
[in]_requestThe type request.
[in]_dataOptional data string.
Returns
The response to the request. Can be empty.
void gazebo::transport::requestNoReply ( const std::string &  _worldName,
const std::string &  _request,
const std::string &  _data = "" 
)

Send a request and don't wait for a response.

This is non-blocking.

Parameters
[in]_worldNameThe name of the world to which the request should be sent.
[in]_requestThe type request.
[in]_dataOptional data string.
void gazebo::transport::requestNoReply ( NodePtr  _node,
const std::string &  _request,
const std::string &  _data = "" 
)

Send a request and don't wait for a response.

This is non-blocking.

Parameters
[in]_nodePointer to a node that provides communication.
[in]_requestThe type request.
[in]_dataOptional data string.
void gazebo::transport::run ( )

Run the transport component.

Creates a thread to handle message passing. This call will block until the master can be contacted or until a retry limit is reached

void gazebo::transport::stop ( )

Stop the transport component from running.