@@ -29,11 +29,17 @@ NavigateThroughPosesNavigator::configure(
2929{
3030 start_time_ = rclcpp::Time (0 );
3131 auto node = parent_node.lock ();
32- node->declare_parameter (" goals_blackboard_id" , std::string (" goals" ));
32+
33+ if (!node->has_parameter (" goals_blackboard_id" )) {
34+ node->declare_parameter (" goals_blackboard_id" , std::string (" goals" ));
35+ }
36+
3337 goals_blackboard_id_ = node->get_parameter (" goals_blackboard_id" ).as_string ();
38+
3439 if (!node->has_parameter (" path_blackboard_id" )) {
3540 node->declare_parameter (" path_blackboard_id" , std::string (" path" ));
3641 }
42+
3743 path_blackboard_id_ = node->get_parameter (" path_blackboard_id" ).as_string ();
3844
3945 // Odometry smoother object for getting current speed
@@ -48,12 +54,16 @@ NavigateThroughPosesNavigator::getDefaultBTFilepath(
4854{
4955 std::string default_bt_xml_filename;
5056 auto node = parent_node.lock ();
51- std::string pkg_share_dir =
52- ament_index_cpp::get_package_share_directory (" nav2_bt_navigator" );
53- node->declare_parameter <std::string>(
54- " default_nav_through_poses_bt_xml" ,
55- pkg_share_dir +
56- " /behavior_trees/navigate_through_poses_w_replanning_and_recovery.xml" );
57+
58+ if (!node->has_parameter (" default_nav_through_poses_bt_xml" )) {
59+ std::string pkg_share_dir =
60+ ament_index_cpp::get_package_share_directory (" nav2_bt_navigator" );
61+ node->declare_parameter <std::string>(
62+ " default_nav_through_poses_bt_xml" ,
63+ pkg_share_dir +
64+ " /behavior_trees/navigate_through_poses_w_replanning_and_recovery.xml" );
65+ }
66+
5767 node->get_parameter (" default_nav_through_poses_bt_xml" , default_bt_xml_filename);
5868
5969 return default_bt_xml_filename;
0 commit comments