Ergonomic facade over the generated ROS 2 binding.
What makes a topic name legal, what it becomes on the DDS wire, the RIHS type
hash that identifies a message definition, and the CDR encoding the payload
itself is written in.
None of it needs a ROS 2 installation. A gateway written in TypeScript can
validate a name, derive the DDS topic and the Zenoh key an rmw_zenoh peer
subscribes on, and encode a geometry_msgs/msg/Twist with no ROS
distribution anywhere near it. Driving a live graph does need one, so that
stays in the Rust crate.
Ergonomic facade over the generated ROS 2 binding.
What makes a topic name legal, what it becomes on the DDS wire, the RIHS type hash that identifies a message definition, and the CDR encoding the payload itself is written in.
None of it needs a ROS 2 installation. A gateway written in TypeScript can validate a name, derive the DDS topic and the Zenoh key an
rmw_zenohpeer subscribes on, and encode ageometry_msgs/msg/Twistwith no ROS distribution anywhere near it. Driving a live graph does need one, so that stays in the Rust crate.