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=default |
Public Member Functions inherited from BT::DecoratorNode | |
| 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... | |
| void | haltChild () |
| Halt() the child node. More... | |
| void | setChild (TreeNode *child) |
| virtual NodeType | type () const override |
| virtual | ~DecoratorNode () override=default |
Public Member Functions inherited from BT::TreeNode | |
| const NodeConfiguration & | config () const |
| 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) |
| 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 |
Static Public Member Functions | |
| static PortsList | providedPorts () |
Static Public Member Functions inherited from BT::TreeNode | |
| static Optional< StringView > | getRemappedKey (StringView port_name, StringView remapping_value) |
| static bool | isBlackboardPointer (StringView str) |
| static StringView | stripBlackboardPointer (StringView str) |
Private Member Functions | |
| void | halt () override |
| The method used to interrupt the execution of this node. More... | |
| virtual NodeStatus | tick () override |
| Method to be implemented by the user. More... | |
Private Attributes | |
| int | num_cycles_ |
| bool | read_parameter_from_ports_ |
| int | try_index_ |
Static Private Attributes | |
| static constexpr const char * | NUM_CYCLES = "num_cycles" |
Additional Inherited Members | |
Public Types inherited from BT::TreeNode | |
| typedef std::shared_ptr< TreeNode > | Ptr |
| using | StatusChangeCallback = StatusChangeSignal::CallableFunction |
| using | StatusChangeSignal = Signal< TimePoint, const TreeNode &, NodeStatus, NodeStatus > |
| using | StatusChangeSubscriber = StatusChangeSignal::Subscriber |
Protected Member Functions inherited from BT::TreeNode | |
| void | modifyPortsRemapping (const PortsRemapping &new_remapping) |
| void | setRegistrationID (StringView ID) |
| void | setStatus (NodeStatus new_status) |
Protected Attributes inherited from BT::DecoratorNode | |
| TreeNode * | child_node_ |
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.
|
overridevirtualdefault |
|
overrideprivatevirtual |
The method used to interrupt the execution of this node.
Reimplemented from BT::DecoratorNode.
Definition at line 86 of file repeat_node.cpp.
|
inlinestatic |
Definition at line 46 of file repeat_node.h.
|
overrideprivatevirtual |
Method to be implemented by the user.
Implements BT::TreeNode.
Definition at line 38 of file repeat_node.cpp.
|
staticprivate |
Definition at line 58 of file repeat_node.h.
|
private |
Definition at line 54 of file repeat_node.h.
|
private |
Definition at line 57 of file repeat_node.h.
|
private |
Definition at line 55 of file repeat_node.h.