0
$\begingroup$

Rosanswers logo

I have a dynamic reconfigure server. In my application, eventually an update of the parameter server is done. However these changes are not notified to the dynamic reconfigure server.

I would love to force programatically to the dynamic reconfigure server to fetch again the data from the paramter server. I haven't found any function that do that in the cpp API (I think that there exist something in the python api, but it is not my case). I've also tried to remove the parameter server and later build a new parameter server on the same address. It looks like the master meta-information gets messy and the new parameter server does not appear even if the old is not active anymnore.

Any idea?


Originally posted by Pablo Iñigo Blasco on ROS Answers with karma: 2982 on 2013-03-21

Post score: 3


Original comments

Comment by Claudio on 2013-03-21:
I think you could have a look at the hokuyo node, it uses dynamic reconfigure and may do what you need. You could borrow their code.

Comment by Pablo Iñigo Blasco on 2013-03-27:
It is not the case. Hokuyo node uses the dynamic reconfigure in the usual way. It just waits for parameters updates using the topics mechanism used in the dynamic reconfigure server.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

This is the solution. First it is needed to create a clean configuration structure. It has a method to fetch de data from the parameter server explicitly.

ros::NodeHandle nh("/url/configureserver");
dynamic_reconfigure::Server<MyConfig> configure_server(nh);

//some manual modifications of the configure server...

//then we want to fetch the data and call our update callback..

MyConfig current_parameter_server_config;
current_parameter_server_config.__fromServer__(nh);
configure_server.updateConfig(current_parameter_server_config);

Originally posted by Pablo Iñigo Blasco with karma: 2982 on 2013-03-29

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.