SequenceNode.h 559 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef BEHAVIORTREE_SEQUENCENODE_H
  2. #define BEHAVIORTREE_SEQUENCENODE_H
  3. #include <list>
  4. #include "BehaviorTree/NodeIf.h"
  5. namespace Egametang {
  6. class SequenceNode: public NodeIf
  7. {
  8. private:
  9. std::list<NodeIf*> nodes;
  10. public:
  11. virtual ~SequenceNode();
  12. virtual bool Run(ContexIf* contex);
  13. virtual void AddChildNode(NodeIf *node);
  14. virtual std::string ToString();
  15. };
  16. class SequenceNodeFactory: public NodeFactoryIf
  17. {
  18. public:
  19. virtual NodeIf* GetInstance(const BehaviorNodeConf& conf);
  20. };
  21. } // namespace Egametang
  22. #endif // BEHAVIORTREE_SEQUENCENODE_H