ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I have not benchmarked this with rclpy but we saw the same behavior with rospy and roscpp where actually just subscribing to the /tf topic in python takes that order of magnitude CPU to receive the firehose of high frequency data.

To that end we created the tf2 buffer_server. It providea an action based API for querying transforms from another node. You can find some pointers in the tf2 MIgration notes: http://wiki.ros.org/tf2/Migration

The c++ implementation of the Listener be default provides this API. And you can just create the buffer_client and point it at an existing buffer_server running on a neighboring c++ node.

I have not benchmarked this with rclpy but we saw the same behavior with rospy and roscpp where actually just subscribing to the /tf topic in python takes that order of magnitude CPU to receive the firehose of high frequency data.

To that end we created the tf2 buffer_server. It providea an action based API for querying transforms from another node. You can find some pointers in the tf2 MIgration notes: http://wiki.ros.org/tf2/Migration

The c++ implementation of the Listener be default provides this API. And you can just create the buffer_client and point it at an existing buffer_server running on a neighboring c++ node.

The ROS 2 implementation parallels the ROS 1 implementation.