/eulero_manager/update#

Caution

This documentation page has been auto-generated.

It may be missing some details.

/eulero_manager/update Quick Facts

Category

🧭 Navigation

Message type

visualization_msgs/msg/InteractiveMarkerUpdate

Direction

↔️ you might both publish and subscribe to this topic.

Visualizes and modifies environmental metadata using RViz.

Quick snippets#

Check the publication rate#
$ ros2 topic hz /eulero_manager/update
Display the data published on the topic#
$ ros2 topic echo /eulero_manager/update

How to use in your code#

Subscribe to the topic using Python#
 1#!/usr/bin/env python
 2
 3import rclpy
 4from rclpy.node import Node
 5
 6from visualization_msgs.msg import InteractiveMarkerUpdate
 7
 8
 9class UpdateSubscriber(Node):
10
11    def __init__(self):
12        super().__init__('eulero_manager_update_subscriber')
13        self.subscription = self.create_subscription(
14            InteractiveMarkerUpdate,
15            '/eulero_manager/update',
16            self.listener_callback,
17            10)
18
19    def listener_callback(self, msg):
20        # see https://docs.ros2.org/latest/api/visualization_msgs/msg/InteractiveMarkerUpdate.html
21        # for the msg structure
22        self.get_logger().info('I heard: "%s"' % msg.data)
23
24
25if __name__ == '__main__':
26    rclpy.init(args=args)
27
28    subscriber = UpdateSubscriber()
29
30    rclpy.spin(subscriber)
31
32    rclpy.shutdown()
Publish to the topic#
 1#!/usr/bin/env python
 2
 3import rclpy
 4from rclpy.node import Node
 5
 6from visualization_msgs.msg import InteractiveMarkerUpdate
 7
 8
 9class UpdatePublisher(Node):
10
11    def __init__(self):
12        super().__init__('eulero_manager_update_publisher')
13        self.publisher = self.create_publisher(
14            InteractiveMarkerUpdate,
15            '/eulero_manager/update',
16            10)
17        timer_period = 0.5  # seconds
18        self.timer = self.create_timer(timer_period, self.timer_callback)
19
20    def timer_callback(self):
21
22        msg = InteractiveMarkerUpdate()
23
24        # check https://docs.ros2.org/latest/api/visualization_msgs/msg/InteractiveMarkerUpdate.html
25        # for the msg structure
26        # msg.data = ...
27
28        self.publisher.publish(msg)
29        self.get_logger().info('Publishing: "%s"' % msg.data)
30
31
32if __name__ == '__main__':
33    rclpy.init(args=args)
34
35    publisher = UpdatePublisher()
36
37    rclpy.spin(publisher)
38
39    rclpy.shutdown()