Main Content

get

Get value of parameter in associated ROS 2 node

Since R2022b

Description

example

paramValue = get(paramObj,paramName) returns paramValue, that contains the value of the specified parameter paramName in the ROS 2 node associated with the parameter object, paramObj. If it fails to return the parameter value, this syntax displays an error.

[paramValue,status] = get(paramObj,paramName) returns a status indicating whether the function was able to successfully return the parameter value. If it fails to return the parameter value, this syntax returns the paramValue as an empty double, and the status as false without displaying an error.

Examples

collapse all

Create a ROS 2 node with parameters.

nodeParams.my_double = 2.0;
nodeParams.my_namespace.my_int = int64(1);
nodeParams.my_double_array = [1.1 2.2 3.3];
nodeParams.my_string = "Keyparams";
mainNode = ros2node("mainNode",Parameters=nodeParams);
pause(1)

Create a ros2param object to interact with the parameters of the ROS 2 node, /node1.

paramObj = ros2param("mainNode");

Use the set function to change the value of the parameter my_string.

set(paramObj,"my_string","Newparams");

Use the get function to obtain the new value of my_string.

stringVal = get(paramObj,"my_string")
stringVal = 
'Newparams'

Use the has function to check if the parameter my_char exists in the ROS 2 node, /node1.

flag = has(paramObj,"my_char")
flag = logical
   0

Use the search function to search for names of all the parameters that contain the string "my_d". Obtain the values of the matching parameters.

[pNames,pVals] = search(paramObj,"my_d")
pNames = 2x1 cell
    {'my_double'      }
    {'my_double_array'}

pVals=2×1 cell array
    {[                   2]}
    {[1.1000 2.2000 3.3000]}

Use the list function to list the names of all parameters in the ROS 2 node.

pList = list(paramObj)
pList = 9x1 cell
    {'my_double'                                            }
    {'my_double_array'                                      }
    {'my_namespace.my_int'                                  }
    {'my_string'                                            }
    {'qos_overrides./parameter_events.publisher.depth'      }
    {'qos_overrides./parameter_events.publisher.durability' }
    {'qos_overrides./parameter_events.publisher.history'    }
    {'qos_overrides./parameter_events.publisher.reliability'}
    {'use_sim_time'                                         }

Input Arguments

collapse all

ROS 2 parameter object, specified as a ros2param object handle.

Name of the parameter, specified as a string scalar or a character vector.

Output Arguments

collapse all

Value of the parameter, returned as a scalar or an array.

Data Types: int64 | logical | char | string | double | cell

Status of the parameter return, returned as a logical scalar.

Version History

Introduced in R2022b

See Also

|