Expand description
ROS 2 topic and service names: validation and the mapping onto middleware names.
ROS 2 names are not free-form strings; the rules (from the ROS 2 design) bound what is legal and
how a name reaches the middleware. A name is /-separated tokens of alphanumerics and
underscores; a token never starts with a digit; the name never has an empty token (//), a
doubled underscore (__), or a trailing /. A leading / makes it fully qualified; a leading
~/ is the private namespace; balanced {} are runtime substitutions. On the wire DDS adds a
one-character subsystem prefix, rt for topics and rq/rr for the two halves of a service.
Enums§
- Entity
Kind - The ROS 2 subsystem a name belongs to, which fixes its DDS prefix.
Functions§
- dds_
topic - Maps a fully qualified ROS 2 name to its DDS topic name.
- is_
fully_ qualified - Returns whether a name is fully qualified: valid, absolute, and free of substitutions.
- is_
valid_ name - Returns whether a string is a valid ROS 2 topic or service name.
- percent_
mangle - Mangles a name by replacing each
/with%, asrmw_zenohdoes in liveliness tokens.