Skip to content

Commit f7aa101

Browse files
committed
feat(lifecycle_node): add get_parameter_or overload returning value or alternative
1 parent 4d14414 commit f7aa101

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node.hpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -486,6 +486,16 @@ class LifecycleNode : public node_interfaces::LifecycleNodeInterface,
486486
ParameterT & value,
487487
const ParameterT & alternative_value) const;
488488

489+
/// Return the parameter value, or the "alternative_value" if not set.
490+
/**
491+
* \sa rclcpp::Node::get_parameter_or
492+
*/
493+
template<typename ParameterT>
494+
ParameterT
495+
get_parameter_or(
496+
const std::string & name,
497+
const ParameterT & alternative_value) const;
498+
489499
/// Return the parameters by the given parameter names.
490500
/**
491501
* \sa rclcpp::Node::get_parameters

rclcpp_lifecycle/include/rclcpp_lifecycle/lifecycle_node_impl.hpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,5 +306,16 @@ LifecycleNode::get_parameter_or(
306306
return got_parameter;
307307
}
308308

309+
template<typename ParameterT>
310+
ParameterT
311+
LifecycleNode::get_parameter_or(
312+
const std::string & name,
313+
const ParameterT & alternative_value) const
314+
{
315+
ParameterT parameter;
316+
get_parameter_or(name, parameter, alternative_value);
317+
return parameter;
318+
}
319+
309320
} // namespace rclcpp_lifecycle
310321
#endif // RCLCPP_LIFECYCLE__LIFECYCLE_NODE_IMPL_HPP_

0 commit comments

Comments
 (0)