Go to the documentation of this file.
22 template <
typename _Clock = std::chrono::steady_clock,
23 typename _Duration = std::chrono::steady_clock::duration>
54 return {InputPort<unsigned>(
"msec",
"After a certain amount of time, "
55 "halt() the child if it is still running.")};
67 throw RuntimeError(
"Missing parameter [msec] in TimeoutNode");
Result getInput(const std::string &key, T &destination) const
static pthread_mutex_t mutex
virtual BT::NodeStatus executeTick()
The method that should be used to invoke tick() and setStatus();.
void haltChild()
Same as resetChild()
std::unordered_map< std::string, PortInfo > PortsList
const NodeConfiguration & config() const
TimerQueue< _Clock, _Duration > timer_
NodeStatus status() const
TimeoutNode(const std::string &name, unsigned milliseconds)
void setStatus(NodeStatus new_status)
TimeoutNode(const std::string &name, const NodeConfiguration &config)
void setRegistrationID(StringView ID)
const std::string & name() const
Name of the instance, not the type.
const TreeNode * child() const
bool read_parameter_from_ports_
static PortsList providedPorts()
virtual BT::NodeStatus tick() override
Method to be implemented by the user.
std::mutex timeout_mutex_
bool StatusCompleted(const NodeStatus &status)
std::atomic< bool > child_halted_
The TimeoutNode will halt() a running child if the latter has been RUNNING for more than a give time....
behaviortree_cpp_v3
Author(s): Michele Colledanchise, Davide Faconti
autogenerated on Wed Jun 26 2024 02:51:19