AutoAPMS
Streamlining behaviors in ROS 2
Loading...
Searching...
No Matches
RosControlNode Class Reference

ROS-aware wrapper for the basic BT::ControlNode (a node with one or more children). More...

#include <auto_apms_behavior_tree_core/node/base/ros_control_node.hpp>

Inheritance diagram for RosControlNode:

Additional Inherited Members

- Protected Member Functions inherited from RosNodeBase
void applyPortAliasing (const BT::TreeNode *node) const
 Support the node manifest 'port_alias' feature: copy the aliased port values onto the original ports the node implementation reads.
 
template<typename InstanceT>
std::shared_ptr< InstanceT > getSharedEntity (const std::string &entity_name, const std::function< std::shared_ptr< InstanceT >()> &factory)
 Retrieve a process-wide shared ROS 2 entity, creating it via factory on first use.
 

Detailed Description

ROS-aware wrapper for the basic BT::ControlNode (a node with one or more children).

Adds the RosNodeContext, a per-instance logger and node-manifest support to the plain control node. Derive from it for a custom control flow node whose logic needs access to the ROS 2 node (via RosNodeContext::getRosNode()), e.g. a control node that selects among its children based on some ROS 2 state.

Implement tick() as usual for a BT::ControlNode (drive the children via children_nodes_).

Definition at line 35 of file ros_control_node.hpp.


The documentation for this class was generated from the following files: