16 #ifndef NAV2_BT_NAVIGATOR__BT_NAVIGATOR_HPP_
17 #define NAV2_BT_NAVIGATOR__BT_NAVIGATOR_HPP_
23 #include "nav2_util/lifecycle_node.hpp"
24 #include "nav2_util/odometry_utils.hpp"
25 #include "rclcpp_action/rclcpp_action.hpp"
26 #include "tf2_ros/buffer.h"
27 #include "tf2_ros/transform_listener.h"
28 #include "tf2_ros/create_timer_ros.h"
29 #include "nav2_core/behavior_tree_navigator.hpp"
30 #include "pluginlib/class_loader.hpp"
32 namespace nav2_bt_navigator
47 explicit BtNavigator(rclcpp::NodeOptions options = rclcpp::NodeOptions());
62 nav2_util::CallbackReturn
on_configure(
const rclcpp_lifecycle::State & state)
override;
68 nav2_util::CallbackReturn
on_activate(
const rclcpp_lifecycle::State & state)
override;
74 nav2_util::CallbackReturn
on_deactivate(
const rclcpp_lifecycle::State & state)
override;
80 nav2_util::CallbackReturn
on_cleanup(
const rclcpp_lifecycle::State & state)
override;
86 nav2_util::CallbackReturn
on_shutdown(
const rclcpp_lifecycle::State & state)
override;
89 pluginlib::ClassLoader<nav2_core::NavigatorBase> class_loader_;
90 std::vector<pluginlib::UniquePtr<nav2_core::NavigatorBase>> navigators_;
94 std::shared_ptr<nav2_util::OdomSmoother> odom_smoother_;
97 std::string robot_frame_;
98 std::string global_frame_;
99 double transform_tolerance_;
100 std::string odom_topic_;
103 std::shared_ptr<tf2_ros::Buffer> tf_;
104 std::shared_ptr<tf2_ros::TransformListener> tf_listener_;
An action server that uses behavior tree for navigating a robot to its goal position.
nav2_util::CallbackReturn on_configure(const rclcpp_lifecycle::State &state) override
Configures member variables.
BtNavigator(rclcpp::NodeOptions options=rclcpp::NodeOptions())
A constructor for nav2_bt_navigator::BtNavigator class.
nav2_util::CallbackReturn on_activate(const rclcpp_lifecycle::State &state) override
Activates action server.
nav2_util::CallbackReturn on_cleanup(const rclcpp_lifecycle::State &state) override
Resets member variables.
~BtNavigator()
A destructor for nav2_bt_navigator::BtNavigator class.
nav2_util::CallbackReturn on_shutdown(const rclcpp_lifecycle::State &state) override
Called when in shutdown state.
nav2_util::CallbackReturn on_deactivate(const rclcpp_lifecycle::State &state) override
Deactivates action server.
A class to control the state of the BT navigator by allowing only a single plugin to be processed at ...
A lifecycle node wrapper to enable common Nav2 needs such as manipulating parameters.