1 unstable release
0.9.0 | May 13, 2024 |
---|
#205 in Robotics
170KB
3K
SLoC
roslibrust_genmsg
A CLI application and library for generating ROS C++ headers using roslibrust_codegen
as the backend.
Running the command line application:
roslibrust$ mkdir -p /tmp/sensor_msgs && \
cargo run --bin gencpp -- \
--msg assets/ros1_common_interfaces/common_msgs/sensor_msgs/msg/BatteryState.msg \
--package sensor_msgs \
-I std_msgs:assets/ros1_common_interfaces/std_msgs \
-I geometry_msgs:assets/ros1_common_interfaces/common_msgs/geometry_msgs \
-I sensor_msgs:assets/ros1_common_interfaces/common_msgs/sensor_msgs \
--output /tmp/sensor_msgs
Key Differences with the official CLI
- The include paths must be to the top-level of the message package directory as
roslibrust_codegen
uses this to determine the ROS version. - The output is to a path instead of a file. Filenames are assumed based on message or service file name.
- The include paths must include the package that the input message comes from as
roslibrust_codegen
does not currently expose an API for parsing a message given a message file path. Consequently, you'll want to include any dependencies of other messages in the package so thatroslibrust_codegen
can solve the dependency graph.
Dependencies
~7–15MB
~197K SLoC