Only return a single ListParametersResult

This commit is contained in:
Esteve Fernandez 2015-05-19 16:36:17 -07:00
parent 5c43e835c7
commit 1f2ab33988
2 changed files with 4 additions and 6 deletions

View file

@ -163,7 +163,7 @@ public:
const std::vector<uint8_t> get_parameter_types( const std::vector<uint8_t> get_parameter_types(
const std::vector<std::string> & names); const std::vector<std::string> & names);
const std::vector<rcl_interfaces::ListParametersResult> list_parameters( const rcl_interfaces::ListParametersResult list_parameters(
const std::vector<std::string> & prefixes, uint64_t depth); const std::vector<std::string> & prefixes, uint64_t depth);
private: private:

View file

@ -302,12 +302,12 @@ Node::get_parameter_types(
return results; return results;
} }
const std::vector<rcl_interfaces::ListParametersResult> const rcl_interfaces::ListParametersResult
Node::list_parameters( Node::list_parameters(
const std::vector<std::string> & prefixes, uint64_t depth) const std::vector<std::string> & prefixes, uint64_t depth)
{ {
std::lock_guard<std::mutex> lock(mutex_); std::lock_guard<std::mutex> lock(mutex_);
std::vector<rcl_interfaces::ListParametersResult> results; rcl_interfaces::ListParametersResult result;
// TODO: define parameter separator, use "." for now // TODO: define parameter separator, use "." for now
for (auto & kv : parameters_) { for (auto & kv : parameters_) {
@ -320,7 +320,6 @@ Node::list_parameters(
return false; return false;
})) }))
{ {
rcl_interfaces::ListParametersResult result;
result.parameter_names.push_back(kv.first); result.parameter_names.push_back(kv.first);
size_t last_separator = kv.first.find_last_of('.'); size_t last_separator = kv.first.find_last_of('.');
std::string prefix = kv.first.substr(0, last_separator); std::string prefix = kv.first.substr(0, last_separator);
@ -329,9 +328,8 @@ Node::list_parameters(
{ {
result.parameter_prefixes.push_back(prefix); result.parameter_prefixes.push_back(prefix);
} }
results.push_back(result);
} }
} }
return results; return result;
} }
#endif /* RCLCPP_RCLCPP_NODE_IMPL_HPP_ */ #endif /* RCLCPP_RCLCPP_NODE_IMPL_HPP_ */