diff --git a/include/behaviortree_cpp/controls/sequence_node.h b/include/behaviortree_cpp/controls/sequence_node.h index 0bb085705..cb6ab9bfc 100644 --- a/include/behaviortree_cpp/controls/sequence_node.h +++ b/include/behaviortree_cpp/controls/sequence_node.h @@ -34,7 +34,8 @@ namespace BT class SequenceNode : public ControlNode { public: - SequenceNode(const std::string& name, bool make_async = false); + SequenceNode(const std::string& name, bool make_async = false, + const NodeConfiguration& conf = NodeConfiguration()); virtual ~SequenceNode() override = default; @@ -43,11 +44,11 @@ class SequenceNode : public ControlNode protected: size_t current_child_idx_; + virtual BT::NodeStatus tick() override; + private: size_t skipped_count_ = 0; bool asynch_ = false; - - virtual BT::NodeStatus tick() override; }; } // namespace BT diff --git a/src/controls/sequence_node.cpp b/src/controls/sequence_node.cpp index 483e66c5b..a19c6b9ec 100644 --- a/src/controls/sequence_node.cpp +++ b/src/controls/sequence_node.cpp @@ -15,8 +15,9 @@ namespace BT { -SequenceNode::SequenceNode(const std::string& name, bool make_async) - : ControlNode::ControlNode(name, {}), current_child_idx_(0), asynch_(make_async) +SequenceNode::SequenceNode(const std::string& name, bool make_async, + const NodeConfiguration& conf) + : ControlNode::ControlNode(name, conf), current_child_idx_(0), asynch_(make_async) { if(asynch_) setRegistrationID("AsyncSequence");