How does roslaunch node clear_params work exactly?
How exactly does 'clear_params' attribute of node and group works? Description from here: http://wiki.ros.org/roslaunch/XML/node
clear_params="true|false"(optional) Delete all parameters in the node's private namespace before launch.
I assumed that it would be used to clear all the parameters in the node's private name space, maybe for the purpose of making sure that the defaults from code are loaded, since the launch rosparam and param declarations are loaded before the nodes are started (here is a nice summary: https://answers.ros.org/question/1996...)
BUT I have this example where I first noticed the use of this attribute: https://github.com/AprilRobotics/apri...
<launch>
<arg name="launch_prefix" default="" /> <!-- set to value="gdbserver localhost:10000" for remote debugging -->
<arg name="node_namespace" default="apriltag_ros_continuous_node" />
<arg name="camera_name" default="/camera_rect" />
<arg name="image_topic" default="image_rect" />
<!-- Set parameters -->
<rosparam command="load" file="$(find apriltag_ros)/config/settings.yaml" ns="$(arg node_namespace)" />
<rosparam command="load" file="$(find apriltag_ros)/config/tags.yaml" ns="$(arg node_namespace)" />
<node pkg="apriltag_ros" type="apriltag_ros_continuous_node" name="$(arg node_namespace)" clear_params="true" output="screen" launch-prefix="$(arg launch_prefix)" >
<!-- Remap topics from those used in code to those on the ROS network -->
<remap from="image_rect" to="$(arg camera_name)/$(arg image_topic)" />
<remap from="camera_info" to="$(arg camera_name)/camera_info" />
<param name="publish_tag_detections_image" type="bool" value="true" /> <!-- default: false -->
</node>
</launch>
So I would assume that the 'clear_params' would actually clear the parameter values from both the previous rosparam tags AND the child param tag. But this is not the case, all these settings are taken into account. So how does clear_params works and for what reason was it used in the example above?