Class StatefulActionNodeROS

Inheritance Relationships

Base Type

  • public BT::StatefulActionNode

Derived Type

Class Documentation

class StatefulActionNodeROS : public BT::StatefulActionNode

Base class for stateful action nodes in the behavior tree.

This class provides the foundation for creating ROS-integrated behavior tree nodes that maintain state between executions. It inherits from BT::StatefulActionNode and provides integration with ROS node handles.

Subclassed by hateb_local_planner::SetMode

Public Functions

StatefulActionNodeROS() = delete
~StatefulActionNodeROS() override = default
virtual BT::NodeStatus onStart() override = 0

Called when the node starts execution.

Returns:

Status of the node after starting

virtual BT::NodeStatus onRunning() override = 0

Called during node execution.

Returns:

Current status of the node

virtual void onHalted() override = 0

Called when the node is halted.

Public Static Functions

static inline BT::PortsList providedPorts()

Defines the input/output ports for the node.

Returns:

List of ports including the action_name input port

Protected Functions

inline StatefulActionNodeROS(ros::NodeHandle &nh, const std::string &name, const BT::NodeConfiguration &conf)

Constructor initializes the node with ROS and BT configurations.

Parameters:
  • nh – ROS node handle for communication

  • name – Name of the behavior tree node

  • conf – Configuration for the behavior tree node

Protected Attributes

ros::NodeHandle &node_