dynamic reconfigure is an implementation of ROS which happens to use a large struct for its parameters.
However some of these we don't like to have dynamically reconfigurable.
I propose to have an own struct with the parameters. And let the path_tracking_pid::PidConfig config be local to the reconfigure callback. In this callback we can (if approved) set the controller parameters with setters.
This might allow to switch to ddynamic_reconfigure (if we want to). Also allows for easier ROS2 transition in the future (it uses a different method for dynamic reconfigure behavior).
dynamic reconfigure is an implementation of ROS which happens to use a large struct for its parameters.
However some of these we don't like to have dynamically reconfigurable.
I propose to have an own struct with the parameters. And let the
path_tracking_pid::PidConfig config
be local to the reconfigure callback. In this callback we can (if approved) set the controller parameters with setters.This might allow to switch to ddynamic_reconfigure (if we want to). Also allows for easier ROS2 transition in the future (it uses a different method for dynamic reconfigure behavior).