pub struct Ros2TopicConfig {
pub topic: String,
pub message_type: String,
pub direction: Ros2Direction,
pub output: Option<String>,
pub input: Option<String>,
pub qos: Option<Ros2QosConfig>,
}Expand description
Configuration for a single ROS2 topic in multi-topic mode.
Fields§
§topic: StringROS2 topic name.
message_type: StringROS2 message type (e.g. “geometry_msgs/Twist”).
direction: Ros2DirectionDirection: subscribe or publish.
output: Option<String>Maps to an dora output id (for subscribe direction).
input: Option<String>Maps to an dora input id (for publish direction).
qos: Option<Ros2QosConfig>Per-topic QoS override.
Implementations§
Source§impl Ros2TopicConfig
impl Ros2TopicConfig
Sourcepub fn output_port_id(&self) -> String
pub fn output_port_id(&self) -> String
The dora output a subscribe topic feeds: the explicit output:
mapping, or the topic-derived id when that is unset.
Both the descriptor validator (dora-core) and the ros2 bridge node
depend on producing the same id — the validator rejects configs whose
port is not declared precisely because the bridge would otherwise
silently drop the data — so the rule lives here in the shared message
crate rather than being duplicated at each call site.
Sourcepub fn input_port_id(&self) -> String
pub fn input_port_id(&self) -> String
The dora input a publish topic consumes; the counterpart of
Self::output_port_id.
Trait Implementations§
Source§impl Clone for Ros2TopicConfig
impl Clone for Ros2TopicConfig
Source§impl Debug for Ros2TopicConfig
impl Debug for Ros2TopicConfig
Source§impl<'de> Deserialize<'de> for Ros2TopicConfig
impl<'de> Deserialize<'de> for Ros2TopicConfig
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 Ros2TopicConfig
impl JsonSchema for Ros2TopicConfig
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 moreAuto Trait Implementations§
impl Freeze for Ros2TopicConfig
impl RefUnwindSafe for Ros2TopicConfig
impl Send for Ros2TopicConfig
impl Sync for Ros2TopicConfig
impl Unpin for Ros2TopicConfig
impl UnsafeUnpin for Ros2TopicConfig
impl UnwindSafe for Ros2TopicConfig
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more