`rosmsg list` or `rosmsg show` equivalent for dynamic reconfigure?

asked 2016-02-24 07:01:22 -0500

lucasw gravatar image

updated 2020-11-21 12:06:10 -0500

Is there a way to list every dynamic reconfigure config on the system, and then show the config parameters for a specific one?

I was about to create a new cfg file for a project and was wondering if there was already a similar one in existence. This isn't a super compelling usage since there isn't a way to re-use cfg files inside other cfg files (though maybe that wouldn't be hard to add), I would either find something that works but if one parameter was missing I would have to cut and paste every gen.add into a new cfg.

It looks like locate Config.h | grep opt shows all the reconfigure files installed into opt, but the autogenerated headers aren't very readable.

edit retag flag offensive close merge delete


Have you looked at the dynparam command?

gvdhoorn gravatar image gvdhoorn  ( 2016-02-24 12:16:30 -0500 )edit

rosrun dynamic_reconfigure dynparam list shows live nodes that have dynamic reconfigure services, not all available types. It is akin to rosservice list when I want rossrv list.

lucasw gravatar image lucasw  ( 2016-02-24 17:45:01 -0500 )edit

You're right, I misread your question. I'm not aware of any tool that can do this, but it shouldn't be too hard to create something (catkin_pkg for the pkgs with dyncfg and then some parsing of the .cfg files). Would make a nice rainy day project.

gvdhoorn gravatar image gvdhoorn  ( 2016-02-25 02:56:11 -0500 )edit

Moved answer to comment section as it's not an actual answer.

gvdhoorn gravatar image gvdhoorn  ( 2016-02-25 02:56:50 -0500 )edit

That would work when the source code is present, but the .cfg files don't come with the pre-built packages... but maybe all those *Config.h files (or the python equivalents) could be parsed into a concise summary- or even in the same gen.add python format so it could be cut and paste into a new .cfg

lucasw gravatar image lucasw  ( 2016-02-25 10:51:50 -0500 )edit