Browse Source

Prepare update to latest versions of RustDDS and `ros2-client`

tags/v0.3.1-rc5
Philipp Oppermann 2 years ago
parent
commit
4da13cc503
Failed to extract signature
2 changed files with 12 additions and 6 deletions
  1. +11
    -5
      libraries/extensions/ros2-bridge/python/src/lib.rs
  2. +1
    -1
      libraries/extensions/ros2-bridge/python/src/qos.rs

+ 11
- 5
libraries/extensions/ros2-bridge/python/src/lib.rs View File

@@ -76,8 +76,10 @@ impl Ros2Context {
namespace: &str,
options: Ros2NodeOptions,
) -> eyre::Result<Ros2Node> {
let name = ros2_client::NodeName::new(namespace, name)
.map_err(|err| eyre!("invalid node name: {err}"))?;
Ok(Ros2Node {
node: self.context.new_node(name, namespace, options.into())?,
node: self.context.new_node(name, options.into())?,
messages: self.messages.clone(),
})
}
@@ -103,12 +105,16 @@ impl Ros2Node {
message_type
)
})?;
let encoded_type_name = format!("{namespace_name}::msg::dds_::{message_name}_");
let message_type_name = ros2_client::MessageTypeName::new(namespace_name, message_name);
let topic_name = ros2_client::Name::parse(name)
.map_err(|err| eyre!("failed to parse ROS2 topic name: {err}"))?;
let topic = self
.node
.create_topic(name, encoded_type_name, &qos.into())?;
let type_info = for_message(&self.messages, namespace_name, message_name)
.context("failed to determine type info for message")?;
.create_topic(&topic_name, message_type_name, &qos.into())?;
let type_info =
for_message(&self.messages, namespace_name, message_name).with_context(|| {
format!("failed to determine type info for message {namespace_name}/{message_name}")
})?;

Ok(Ros2Topic { topic, type_info })
}


+ 1
- 1
libraries/extensions/ros2-bridge/python/src/qos.rs View File

@@ -96,7 +96,7 @@ pub enum Ros2Liveliness {
impl Ros2Liveliness {
fn convert(self, lease_duration: f64) -> policy::Liveliness {
let lease_duration = if lease_duration.is_infinite() {
rustdds::Duration::DURATION_INFINITE
rustdds::Duration::INFINITE
} else {
rustdds::Duration::from_frac_seconds(lease_duration)
};


Loading…
Cancel
Save