A node can advertise and subscribe topics, publish on advertised topics and listen to subscribed topics.
More...
#include <transport/transport.hh>
|
| Node () |
| Constructor.
|
|
virtual | ~Node () |
| Destructor.
|
|
template<typename M > |
transport::PublisherPtr | Advertise (const std::string &_topic, unsigned int _queueLimit=1000, bool _latch=false) |
| Adverise a topic.
|
|
std::string | DecodeTopicName (const std::string &_topic) |
| Decode a topic name.
|
|
std::string | EncodeTopicName (const std::string &_topic) |
| Encode a topic name.
|
|
void | Fini () |
| Finalize the node.
|
|
unsigned int | GetId () const |
| Get the unique ID of the node.
|
|
std::string | GetMsgType (const std::string &_topic) const |
| Get the message type for a topic.
|
|
std::string | GetTopicNamespace () const |
| Get the topic namespace for this node.
|
|
bool | HandleData (const std::string &_topic, const std::string &_msg) |
| Handle incoming data.
|
|
void | Init (const std::string &_space="") |
| Init the node.
|
|
void | InsertLatchedMsg (const std::string &_topic, const std::string &_msg) |
| Add a latched message to the node for publication.
|
|
void | ProcessIncoming () |
| Process incoming messages.
|
|
void | ProcessPublishers () |
| Process all publishers, which has each publisher send it's most recent message over the wire.
|
|
template<typename M , typename T > |
SubscriberPtr | Subscribe (const std::string &_topic, void(T::*_fp)(const M const *&), T *_obj, bool _latching=false) |
| Subscribe to a topic using a class method as the callback.
|
|
template<typename M > |
SubscriberPtr | Subscribe (const std::string &_topic, void(*_fp)(const M const *&), bool _latching=false) |
| Subscribe to a topic using a bare function as the callback.
|
|
A node can advertise and subscribe topics, publish on advertised topics and listen to subscribed topics.
gazebo::transport::Node::Node |
( |
| ) |
|
virtual gazebo::transport::Node::~Node |
( |
| ) |
|
|
virtual |
template<typename M >
transport::PublisherPtr gazebo::transport::Node::Advertise |
( |
const std::string & |
_topic, |
|
|
unsigned int |
_queueLimit = 1000 , |
|
|
bool |
_latch = false |
|
) |
| |
|
inline |
Adverise a topic.
- Parameters
-
[in] | _topic | The topic to advertise |
[in] | _queueLimit | The maximum number of outgoing messages to queue for delivery |
[in] | _latch | If true, latch the last message; otherwise, don't latch |
- Returns
- Pointer to new publisher object
References DecodeTopicName(), and SingletonT< T >::Instance().
std::string gazebo::transport::Node::DecodeTopicName |
( |
const std::string & |
_topic | ) |
|
std::string gazebo::transport::Node::EncodeTopicName |
( |
const std::string & |
_topic | ) |
|
Encode a topic name.
- Parameters
-
- Returns
- The encoded name
void gazebo::transport::Node::Fini |
( |
| ) |
|
unsigned int gazebo::transport::Node::GetId |
( |
| ) |
const |
Get the unique ID of the node.
- Returns
- The unique ID of the node
std::string gazebo::transport::Node::GetMsgType |
( |
const std::string & |
_topic | ) |
const |
Get the message type for a topic.
- Parameters
-
- Returns
- The message type
std::string gazebo::transport::Node::GetTopicNamespace |
( |
| ) |
const |
Get the topic namespace for this node.
- Returns
- The namespace
bool gazebo::transport::Node::HandleData |
( |
const std::string & |
_topic, |
|
|
const std::string & |
_msg |
|
) |
| |
Handle incoming data.
- Parameters
-
[in] | _topic | Topic for which the data was received |
[in] | _msg | The message that was received |
- Returns
- true if the message was handled successfully, false otherwise
void gazebo::transport::Node::Init |
( |
const std::string & |
_space = "" | ) |
|
Init the node.
- Parameters
-
[in] | _space | Set the global namespace of all topics. If left blank, the topic will initialize to the first namespace on the Master |
void gazebo::transport::Node::InsertLatchedMsg |
( |
const std::string & |
_topic, |
|
|
const std::string & |
_msg |
|
) |
| |
Add a latched message to the node for publication.
This is called when a subscription is connected to a publication.
- Parameters
-
[in] | _topic | Name of the topic to publish data on. |
[in] | _msg | The message to publish. |
void gazebo::transport::Node::ProcessIncoming |
( |
| ) |
|
Process incoming messages.
void gazebo::transport::Node::ProcessPublishers |
( |
| ) |
|
Process all publishers, which has each publisher send it's most recent message over the wire.
This is for internal use only
template<typename M , typename T >
SubscriberPtr gazebo::transport::Node::Subscribe |
( |
const std::string & |
_topic, |
|
|
void(T::*)(const M const *&) |
_fp, |
|
|
T * |
_obj, |
|
|
bool |
_latching = false |
|
) |
| |
|
inline |
Subscribe to a topic using a class method as the callback.
- Parameters
-
[in] | _topic | The topic to subscribe to |
[in] | _fp | Class method to be called on receipt of new message |
[in] | _obj | Class instance to be used on receipt of new message |
[in] | _latching | If true, latch latest incoming message; otherwise don't latch |
- Returns
- Pointer to new Subscriber object
References DecodeTopicName(), and SingletonT< T >::Instance().
template<typename M >
SubscriberPtr gazebo::transport::Node::Subscribe |
( |
const std::string & |
_topic, |
|
|
void(*)(const M const *&) |
_fp, |
|
|
bool |
_latching = false |
|
) |
| |
|
inline |
Subscribe to a topic using a bare function as the callback.
- Parameters
-
[in] | _topic | The topic to subscribe to |
[in] | _fp | Function to be called on receipt of new message |
[in] | _latching | If true, latch latest incoming message; otherwise don't latch |
- Returns
- Pointer to new Subscriber object
References DecodeTopicName(), and SingletonT< T >::Instance().
The documentation for this class was generated from the following file: