diff --git a/controller_manager/src/controller_manager.cpp b/controller_manager/src/controller_manager.cpp index fa78950392..aee6ebcf3a 100644 --- a/controller_manager/src/controller_manager.cpp +++ b/controller_manager/src/controller_manager.cpp @@ -406,6 +406,7 @@ void ControllerManager::init_resource_manager(const std::string & robot_descript // inactive (configured) // BEGIN: Keep old functionality on for backwards compatibility (Remove at the end of 2023) std::vector configure_components_on_start = std::vector({}); +<<<<<<< HEAD get_parameter("configure_components_on_start", configure_components_on_start); if (!configure_components_on_start.empty()) { @@ -427,10 +428,25 @@ void ControllerManager::init_resource_manager(const std::string & robot_descript "hardware_components_initial_state.inactive", rclcpp_lifecycle::State( State::PRIMARY_STATE_INACTIVE, hardware_interface::lifecycle_state_names::INACTIVE)); +======= + if (get_parameter("configure_components_on_start", configure_components_on_start)) + { + RCLCPP_WARN_STREAM( + get_logger(), + "[Deprecated]: Usage of parameter \"activate_components_on_start\" is deprecated. Use " + "hardware_spawner instead."); + rclcpp_lifecycle::State inactive_state( + State::PRIMARY_STATE_INACTIVE, hardware_interface::lifecycle_state_names::INACTIVE); + for (const auto & component : configure_components_on_start) + { + resource_manager_->set_component_state(component, inactive_state); + } +>>>>>>> 937817c (add spawner for hardware (#941)) } // BEGIN: Keep old functionality on for backwards compatibility (Remove at the end of 2023) std::vector activate_components_on_start = std::vector({}); +<<<<<<< HEAD get_parameter("activate_components_on_start", activate_components_on_start); rclcpp_lifecycle::State active_state( State::PRIMARY_STATE_ACTIVE, hardware_interface::lifecycle_state_names::ACTIVE); @@ -441,6 +457,14 @@ void ControllerManager::init_resource_manager(const std::string & robot_descript "Parameter 'activate_components_on_start' is deprecated. " "Components are activated per default. Don't use this parameters in combination with the new " "'hardware_components_initial_state' parameter structure."); +======= + if (get_parameter("activate_components_on_start", activate_components_on_start)) + { + RCLCPP_WARN_STREAM( + get_logger(), + "[Deprecated]: Usage of parameter \"activate_components_on_start\" is deprecated. Use " + "hardware_spawner instead."); +>>>>>>> 937817c (add spawner for hardware (#941)) rclcpp_lifecycle::State active_state( State::PRIMARY_STATE_ACTIVE, hardware_interface::lifecycle_state_names::ACTIVE); for (const auto & component : activate_components_on_start) @@ -448,6 +472,7 @@ void ControllerManager::init_resource_manager(const std::string & robot_descript resource_manager_->set_component_state(component, active_state); } } +<<<<<<< HEAD // END: Keep old functionality on humble for backwards compatibility (Remove at the end of 2023) else { @@ -458,6 +483,17 @@ void ControllerManager::init_resource_manager(const std::string & robot_descript State::PRIMARY_STATE_ACTIVE, hardware_interface::lifecycle_state_names::ACTIVE); resource_manager_->set_component_state(component, active_state); } +======= + // if both parameter are empty or non-existing preserve behavior where all components are + // activated per default + if (configure_components_on_start.empty() && activate_components_on_start.empty()) + { + RCLCPP_WARN_STREAM( + get_logger(), + "[Deprecated]: Automatic activation of all hardware components will not be supported in the " + "future anymore. Use hardware_spawner instead."); + resource_manager_->activate_all_components(); +>>>>>>> 937817c (add spawner for hardware (#941)) } }