set_parameters_callback

This file is ai generated. Do not edit this file directly. Instead, edit the node source code and run the generate-node-docs command to update this file.

Description

A ROS2 node that demonstrates the complete parameter callback chain: pre-set, on-set (validation), and post-set callbacks. This shows best practices for parameter handling, including validation and triggering side effects when parameters change. When param1 is set, the node automatically also sets param2 as a side effect.

Parameters

  • param1 (double, default: 0.0): Primary parameter that triggers param2 update

  • param2 (double, default: 0.0): Secondary parameter automatically set when param1 changes

Example Usage

# Run the node
ros2 run demo_nodes_py set_parameters_callback

To test parameter callbacks:

# Terminal 1: Run the node
ros2 run demo_nodes_py set_parameters_callback

# Terminal 2: Set param1 (this will also trigger param2 to be set to 4.0)
ros2 param set /set_parameters_callback param1 1.0

# Terminal 3: Get parameters
ros2 param get /set_parameters_callback param1
ros2 param get /set_parameters_callback param2

Or use the service interface directly:

ros2 service call /set_parameters_callback/set_parameters rcl_interfaces/srv/SetParameters \
    "{parameters: [{name: 'param1', value: {type: 3, double_value: 1.0}}]}"

The node demonstrates:

  • Pre-set callback: Modifies parameter list before setting (adds param2 when param1 is set)

  • On-set callback: Validates parameters before accepting changes

  • Post-set callback: Updates internal state after successful parameter changes