#include <blackboard_precondition.h>
Public Member Functions | |
BlackboardPreconditionNode (const std::string &name, const NodeConfiguration &config) | |
virtual | ~BlackboardPreconditionNode () 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 NodeType | type () const override |
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 |
Static Public Member Functions | |
static PortsList | providedPorts () |
![]() | |
static Optional< StringView > | getRemappedKey (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... | |
Additional Inherited Members | |
![]() | |
using | PostTickOverrideCallback = std::function< Optional< NodeStatus >(TreeNode &, NodeStatus, NodeStatus)> |
using | PreTickOverrideCallback = std::function< Optional< NodeStatus >(TreeNode &, NodeStatus)> |
typedef std::shared_ptr< TreeNode > | Ptr |
using | StatusChangeCallback = StatusChangeSignal::CallableFunction |
using | StatusChangeSignal = Signal< TimePoint, const TreeNode &, NodeStatus, NodeStatus > |
using | StatusChangeSubscriber = StatusChangeSignal::Subscriber |
![]() | |
void | modifyPortsRemapping (const PortsRemapping &new_remapping) |
void | resetStatus () |
Equivalent to setStatus(NodeStatus::IDLE) More... | |
void | setRegistrationID (StringView ID) |
void | setStatus (NodeStatus new_status) |
void | setWakeUpInstance (std::shared_ptr< WakeUpSignal > instance) |
![]() | |
TreeNode * | child_node_ |
This node excute its child only if the value of a given input port is equal to the expected one. If this precondition is met, this node will return the same status of the child, otherwise it will return the value specified in "return_on_mismatch".
Example:
<BlackboardCheckInt value_a="{the_answer}" value_b="42" return_on_mismatch="FAILURE">
Definition at line 34 of file blackboard_precondition.h.
|
inline |
Definition at line 37 of file blackboard_precondition.h.
|
overridevirtualdefault |
|
inlinestatic |
Definition at line 52 of file blackboard_precondition.h.
|
inlineoverrideprivatevirtual |
Method to be implemented by the user.
Implements BT::TreeNode.
Definition at line 77 of file blackboard_precondition.h.