This commit is contained in:
Martin Dahl 2021-07-29 11:06:11 +02:00
parent b53977f3f6
commit 41e5d27ac9
2 changed files with 20 additions and 17 deletions

View File

@ -19,13 +19,14 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut i = 0; let mut i = 0;
loop { loop {
node.spin_once(std::time::Duration::from_millis(100)); node.spin_once(std::time::Duration::from_millis(100));
if i % 20 == 0 { // every 2 seconds print all parameters if i % 20 == 0 {
// every 2 seconds print all parameters
println!("node parameters"); println!("node parameters");
node.params.lock().unwrap().iter().for_each(|(k, v)| { node.params.lock().unwrap().iter().for_each(|(k, v)| {
println!("{} - {:?}", k, v); println!("{} - {:?}", k, v);
}); });
} }
i+=1; i += 1;
if i > 1000 { if i > 1000 {
break; break;
} }

View File

@ -1696,7 +1696,7 @@ impl ParameterValue {
_ => { _ => {
println!("warning: malformed parametervalue message"); println!("warning: malformed parametervalue message");
ParameterValue::NotSet ParameterValue::NotSet
}, }
} }
} }
} }
@ -1867,7 +1867,8 @@ impl Node {
fn setup_parameter_services(&mut self) -> Result<()> { fn setup_parameter_services(&mut self) -> Result<()> {
let node_name = self.name()?; let node_name = self.name()?;
let params_cb = self.params.clone(); let params_cb = self.params.clone();
self.create_service::<rcl_interfaces::srv::SetParameters::Service>(&format!("{}/set_parameters", node_name), self.create_service::<rcl_interfaces::srv::SetParameters::Service>(
&format!("{}/set_parameters", node_name),
Box::new(move |req: rcl_interfaces::srv::SetParameters::Request| { Box::new(move |req: rcl_interfaces::srv::SetParameters::Request| {
let mut result = rcl_interfaces::srv::SetParameters::Response::default(); let mut result = rcl_interfaces::srv::SetParameters::Response::default();
for p in req.parameters { for p in req.parameters {
@ -1880,7 +1881,8 @@ impl Node {
result.results.push(r); result.results.push(r);
} }
result result
}))?; }),
)?;
Ok(()) Ok(())
} }