rclcpp  master
C++ ROS Client Library API
Public Member Functions | List of all members
rclcpp::ParameterValue Class Reference

Store the type and value of a parameter. More...

#include <parameter_value.hpp>

Public Member Functions

 ParameterValue ()
 Construct a parameter value with type PARAMETER_NOT_SET. More...
 
 ParameterValue (const rcl_interfaces::msg::ParameterValue &value)
 Construct a parameter value from a message. More...
 
 ParameterValue (const bool bool_value)
 Construct a parameter value with type PARAMETER_BOOL. More...
 
 ParameterValue (const int int_value)
 Construct a parameter value with type PARAMETER_INTEGER. More...
 
 ParameterValue (const int64_t int_value)
 Construct a parameter value with type PARAMETER_INTEGER. More...
 
 ParameterValue (const float double_value)
 Construct a parameter value with type PARAMETER_DOUBLE. More...
 
 ParameterValue (const double double_value)
 Construct a parameter value with type PARAMETER_DOUBLE. More...
 
 ParameterValue (const std::string &string_value)
 Construct a parameter value with type PARAMETER_STRING. More...
 
 ParameterValue (const char *string_value)
 Construct a parameter value with type PARAMETER_STRING. More...
 
 ParameterValue (const std::vector< uint8_t > &byte_array_value)
 Construct a parameter value with type PARAMETER_BYTE_ARRAY. More...
 
 ParameterValue (const std::vector< bool > &bool_array_value)
 Construct a parameter value with type PARAMETER_BOOL_ARRAY. More...
 
 ParameterValue (const std::vector< int > &int_array_value)
 Construct a parameter value with type PARAMETER_INTEGER_ARRAY. More...
 
 ParameterValue (const std::vector< int64_t > &int_array_value)
 Construct a parameter value with type PARAMETER_INTEGER_ARRAY. More...
 
 ParameterValue (const std::vector< float > &double_array_value)
 Construct a parameter value with type PARAMETER_DOUBLE_ARRAY. More...
 
 ParameterValue (const std::vector< double > &double_array_value)
 Construct a parameter value with type PARAMETER_DOUBLE_ARRAY. More...
 
 ParameterValue (const std::vector< std::string > &string_array_value)
 Construct a parameter value with type PARAMETER_STRING_ARRAY. More...
 
ParameterType get_type () const
 Return an enum indicating the type of the set value. More...
 
rcl_interfaces::msg::ParameterValue to_value_msg () const
 Return a message populated with the parameter value. More...
 
bool operator== (const ParameterValue &rhs) const
 Equal operator. More...
 
bool operator!= (const ParameterValue &rhs) const
 Not equal operator. More...
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_BOOL, const bool & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_INTEGER, const int64_t & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_DOUBLE, const double & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_STRING, const std::string & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_BYTE_ARRAY, const std::vector< uint8_t > & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_BOOL_ARRAY, const std::vector< bool > & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_INTEGER_ARRAY, const std::vector< int64_t > & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_DOUBLE_ARRAY, const std::vector< double > & >::type get () const
 
template<ParameterType type>
constexpr std::enable_if< type==ParameterType::PARAMETER_STRING_ARRAY, const std::vector< std::string > & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_same< type, bool >::value, const bool & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_integral< type >::value &&!std::is_same< type, bool >::value, const int64_t & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_floating_point< type >::value, const double & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, std::string >::value, const std::string & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector< uint8_t > & >::value, const std::vector< uint8_t > & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector< bool > & >::value, const std::vector< bool > & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector< int64_t > & >::value, const std::vector< int64_t > & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector< double > & >::value, const std::vector< double > & >::type get () const
 
template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector< std::string > & >::value, const std::vector< std::string > & >::type get () const
 

Detailed Description

Store the type and value of a parameter.

Constructor & Destructor Documentation

◆ ParameterValue() [1/16]

rclcpp::ParameterValue::ParameterValue ( )

Construct a parameter value with type PARAMETER_NOT_SET.

◆ ParameterValue() [2/16]

rclcpp::ParameterValue::ParameterValue ( const rcl_interfaces::msg::ParameterValue &  value)
explicit

Construct a parameter value from a message.

◆ ParameterValue() [3/16]

rclcpp::ParameterValue::ParameterValue ( const bool  bool_value)
explicit

Construct a parameter value with type PARAMETER_BOOL.

◆ ParameterValue() [4/16]

rclcpp::ParameterValue::ParameterValue ( const int  int_value)
explicit

Construct a parameter value with type PARAMETER_INTEGER.

◆ ParameterValue() [5/16]

rclcpp::ParameterValue::ParameterValue ( const int64_t  int_value)
explicit

Construct a parameter value with type PARAMETER_INTEGER.

◆ ParameterValue() [6/16]

rclcpp::ParameterValue::ParameterValue ( const float  double_value)
explicit

Construct a parameter value with type PARAMETER_DOUBLE.

◆ ParameterValue() [7/16]

rclcpp::ParameterValue::ParameterValue ( const double  double_value)
explicit

Construct a parameter value with type PARAMETER_DOUBLE.

◆ ParameterValue() [8/16]

rclcpp::ParameterValue::ParameterValue ( const std::string string_value)
explicit

Construct a parameter value with type PARAMETER_STRING.

◆ ParameterValue() [9/16]

rclcpp::ParameterValue::ParameterValue ( const char *  string_value)
explicit

Construct a parameter value with type PARAMETER_STRING.

◆ ParameterValue() [10/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< uint8_t > &  byte_array_value)
explicit

Construct a parameter value with type PARAMETER_BYTE_ARRAY.

◆ ParameterValue() [11/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< bool > &  bool_array_value)
explicit

Construct a parameter value with type PARAMETER_BOOL_ARRAY.

◆ ParameterValue() [12/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< int > &  int_array_value)
explicit

Construct a parameter value with type PARAMETER_INTEGER_ARRAY.

◆ ParameterValue() [13/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< int64_t > &  int_array_value)
explicit

Construct a parameter value with type PARAMETER_INTEGER_ARRAY.

◆ ParameterValue() [14/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< float > &  double_array_value)
explicit

Construct a parameter value with type PARAMETER_DOUBLE_ARRAY.

◆ ParameterValue() [15/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< double > &  double_array_value)
explicit

Construct a parameter value with type PARAMETER_DOUBLE_ARRAY.

◆ ParameterValue() [16/16]

rclcpp::ParameterValue::ParameterValue ( const std::vector< std::string > &  string_array_value)
explicit

Construct a parameter value with type PARAMETER_STRING_ARRAY.

Member Function Documentation

◆ get_type()

ParameterType rclcpp::ParameterValue::get_type ( ) const

Return an enum indicating the type of the set value.

◆ to_value_msg()

rcl_interfaces::msg::ParameterValue rclcpp::ParameterValue::to_value_msg ( ) const

Return a message populated with the parameter value.

◆ operator==()

bool rclcpp::ParameterValue::operator== ( const ParameterValue rhs) const

Equal operator.

◆ operator!=()

bool rclcpp::ParameterValue::operator!= ( const ParameterValue rhs) const

Not equal operator.

◆ get() [1/18]

template<ParameterType type>
constexpr std::enable_if<type == ParameterType::PARAMETER_BOOL, const bool &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [2/18]

template<ParameterType type>
constexpr std::enable_if<type == ParameterType::PARAMETER_INTEGER, const int64_t &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [3/18]

template<ParameterType type>
constexpr std::enable_if<type == ParameterType::PARAMETER_DOUBLE, const double &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [4/18]

template<ParameterType type>
constexpr std::enable_if<type == ParameterType::PARAMETER_STRING, const std::string &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [5/18]

template<ParameterType type>
constexpr std::enable_if< type == ParameterType::PARAMETER_BYTE_ARRAY, const std::vector<uint8_t> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [6/18]

template<ParameterType type>
constexpr std::enable_if< type == ParameterType::PARAMETER_BOOL_ARRAY, const std::vector<bool> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [7/18]

template<ParameterType type>
constexpr std::enable_if< type == ParameterType::PARAMETER_INTEGER_ARRAY, const std::vector<int64_t> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [8/18]

template<ParameterType type>
constexpr std::enable_if< type == ParameterType::PARAMETER_DOUBLE_ARRAY, const std::vector<double> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [9/18]

template<ParameterType type>
constexpr std::enable_if< type == ParameterType::PARAMETER_STRING_ARRAY, const std::vector<std::string> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [10/18]

template<typename type >
constexpr std::enable_if<std::is_same<type, bool>::value, const bool &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [11/18]

template<typename type >
constexpr std::enable_if< std::is_integral<type>::value && !std::is_same<type, bool>::value, const int64_t &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [12/18]

template<typename type >
constexpr std::enable_if<std::is_floating_point<type>::value, const double &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [13/18]

template<typename type >
constexpr std::enable_if<std::is_convertible<type, std::string>::value, const std::string &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [14/18]

template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector<uint8_t> &>::value, const std::vector<uint8_t> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [15/18]

template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector<bool> &>::value, const std::vector<bool> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [16/18]

template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector<int64_t> &>::value, const std::vector<int64_t> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [17/18]

template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector<double> &>::value, const std::vector<double> &>::type rclcpp::ParameterValue::get ( ) const
inline

◆ get() [18/18]

template<typename type >
constexpr std::enable_if< std::is_convertible< type, const std::vector<std::string> &>::value, const std::vector<std::string> &>::type rclcpp::ParameterValue::get ( ) const
inline

The documentation for this class was generated from the following file: