Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
BT::ParallelNode Class Reference

#include <parallel_node.h>

Inheritance diagram for BT::ParallelNode:
Inheritance graph
[legend]

Public Member Functions

virtual void halt () override
 
 ParallelNode (const std::string &name, unsigned success_threshold, unsigned failure_threshold=1)
 
 ParallelNode (const std::string &name, const NodeConfiguration &config)
 
void setThresholdFM (unsigned int threshold_M)
 
void setThresholdM (unsigned int threshold_M)
 
unsigned int thresholdFM ()
 
unsigned int thresholdM ()
 
 ~ParallelNode ()=default
 
- Public Member Functions inherited from BT::ControlNode
void addChild (TreeNode *child)
 The method used to add nodes to the children vector. More...
 
const TreeNodechild (size_t index) const
 
const std::vector< TreeNode * > & children () const
 
size_t childrenCount () const
 
 ControlNode (const std::string &name, const NodeConfiguration &config)
 
void haltChild (size_t i)
 
void haltChildren ()
 
void haltChildren (size_t first)
 
virtual NodeType type () const overridefinal
 
virtual ~ControlNode () override=default
 
- Public Member Functions inherited from BT::TreeNode
const NodeConfigurationconfig () const
 
virtual BT::NodeStatus executeTick ()
 The method that should be used to invoke tick() and setStatus();. More...
 
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< StringViewgetRemappedKey (StringView port_name, StringView remapping_value)
 
static bool isBlackboardPointer (StringView str)
 
static StringView stripBlackboardPointer (StringView str)
 

Private Member Functions

virtual BT::NodeStatus tick () override
 Method to be implemented by the user. More...
 

Private Attributes

unsigned int failure_threshold_
 
bool read_parameter_from_ports_
 
std::set< int > skip_list_
 
unsigned int success_threshold_
 

Static Private Attributes

static constexpr const char * THRESHOLD_FAILURE = "failure_threshold"
 
static constexpr const char * THRESHOLD_SUCCESS = "success_threshold"
 

Additional Inherited Members

- Public Types inherited from BT::TreeNode
typedef std::shared_ptr< TreeNodePtr
 
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::ControlNode
std::vector< TreeNode * > children_nodes_
 

Detailed Description

Definition at line 23 of file parallel_node.h.

Constructor & Destructor Documentation

BT::ParallelNode::ParallelNode ( const std::string &  name,
unsigned  success_threshold,
unsigned  failure_threshold = 1 
)

Definition at line 22 of file parallel_node.cpp.

BT::ParallelNode::ParallelNode ( const std::string &  name,
const NodeConfiguration config 
)

Definition at line 32 of file parallel_node.cpp.

BT::ParallelNode::~ParallelNode ( )
default

Member Function Documentation

void BT::ParallelNode::halt ( )
overridevirtual

The method used to interrupt the execution of a RUNNING node. Only Async nodes that may return RUNNING should implement it.

Reimplemented from BT::ControlNode.

Definition at line 139 of file parallel_node.cpp.

static PortsList BT::ParallelNode::providedPorts ( )
inlinestatic

Definition at line 32 of file parallel_node.h.

void BT::ParallelNode::setThresholdFM ( unsigned int  threshold_M)

Definition at line 160 of file parallel_node.cpp.

void BT::ParallelNode::setThresholdM ( unsigned int  threshold_M)

Definition at line 155 of file parallel_node.cpp.

unsigned int BT::ParallelNode::thresholdFM ( )

Definition at line 150 of file parallel_node.cpp.

unsigned int BT::ParallelNode::thresholdM ( )

Definition at line 145 of file parallel_node.cpp.

NodeStatus BT::ParallelNode::tick ( )
overrideprivatevirtual

Method to be implemented by the user.

Implements BT::TreeNode.

Definition at line 41 of file parallel_node.cpp.

Member Data Documentation

unsigned int BT::ParallelNode::failure_threshold_
private

Definition at line 49 of file parallel_node.h.

bool BT::ParallelNode::read_parameter_from_ports_
private

Definition at line 53 of file parallel_node.h.

std::set<int> BT::ParallelNode::skip_list_
private

Definition at line 51 of file parallel_node.h.

unsigned int BT::ParallelNode::success_threshold_
private

Definition at line 48 of file parallel_node.h.

constexpr const char * BT::ParallelNode::THRESHOLD_FAILURE = "failure_threshold"
staticprivate

Definition at line 55 of file parallel_node.h.

constexpr const char * BT::ParallelNode::THRESHOLD_SUCCESS = "success_threshold"
staticprivate

Definition at line 54 of file parallel_node.h.


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


behaviotree_cpp_v3
Author(s): Michele Colledanchise, Davide Faconti
autogenerated on Tue May 4 2021 02:56:26