#include <rtt_rostopic_ros_msg_transporter.hpp>
Public Member Functions | |
virtual bool | data_sample (typename base::ChannelElement< T >::param_t sample) |
virtual bool | inputReady () |
void | publish () |
RosPubChannelElement (base::PortInterface *port, const ConnPolicy &policy) | |
bool | signal () |
bool | write (typename base::ChannelElement< T >::param_t sample) |
~RosPubChannelElement () | |
Private Attributes | |
RosPublishActivity::shared_ptr | act |
We must cache the RosPublishActivity object. | |
char | hostname [1024] |
ros::NodeHandle | ros_node |
ros::NodeHandle | ros_node_private |
ros::Publisher | ros_pub |
base::ChannelElement< T >::value_t | sample |
std::string | topicname |
A ChannelElement implementation to publish data over a ros topic
Definition at line 67 of file rtt_rostopic_ros_msg_transporter.hpp.
rtt_roscomm::RosPubChannelElement< T >::RosPubChannelElement | ( | base::PortInterface * | port, |
const ConnPolicy & | policy | ||
) | [inline] |
Contructor of to create ROS publisher ChannelElement, it will create a topic from the name given by the policy.name_id, if this is empty a default is created as hostname/componentname/portname/pid
port | port for which we will create a the ROS publisher |
policy | connection policy containing the topic name and buffer size |
Definition at line 91 of file rtt_rostopic_ros_msg_transporter.hpp.
rtt_roscomm::RosPubChannelElement< T >::~RosPubChannelElement | ( | ) | [inline] |
Definition at line 126 of file rtt_rostopic_ros_msg_transporter.hpp.
virtual bool rtt_roscomm::RosPubChannelElement< T >::data_sample | ( | typename base::ChannelElement< T >::param_t | sample | ) | [inline, virtual] |
Create a data sample, this could be used to allocate the necessary memory
sample |
Definition at line 148 of file rtt_rostopic_ros_msg_transporter.hpp.
virtual bool rtt_roscomm::RosPubChannelElement< T >::inputReady | ( | ) | [inline, virtual] |
Function to see if the ChannelElement is ready to receive inputs
Reimplemented from RTT::base::ChannelElementBase.
Definition at line 137 of file rtt_rostopic_ros_msg_transporter.hpp.
void rtt_roscomm::RosPubChannelElement< T >::publish | ( | ) | [inline, virtual] |
Publish all data in the channel to a ROS topic.
Implements rtt_roscomm::RosPublisher.
Definition at line 165 of file rtt_rostopic_ros_msg_transporter.hpp.
bool rtt_roscomm::RosPubChannelElement< T >::signal | ( | ) | [inline, virtual] |
signal from the port that new data is availabe to publish
Reimplemented from RTT::base::ChannelElementBase.
Definition at line 159 of file rtt_rostopic_ros_msg_transporter.hpp.
bool rtt_roscomm::RosPubChannelElement< T >::write | ( | typename base::ChannelElement< T >::param_t | sample | ) | [inline] |
Definition at line 172 of file rtt_rostopic_ros_msg_transporter.hpp.
RosPublishActivity::shared_ptr rtt_roscomm::RosPubChannelElement< T >::act [private] |
We must cache the RosPublishActivity object.
Definition at line 75 of file rtt_rostopic_ros_msg_transporter.hpp.
char rtt_roscomm::RosPubChannelElement< T >::hostname[1024] [private] |
Definition at line 69 of file rtt_rostopic_ros_msg_transporter.hpp.
ros::NodeHandle rtt_roscomm::RosPubChannelElement< T >::ros_node [private] |
Definition at line 71 of file rtt_rostopic_ros_msg_transporter.hpp.
ros::NodeHandle rtt_roscomm::RosPubChannelElement< T >::ros_node_private [private] |
Definition at line 72 of file rtt_rostopic_ros_msg_transporter.hpp.
ros::Publisher rtt_roscomm::RosPubChannelElement< T >::ros_pub [private] |
Definition at line 73 of file rtt_rostopic_ros_msg_transporter.hpp.
base::ChannelElement<T>::value_t rtt_roscomm::RosPubChannelElement< T >::sample [private] |
Definition at line 77 of file rtt_rostopic_ros_msg_transporter.hpp.
std::string rtt_roscomm::RosPubChannelElement< T >::topicname [private] |
Definition at line 70 of file rtt_rostopic_ros_msg_transporter.hpp.