Use rclcpp::parameter::ParameterVariant

This commit is contained in:
Esteve Fernandez 2015-05-19 16:35:38 -07:00
parent 21d766b511
commit 5c43e835c7
2 changed files with 6 additions and 6 deletions

View file

@ -149,10 +149,10 @@ public:
rclcpp::callback_group::CallbackGroup::SharedPtr group = nullptr); rclcpp::callback_group::CallbackGroup::SharedPtr group = nullptr);
const std::vector<rcl_interfaces::SetParametersResult> set_parameters( const std::vector<rcl_interfaces::SetParametersResult> set_parameters(
const std::vector<rcl_interfaces::Parameter> & parameters); const std::vector<rclcpp::parameter::ParameterVariant> & parameters);
const rcl_interfaces::SetParametersResult set_parameters_atomically( const rcl_interfaces::SetParametersResult set_parameters_atomically(
const std::vector<rcl_interfaces::Parameter> & parameters); const std::vector<rclcpp::parameter::ParameterVariant> & parameters);
const std::vector<rclcpp::parameter::ParameterVariant> get_parameters( const std::vector<rclcpp::parameter::ParameterVariant> get_parameters(
const std::vector<std::string> & names); const std::vector<std::string> & names);

View file

@ -215,12 +215,12 @@ Node::create_service(
const std::vector<rcl_interfaces::SetParametersResult> const std::vector<rcl_interfaces::SetParametersResult>
Node::set_parameters( Node::set_parameters(
const std::vector<rcl_interfaces::Parameter> & parameters) const std::vector<rclcpp::parameter::ParameterVariant> & parameters)
{ {
std::lock_guard<std::mutex> lock(mutex_); std::lock_guard<std::mutex> lock(mutex_);
std::vector<rcl_interfaces::SetParametersResult> results; std::vector<rcl_interfaces::SetParametersResult> results;
for (auto p : parameters) { for (auto p : parameters) {
parameters_[p.name] = rclcpp::parameter::ParameterVariant::from_parameter(p); parameters_[p.get_name()] = p;
rcl_interfaces::SetParametersResult result; rcl_interfaces::SetParametersResult result;
result.successful = true; result.successful = true;
// TODO: handle parameter constraints // TODO: handle parameter constraints
@ -231,12 +231,12 @@ Node::set_parameters(
const rcl_interfaces::SetParametersResult const rcl_interfaces::SetParametersResult
Node::set_parameters_atomically( Node::set_parameters_atomically(
const std::vector<rcl_interfaces::Parameter> & parameters) const std::vector<rclcpp::parameter::ParameterVariant> & parameters)
{ {
std::lock_guard<std::mutex> lock(mutex_); std::lock_guard<std::mutex> lock(mutex_);
std::map<std::string, rclcpp::parameter::ParameterVariant> tmp_map; std::map<std::string, rclcpp::parameter::ParameterVariant> tmp_map;
for (auto p : parameters) { for (auto p : parameters) {
tmp_map[p.name] = rclcpp::parameter::ParameterVariant::from_parameter(p); tmp_map[p.get_name()] = p;
} }
tmp_map.insert(parameters_.begin(), parameters_.end()); tmp_map.insert(parameters_.begin(), parameters_.end());
std::swap(tmp_map, parameters_); std::swap(tmp_map, parameters_);