Go to the documentation of this file.
17 #include <type_traits>
34 return { InputPort<std::string>(
"if"),
36 "Return status if condition is "
48 throw RuntimeError(
"Missing parameter [else] in Precondition");
72 throw RuntimeError(
"Missing parameter [if] in Precondition");
Result getInput(const std::string &key, T &destination) const
Expected< ScriptFunction > ParseScript(const std::string &script)
const NodeConfig & config() const
virtual BT::NodeStatus executeTick()
The method that should be used to invoke tick() and setStatus();.
std::function< Any(Ast::Environment &env)> ScriptFunction
static PortsList providedPorts()
Blackboard::Ptr blackboard
std::unordered_map< std::string, PortInfo > PortsList
virtual BT::NodeStatus tick() override
Method to be implemented by the user.
virtual ~PreconditionNode() override=default
const std::string & name() const
Name of the instance, not the type.
bool isStatusCompleted(const NodeStatus &status)
PreconditionNode(const std::string &name, const NodeConfig &config)
std::shared_ptr< ScriptingEnumsRegistry > enums
The Environment class is used to encapsulate the information and states needed by the scripting langu...