Nav2 Navigation Stack - jazzy
jazzy
ROS 2 Navigation Stack
|
Handles getting parameters and dynamic parmaeter changes. More...
#include <nav2_mppi_controller/include/nav2_mppi_controller/tools/parameters_handler.hpp>
Public Types | |
using | get_param_func_t = void(const rclcpp::Parameter ¶m) |
using | post_callback_t = void() |
using | pre_callback_t = void() |
Public Member Functions | |
ParametersHandler ()=default | |
Constructor for mppi::ParametersHandler. | |
ParametersHandler (const rclcpp_lifecycle::LifecycleNode::WeakPtr &parent) | |
Constructor for mppi::ParametersHandler. More... | |
~ParametersHandler () | |
Destructor for mppi::ParametersHandler. | |
void | start () |
Starts processing dynamic parameter changes. | |
rcl_interfaces::msg::SetParametersResult | dynamicParamsCallback (std::vector< rclcpp::Parameter > parameters) |
Dynamic parameter callback. More... | |
auto | getParamGetter (const std::string &ns) |
Get an object to retreive parameters. More... | |
template<typename T > | |
void | addPostCallback (T &&callback) |
Set a callback to process after parameter changes. More... | |
template<typename T > | |
void | addPreCallback (T &&callback) |
Set a callback to process before parameter changes. More... | |
template<typename T > | |
void | setDynamicParamCallback (T &setting, const std::string &name) |
Set a parameter to a dynamic parameter callback. More... | |
std::mutex * | getLock () |
Get mutex lock for changing parameters. More... | |
template<typename T > | |
void | addDynamicParamCallback (const std::string &name, T &&callback) |
Set a parameter to a dynamic parameter callback. More... | |
Protected Member Functions | |
template<typename SettingT , typename ParamT > | |
void | getParam (SettingT &setting, const std::string &name, ParamT default_value, ParameterType param_type=ParameterType::Dynamic) |
Gets parameter. More... | |
template<typename ParamT , typename SettingT , typename NodeT > | |
void | setParam (SettingT &setting, const std::string &name, NodeT node) const |
Set a parameter. More... | |
Static Protected Member Functions | |
template<typename T > | |
static auto | as (const rclcpp::Parameter ¶meter) |
Converts parameter type to real types. More... | |
Handles getting parameters and dynamic parmaeter changes.
Definition at line 41 of file parameters_handler.hpp.
|
explicit |
Constructor for mppi::ParametersHandler.
parent | Weak ptr to node |
Definition at line 20 of file parameters_handler.cpp.
void mppi::ParametersHandler::addDynamicParamCallback | ( | const std::string & | name, |
T && | callback | ||
) |
Set a parameter to a dynamic parameter callback.
name | Name of parameter |
callback | Parameter callback |
Definition at line 182 of file parameters_handler.hpp.
Referenced by mppi::critics::CostCritic::initialize(), and setDynamicParamCallback().
void mppi::ParametersHandler::addPostCallback | ( | T && | callback | ) |
Set a callback to process after parameter changes.
callback | Callback function |
Definition at line 188 of file parameters_handler.hpp.
void mppi::ParametersHandler::addPreCallback | ( | T && | callback | ) |
Set a callback to process before parameter changes.
callback | Callback function |
Definition at line 194 of file parameters_handler.hpp.
|
staticprotected |
Converts parameter type to real types.
parameter | Parameter to convert into real type |
Definition at line 249 of file parameters_handler.hpp.
rcl_interfaces::msg::SetParametersResult mppi::ParametersHandler::dynamicParamsCallback | ( | std::vector< rclcpp::Parameter > | parameters | ) |
Dynamic parameter callback.
parameter | Parameter changes to process |
Definition at line 51 of file parameters_handler.cpp.
Referenced by start().
|
inline |
Get mutex lock for changing parameters.
Definition at line 111 of file parameters_handler.hpp.
|
protected |
Gets parameter.
setting | Return Parameter type |
name | Parameter name |
default_value | Default parameter value |
param_type | Type of parameter (dynamic or static) |
Definition at line 200 of file parameters_handler.hpp.
|
inline |
Get an object to retreive parameters.
ns | Namespace to get parameters within |
Definition at line 170 of file parameters_handler.hpp.
Referenced by mppi::AckermannMotionModel::AckermannMotionModel(), mppi::CriticManager::getParams(), mppi::critics::ConstraintCritic::initialize(), mppi::critics::CostCritic::initialize(), mppi::critics::GoalAngleCritic::initialize(), mppi::critics::GoalCritic::initialize(), mppi::critics::ObstaclesCritic::initialize(), mppi::critics::PathAngleCritic::initialize(), mppi::critics::PathFollowCritic::initialize(), mppi::critics::PreferForwardCritic::initialize(), mppi::critics::TwirlingCritic::initialize(), mppi::critics::VelocityDeadbandCritic::initialize(), mppi::NoiseGenerator::initialize(), mppi::PathHandler::initialize(), mppi::TrajectoryVisualizer::on_configure(), mppi::critics::CriticFunction::on_configure(), and start().
void mppi::ParametersHandler::setDynamicParamCallback | ( | T & | setting, |
const std::string & | name | ||
) |
Set a parameter to a dynamic parameter callback.
setting | Parameter |
name | Name of parameter |
Definition at line 227 of file parameters_handler.hpp.
References addDynamicParamCallback().
|
protected |
Set a parameter.
Definition at line 218 of file parameters_handler.hpp.