pub struct Ros2BridgeConfig {Show 13 fields
pub transport: Ros2TransportConfig,
pub topic: Option<String>,
pub message_type: Option<String>,
pub direction: Ros2Direction,
pub topics: Option<Vec<Ros2TopicConfig>>,
pub service: Option<String>,
pub service_type: Option<String>,
pub action: Option<String>,
pub action_type: Option<String>,
pub role: Option<Ros2Role>,
pub qos: Ros2QosConfig,
pub namespace: String,
pub node_name: Option<String>,
}Expand description
ROS2 bridge configuration for declarative ROS2 bridging.
This allows nodes to interact with ROS2 topics, services, and actions without writing any custom code. The framework spawns a bridge binary that handles the ROS2 DDS communication and Arrow data conversion.
Exactly one of topic, topics, service, or action must be set.
Fields§
§transport: Ros2TransportConfigNative transport used to communicate with the ROS2 graph.
Defaults to the existing DDS implementation.
topic: Option<String>ROS2 topic name (e.g. “/camera/image_raw”).
Mutually exclusive with topics, service, action.
message_type: Option<String>ROS2 message type (e.g. “sensor_msgs/Image”).
Required when topic is set.
direction: Ros2DirectionDirection: subscribe (ROS2 -> Dora) or publish (Dora -> ROS2).
Defaults to subscribe. Only used with topic/topics.
topics: Option<Vec<Ros2TopicConfig>>Multiple topics on a single ROS2 node context.
Mutually exclusive with topic, service, action.
service: Option<String>ROS2 service name (e.g. “/add_two_ints”).
Mutually exclusive with topic, topics, action.
service_type: Option<String>ROS2 service type (e.g. “example_interfaces/AddTwoInts”).
Required when service is set.
action: Option<String>ROS2 action name (e.g. “/navigate”).
Mutually exclusive with topic, topics, service.
action_type: Option<String>ROS2 action type (e.g. “nav2_msgs/NavigateToPose”).
Required when action is set.
role: Option<Ros2Role>Role: client or server. Required for service and action.
qos: Ros2QosConfigQoS policies applied to all topics (can be overridden per-topic).
namespace: StringROS2 namespace (default: “/”).
node_name: Option<String>ROS2 node name. Defaults to the dora node id.
Trait Implementations§
Source§impl Clone for Ros2BridgeConfig
impl Clone for Ros2BridgeConfig
Source§fn clone(&self) -> Ros2BridgeConfig
fn clone(&self) -> Ros2BridgeConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Ros2BridgeConfig
impl Debug for Ros2BridgeConfig
Source§impl Default for Ros2BridgeConfig
impl Default for Ros2BridgeConfig
Source§impl<'de> Deserialize<'de> for Ros2BridgeConfig
impl<'de> Deserialize<'de> for Ros2BridgeConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for Ros2BridgeConfig
impl JsonSchema for Ros2BridgeConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more