Skip to main content

Crate zerodds_ros2_rmw

Crate zerodds_ros2_rmw 

Source
Expand description

ROS 2 RMW Bridge Layer.

Crate zerodds-ros2-rmw. Safety classification: STANDARD. Specs: docs/standards/cache/ros2/rep-{2003,2004,2005,2007,2008, 2009}.html (ROS Enhancement Proposals).

§Scope

Wir implementieren die ROS-2-DDS-Mapping-Conventions als pure-Rust no_std+alloc Library:

  • Topic-Name-Mangling (de-facto-Standard aus rmw_dds_common): ROS 2 logical names werden mit Prefix-Code (rt/, rq/, rr/, rs/) auf DDS-Topic-Namen gemapped.
  • REP-2003 QoS Settings — Map-/Sensor-Data-QoS-Profiles (Reliable+TransientLocal fuer Maps; BestEffort+Volatile fuer Sensor-Data).
  • REP-2004 Package Quality Categories — Q1-Q5-Klassifikation.
  • Standard RMW QoS Profiles — DEFAULT/SENSOR_DATA/PARAMETERS/ SERVICES_DEFAULT/PARAMETER_EVENTS/SYSTEM_DEFAULT.

§Was nicht abgedeckt ist

  • REP-2005 Common Packages — Informational.
  • REP-2007 Type Adaptation — Compile-Time-Feature in C++/Python rclcpp/rclpy; nicht Wire-Layer.
  • REP-2008 Hardware Acceleration — Driver-Layer.
  • REP-2009 Type Negotiation — Compile-Time-Feature.
  • rmw-C-API — die Rust-Crate liefert Mapping-Konstanten und Profile; das eigentliche rmw_zerodds-C-FFI-Crate ist eigener Sprint.

Re-exports§

pub use ffi_api::RMW_IMPLEMENTATION_IDENTIFIER;
pub use ffi_api::RmwNode;
pub use ffi_api::RmwRet;
pub use ffi_api::check_rmw_identifier;
pub use ffi_api::map_to_rmw_ret;
pub use qos_profiles::Durability;
pub use qos_profiles::History;
pub use qos_profiles::QosProfile;
pub use qos_profiles::Reliability;
pub use qos_profiles::profiles;
pub use quality::QualityLevel;
pub use rmw_qos_mapping::RmwDurability;
pub use rmw_qos_mapping::RmwHistory;
pub use rmw_qos_mapping::RmwQosProfile;
pub use rmw_qos_mapping::RmwReliability;
pub use rmw_qos_mapping::dds_to_rmw;
pub use rmw_qos_mapping::rmw_to_dds;
pub use topic_mangling::NameMangleError;
pub use topic_mangling::RosKind;
pub use topic_mangling::demangle_topic_name;
pub use topic_mangling::is_ros_topic;
pub use topic_mangling::mangle_topic_name;
pub use type_mapping::RosBuiltinType;
pub use type_mapping::RosNamespace;
pub use type_mapping::RosTypeRef;

Modules§

action
ROS-2 Action-Pattern (5-Topic-Set).
ffi_api
REP-2007 RMW C-API Skeleton — Rust-Schicht zur Implementierung eines rmw_zerodds-Library.
json_log
rcutils-kompatibles JSON-Logging.
msg_to_idl
REP-2008 Type-Mapping .msg/.srv → IDL.
qos_profiles
ROS 2 Standard QoS Profiles — REP-2003 + RMW Defaults.
quality
ROS 2 Package Quality Categories — REP-2004.
rmw_qos_mapping
REP-2009 RMW-QoS-Mapping — rmw_qos_profile_t (C struct) → DDS-QoS.
service
ROS-2 Service-Pattern (Request-Reply) als 2-Topic-Pair.
topic_mangling
ROS 2 → DDS Topic-Name-Mangling.
type_mapping
REP-2008 Type-System-Mapping — rosidl → DDS-XTypes-1.3.