All ROS input / output are defined by
In our YAML configuration files, the QoS and topic name can always be set using the following YAML keys
input_<topic-type>:
# Input topic name
topic:
# Publish / subscribe queue size
queue_size:
# Enable to save automatically the last message and send to all subscription # that would required it
latching:
# (ROS2) Reliability of the QoS
reliable:
Some inputs and outputs can take more parameters than the common ones. They are explicitely described in the next sections
A PointCloud2 input should be specified using the following YAML map
input_pointcloud2:
# [required] Topic name
topic: <topic-name>
# [optional, default=20] Subscribe queue size
queue_size: 20
# [optional, default=false] Set to true if the timestamps are stored in ns
timestamps_ns: false
<aside> 💡
For PointCloud2 inputs, one can specify if the timestamps are supposed to be interpreted in nanoseconds (as it is for outputs from the Livox driver for instance)
</aside>
A packet input should be specified using the following YAML map
input_pointcloud2:
# [required] Topic name
topic: <topic-name>
# [optional, default=5000] Subscribe queue size
queue_size: 5000
# topic type. Defines the subscriber type for the input topic.
# You should have these messages built to be able to use them.
# Possible values are: [exwayz_msgs/msg/Packet, ouster_msgs/msg/PacketMsg,
# hesai_ros_driver/msg/UdpFrame]
type: exwayz_msgs/packet
<aside> 💡
For Packet inputs, one must specified the type of the input packets.
</aside>