subtree_node.cpp
Go to the documentation of this file.
2 
3 BT::SubtreeNode::SubtreeNode(const std::string& name) : DecoratorNode(name, {})
4 {
5  setRegistrationID("SubTree");
6 }
7 
9 {
10  NodeStatus prev_status = status();
11  if (prev_status == NodeStatus::IDLE)
12  {
13  setStatus(NodeStatus::RUNNING);
14  }
15  auto status = child_node_->executeTick();
16  if(status != NodeStatus::RUNNING)
17  {
18  resetChild();
19  }
20 
21  return status;
22 }
23 
24 //--------------------------------
25 BT::SubtreePlusNode::SubtreePlusNode(const std::string& name) : DecoratorNode(name, {})
26 {
27  setRegistrationID("SubTreePlus");
28 }
29 
31 {
32  NodeStatus prev_status = status();
33  if (prev_status == NodeStatus::IDLE)
34  {
35  setStatus(NodeStatus::RUNNING);
36  }
37  auto status = child_node_->executeTick();
38  if(status != NodeStatus::RUNNING)
39  {
40  resetChild();
41  }
42 
43  return status;
44 }
BT::SubtreePlusNode::SubtreePlusNode
SubtreePlusNode(const std::string &name)
Definition: subtree_node.cpp:25
subtree_node.h
BT::DecoratorNode
Definition: decorator_node.h:8
BT::SubtreeNode::tick
virtual BT::NodeStatus tick() override
Method to be implemented by the user.
Definition: subtree_node.cpp:8
BT::NodeStatus::RUNNING
@ RUNNING
BT::NodeStatus::IDLE
@ IDLE
BT::SubtreeNode::SubtreeNode
SubtreeNode(const std::string &name)
Definition: subtree_node.cpp:3
BT::NodeStatus
NodeStatus
Definition: basic_types.h:35
BT::SubtreePlusNode::tick
virtual BT::NodeStatus tick() override
Method to be implemented by the user.
Definition: subtree_node.cpp:30


behaviortree_cpp_v3
Author(s): Michele Colledanchise, Davide Faconti
autogenerated on Wed Jun 26 2024 02:51:19