The RepeatNode is used to execute a child several times, as long as it succeed. More...
#include <repeat_node.h>

Public Member Functions | |
| RepeatNode (const std::string &name, int NTries) | |
| RepeatNode (const std::string &name, const NodeConfiguration &config) | |
| virtual | ~RepeatNode () override |
Static Public Member Functions | |
| static PortsList | providedPorts () |
Private Member Functions | |
| void | halt () override |
| The method used to interrupt the execution of this node. | |
| virtual NodeStatus | tick () override |
| Method to be implemented by the user. | |
Private Attributes | |
| int | num_cycles_ |
| bool | read_parameter_from_ports_ |
| int | try_index_ |
Static Private Attributes | |
| static constexpr const char * | NUM_CYCLES = "num_cycles" |
The RepeatNode is used to execute a child several times, as long as it succeed.
To succeed, the child must return SUCCESS N times (port "num_cycles").
If the child returns FAILURE, the loop is stopped and this node returns FAILURE.
Example:
<Repeat num_cycles="3"> <ClapYourHandsOnce> </Repeat>
Definition at line 36 of file repeat_node.h.
| BT::RepeatNode::RepeatNode | ( | const std::string & | name, |
| int | NTries | ||
| ) |
Definition at line 20 of file repeat_node.cpp.
| BT::RepeatNode::RepeatNode | ( | const std::string & | name, |
| const NodeConfiguration & | config | ||
| ) |
Definition at line 29 of file repeat_node.cpp.
| virtual BT::RepeatNode::~RepeatNode | ( | ) | [override, virtual] |
| void BT::RepeatNode::halt | ( | ) | [override, private, virtual] |
The method used to interrupt the execution of this node.
Reimplemented from BT::DecoratorNode.
Definition at line 84 of file repeat_node.cpp.
| static PortsList BT::RepeatNode::providedPorts | ( | ) | [inline, static] |
Definition at line 46 of file repeat_node.h.
| NodeStatus BT::RepeatNode::tick | ( | ) | [override, private, virtual] |
Method to be implemented by the user.
Implements BT::TreeNode.
Definition at line 38 of file repeat_node.cpp.
constexpr const char * BT::RepeatNode::NUM_CYCLES = "num_cycles" [static, private] |
Definition at line 58 of file repeat_node.h.
int BT::RepeatNode::num_cycles_ [private] |
Definition at line 54 of file repeat_node.h.
bool BT::RepeatNode::read_parameter_from_ports_ [private] |
Definition at line 57 of file repeat_node.h.
int BT::RepeatNode::try_index_ [private] |
Definition at line 55 of file repeat_node.h.