oxidros-msg 0.5.8

Generated ROS2 message types for oxidros
Documentation

oxidros-msg

Generated ROS2 message types for oxidros.

This crate provides Rust bindings for ROS2 messages, services, and actions, generated at build time using ros2msg and ros2-types-derive.

Features

  • default — Pure Rust message types (no FFI, no ROS2 installation required)
  • rcl — Enables FFI code generation for ROS2 C libraries (requires a sourced ROS2 environment)

Usage

Add to your Cargo.toml:

[dependencies]
oxidros-msg = { path = "../oxidros-msg" }

# With FFI support:
# oxidros-msg = { path = "../oxidros-msg", features = ["rcl"] }

Structure

  • common_interfaces — Standard ROS2 common interfaces (geometry_msgs, sensor_msgs, std_msgs, nav_msgs, etc.)
  • interfaces — ROS2 core interfaces (rcl_interfaces, action_msgs, lifecycle_msgs, etc.)
  • ros2msg — Additional ROS2 messages (unique_identifier_msgs, etc.)
  • primitives — ROS2 primitive sequence types (BoolSeq, F64Seq, U8Seq, etc.)
  • strings — ROS2 string types (RosString, RosWString, and their sequence variants)

Code Generation

Message files are generated at compile time into src/generated/ by the build script:

  • ROS2 sourced/installed: Regenerates message files from installed ROS2 .msg/.srv/.action definitions.
  • No ROS2: Uses pre-committed files in src/generated/ — no generation needed.

This allows the crate to be built without a ROS2 installation.