From Claudio Bandera via ros-users@
so I was very frustrated with how I had to define parameters for my nodes in several places. The declaration, the call to getParam and then everything again in a second place when I wanted to have a parameter that is configurable through dynamic reconfigure. Furthermore, you had to make sure the redundant parameters lived in the same namespace, otherwise you would run into serious trouble... This made it quite hard and error prone to add or refactor parameters later.
To solve this problem, I have created the rosparam_handler package. It is inspired by the cfg files and code generation provided by dynamic_reconfigure, but extends the functionality greatly.
The rosparam_handler let's you:
- specify all of your parameters in a single file
- use a generated struct to hold your parameters
- use a member method for grabbing the parameters from the parameter server
- use a member method for updating them from dynamic_reconfigure.
- make your parameters configurable with a single flag.
- set default, min and max values
- choose between global and private namespace
- save a lot of time on specifying your parameters in several places.
If this sounds interesting to you, have a look at the README, Tutorials and the source code at https://github.com/cbandera/rosparam_handler
Please let me know if you have any feedback, suggestions or any trouble using the package.