|
Nav2 Navigation Stack - jazzy
jazzy
ROS 2 Navigation Stack
|
An action server that uses behavior tree to execute an action. More...
#include <nav2_behavior_tree/include/nav2_behavior_tree/bt_action_server.hpp>

Public Types | |
| using | ActionServer = nav2_util::SimpleActionServer< ActionT > |
| typedef std::function< bool(typename ActionT::Goal::ConstSharedPtr)> | OnGoalReceivedCallback |
| typedef std::function< void()> | OnLoopCallback |
| typedef std::function< void(typename ActionT::Goal::ConstSharedPtr)> | OnPreemptCallback |
| typedef std::function< void(typename ActionT::Result::SharedPtr, nav2_behavior_tree::BtStatus)> | OnCompletionCallback |
Public Member Functions | |
| BtActionServer (const rclcpp_lifecycle::LifecycleNode::WeakPtr &parent, const std::string &action_name, const std::vector< std::string > &plugin_lib_names, const std::string &default_bt_xml_filename, OnGoalReceivedCallback on_goal_received_callback, OnLoopCallback on_loop_callback, OnPreemptCallback on_preempt_callback, OnCompletionCallback on_completion_callback) | |
| A constructor for nav2_behavior_tree::BtActionServer class. | |
| ~BtActionServer () | |
| A destructor for nav2_behavior_tree::BtActionServer class. | |
| bool | on_configure () |
| Configures member variables Initializes action server for, builds behavior tree from xml file, and calls user-defined onConfigure. More... | |
| bool | on_activate () |
| Activates action server. More... | |
| bool | on_deactivate () |
| Deactivates action server. More... | |
| bool | on_cleanup () |
| Resets member variables. More... | |
| void | setGrootMonitoring (const bool enable, const unsigned server_port) |
| Enable (or disable) Groot2 monitoring of BT. More... | |
| bool | loadBehaviorTree (const std::string &bt_xml_filename="") |
| Replace current BT with another one. More... | |
| BT::Blackboard::Ptr | getBlackboard () const |
| Getter function for BT Blackboard. More... | |
| std::string | getCurrentBTFilename () const |
| Getter function for current BT XML filename. More... | |
| std::string | getDefaultBTFilename () const |
| Getter function for default BT XML filename. More... | |
| const std::shared_ptr< const typename ActionT::Goal > | acceptPendingGoal () |
| Wrapper function to accept pending goal if a preempt has been requested. More... | |
| void | terminatePendingGoal () |
| Wrapper function to terminate pending goal if a preempt has been requested. | |
| const std::shared_ptr< const typename ActionT::Goal > | getCurrentGoal () const |
| Wrapper function to get current goal. More... | |
| const std::shared_ptr< const typename ActionT::Goal > | getPendingGoal () const |
| Wrapper function to get pending goal. More... | |
| void | publishFeedback (typename std::shared_ptr< typename ActionT::Feedback > feedback) |
| Wrapper function to publish action feedback. | |
| const BT::Tree & | getTree () const |
| Getter function for the current BT tree. More... | |
| void | haltTree () |
| Function to halt the current tree. It will interrupt the execution of RUNNING nodes by calling their halt() implementation (only for Async nodes that may return RUNNING) This should already done for all the exit states of the action but preemption. | |
Protected Member Functions | |
| void | executeCallback () |
| Action server callback. | |
| void | populateErrorCode (typename std::shared_ptr< typename ActionT::Result > result) |
| updates the action server result to the highest priority error code posted on the blackboard More... | |
| void | cleanErrorCodes () |
| Setting BT error codes to success. Used to clean blackboard between different BT runs. | |
Protected Attributes | |
| std::string | action_name_ |
| std::shared_ptr< ActionServer > | action_server_ |
| BT::Tree | tree_ |
| BT::Blackboard::Ptr | blackboard_ |
| std::string | current_bt_xml_filename_ |
| std::string | default_bt_xml_filename_ |
| std::unique_ptr< nav2_behavior_tree::BehaviorTreeEngine > | bt_ |
| std::vector< std::string > | plugin_lib_names_ |
| std::vector< std::string > | error_code_names_ |
| rclcpp::Node::SharedPtr | client_node_ |
| rclcpp_lifecycle::LifecycleNode::WeakPtr | node_ |
| rclcpp::Clock::SharedPtr | clock_ |
| rclcpp::Logger | logger_ {rclcpp::get_logger("BtActionServer")} |
| std::unique_ptr< RosTopicLogger > | topic_logger_ |
| std::chrono::milliseconds | bt_loop_duration_ |
| std::chrono::milliseconds | default_server_timeout_ |
| std::chrono::milliseconds | default_cancel_timeout_ |
| std::chrono::milliseconds | wait_for_service_timeout_ |
| bool | always_reload_bt_xml_ = false |
| bool | enable_groot_monitoring_ = false |
| int | groot_server_port_ = 1667 |
| OnGoalReceivedCallback | on_goal_received_callback_ |
| OnLoopCallback | on_loop_callback_ |
| OnPreemptCallback | on_preempt_callback_ |
| OnCompletionCallback | on_completion_callback_ |
An action server that uses behavior tree to execute an action.
Definition at line 35 of file bt_action_server.hpp.
|
inline |
Wrapper function to accept pending goal if a preempt has been requested.
Definition at line 136 of file bt_action_server.hpp.
|
inline |
Getter function for BT Blackboard.
Definition at line 109 of file bt_action_server.hpp.
|
inline |
Getter function for current BT XML filename.
Definition at line 118 of file bt_action_server.hpp.
|
inline |
Wrapper function to get current goal.
Definition at line 153 of file bt_action_server.hpp.
|
inline |
Getter function for default BT XML filename.
Definition at line 127 of file bt_action_server.hpp.
|
inline |
Wrapper function to get pending goal.
Definition at line 162 of file bt_action_server.hpp.
|
inline |
Getter function for the current BT tree.
Definition at line 179 of file bt_action_server.hpp.
| bool nav2_behavior_tree::BtActionServer< ActionT >::loadBehaviorTree | ( | const std::string & | bt_xml_filename = "" | ) |
Replace current BT with another one.
| bt_xml_filename | The file containing the new BT, uses default filename if empty |
Definition at line 240 of file bt_action_server_impl.hpp.
| bool nav2_behavior_tree::BtActionServer< ActionT >::on_activate |
Activates action server.
Definition at line 200 of file bt_action_server_impl.hpp.
| bool nav2_behavior_tree::BtActionServer< ActionT >::on_cleanup |
Resets member variables.
Definition at line 218 of file bt_action_server_impl.hpp.
| bool nav2_behavior_tree::BtActionServer< ActionT >::on_configure |
Configures member variables Initializes action server for, builds behavior tree from xml file, and calls user-defined onConfigure.
Definition at line 114 of file bt_action_server_impl.hpp.
| bool nav2_behavior_tree::BtActionServer< ActionT >::on_deactivate |
Deactivates action server.
Definition at line 211 of file bt_action_server_impl.hpp.
|
protected |
updates the action server result to the highest priority error code posted on the blackboard
| result | the action server result to be updated |
Definition at line 359 of file bt_action_server_impl.hpp.
| void nav2_behavior_tree::BtActionServer< ActionT >::setGrootMonitoring | ( | const bool | enable, |
| const unsigned | server_port | ||
| ) |
Enable (or disable) Groot2 monitoring of BT.
| enable | Groot2 monitoring |
| server_port | Groot2 Server port, first of the pair (server_port, publisher_port) |
Definition at line 233 of file bt_action_server_impl.hpp.