120 using ExecutorParameters = executor_params::Params;
121 using ExecutorParameterListener = executor_params::ParamListener;
126 inline static const std::string PARAM_VALUE_NO_BUILD_HANDLER =
"none";
127 inline static const std::string SCRIPTING_ENUM_PARAM_PREFIX =
"enum";
128 inline static const std::string BLACKBOARD_PARAM_PREFIX =
"bb";
159 std::shared_future<ExecutionResult>
startExecution(
const std::string & tree_build_request);
215 const std::map<std::string, rclcpp::ParameterValue> & value_map,
bool simulate =
false);
234 const std::map<std::string, rclcpp::ParameterValue> & value_map,
bool simulate =
false);
260 const std::string & build_handler_request,
const std::string & root_tree_name,
266 bool onTick()
override final;
274 rcl_interfaces::msg::SetParametersResult on_set_parameters_callback_(
275 const std::vector<rclcpp::Parameter> & parameters);
277 void parameter_event_callback_(
const rcl_interfaces::msg::ParameterEvent & event);
279 rclcpp_action::GoalResponse handle_start_goal_(
280 const rclcpp_action::GoalUUID & uuid, std::shared_ptr<const StartActionContext::Goal> goal_ptr);
281 rclcpp_action::CancelResponse handle_start_cancel_(std::shared_ptr<StartActionContext::GoalHandle> goal_handle_ptr);
282 void handle_start_accept_(std::shared_ptr<StartActionContext::GoalHandle> goal_handle_ptr);
284 rclcpp_action::GoalResponse handle_command_goal_(
285 const rclcpp_action::GoalUUID & uuid, std::shared_ptr<const CommandActionContext::Goal> goal_ptr);
286 rclcpp_action::CancelResponse handle_command_cancel_(
287 std::shared_ptr<CommandActionContext::GoalHandle> goal_handle_ptr);
288 void handle_command_accept_(std::shared_ptr<CommandActionContext::GoalHandle> goal_handle_ptr);
291 ExecutorParameterListener executor_param_listener_;
292 rclcpp::node_interfaces::OnSetParametersCallbackHandle::SharedPtr on_set_parameters_callback_handle_ptr_;
293 std::shared_ptr<rclcpp::ParameterEventHandler> parameter_event_handler_ptr_;
294 rclcpp::ParameterEventCallbackHandle::SharedPtr parameter_event_callback_handle_ptr_;
295 core::NodeRegistrationLoader::SharedPtr tree_node_loader_ptr_;
296 TreeBuildHandlerLoader::UniquePtr build_handler_loader_ptr_;
297 TreeBuilder::UniquePtr builder_ptr_;
298 TreeBuildHandler::UniquePtr build_handler_ptr_;
299 std::string current_build_handler_name_;
300 std::map<std::string, int> scripting_enums_;
301 std::map<std::string, rclcpp::ParameterValue> translated_global_blackboard_entries_;
302 TreeConstructor tree_constructor_;
305 rclcpp_action::Server<StartActionContext::Type>::SharedPtr start_action_ptr_;
306 StartActionContext start_action_context_;
307 rclcpp_action::Server<CommandActionContext::Type>::SharedPtr command_action_ptr_;
308 rclcpp::TimerBase::SharedPtr command_timer_ptr_;
TreeConstructor makeTreeConstructor(const std::string &build_handler_request, const std::string &root_tree_name, const core::NodeManifest &node_manifest={}, const core::NodeManifest &node_overrides={})
Create a callback that builds a behavior tree according to a specific request.
Helper class that stores contextual information related to a ROS 2 action.