The SubtreeNode is a way to wrap an entire Subtree, creating a separated BlackBoard. If you want to have data flow through ports, you need to explicitly remap the ports. More...
#include <subtree_node.h>
Public Member Functions | |
SubtreeNode (const std::string &name) | |
virtual | ~SubtreeNode () override=default |
![]() | |
const TreeNode * | child () const |
TreeNode * | child () |
DecoratorNode (const std::string &name, const NodeConfiguration &config) | |
NodeStatus | executeTick () override |
The method that should be used to invoke tick() and setStatus();. More... | |
virtual void | halt () override |
The method used to interrupt the execution of this node. More... | |
void | haltChild () |
Same as resetChild() More... | |
void | resetChild () |
void | setChild (TreeNode *child) |
virtual | ~DecoratorNode () override=default |
![]() | |
const NodeConfiguration & | config () const |
void | emitStateChanged () |
template<typename T > | |
Result | getInput (const std::string &key, T &destination) const |
template<typename T > | |
Optional< T > | getInput (const std::string &key) const |
StringView | getRawPortValue (const std::string &key) const |
bool | isHalted () const |
const std::string & | name () const |
Name of the instance, not the type. More... | |
const std::string & | registrationName () const |
registrationName is the ID used by BehaviorTreeFactory to create an instance. More... | |
template<typename T > | |
Result | setOutput (const std::string &key, const T &value) |
void | setPostTickOverrideFunction (PostTickOverrideCallback callback) |
void | setPreTickOverrideFunction (PreTickOverrideCallback callback) |
NodeStatus | status () const |
StatusChangeSubscriber | subscribeToStatusChange (StatusChangeCallback callback) |
subscribeToStatusChange is used to attach a callback to a status change. When StatusChangeSubscriber goes out of scope (it is a shared_ptr) the callback is unsubscribed automatically. More... | |
TreeNode (std::string name, NodeConfiguration config) | |
TreeNode main constructor. More... | |
uint16_t | UID () const |
BT::NodeStatus | waitValidStatus () |
virtual | ~TreeNode ()=default |
Private Member Functions | |
virtual BT::NodeStatus | tick () override |
Method to be implemented by the user. More... | |
virtual NodeType | type () const override final |
Static Private Member Functions | |
static PortsList | providedPorts () |
The SubtreeNode is a way to wrap an entire Subtree, creating a separated BlackBoard. If you want to have data flow through ports, you need to explicitly remap the ports.
Definition at line 14 of file subtree_node.h.
BT::SubtreeNode::SubtreeNode | ( | const std::string & | name | ) |
Definition at line 3 of file subtree_node.cpp.
|
overridevirtualdefault |
|
inlinestaticprivate |
Definition at line 24 of file subtree_node.h.
|
overrideprivatevirtual |
Method to be implemented by the user.
Implements BT::TreeNode.
Definition at line 8 of file subtree_node.cpp.
|
inlinefinaloverrideprivatevirtual |
Reimplemented from BT::DecoratorNode.
Definition at line 32 of file subtree_node.h.