]> ruin.nu Git - popboot.git/blobdiff - node.h
not working
[popboot.git] / node.h
diff --git a/node.h b/node.h
index 7bcf3a8c371338375df7d42604ce5d0ddf98ce74..cfa02223854a9d66dfad039fc2fcd0deb57e2a76 100644 (file)
--- a/node.h
+++ b/node.h
@@ -2,20 +2,38 @@
 #define __node_h__
 
 #include <vector>
+#include <utility>
 #include "action.h"
 
 class Node {
 
        public:
-               Node(Action action);
+               Node(const Action& action);
+               Node();
+               Node(const Node& node);
+               virtual ~Node(){}
                void addChild(Node* node);
                const Action& action() const;
                void execute(const literals& effects);
+               bool executed() const;
+               const literals& effects() const;
 
        protected:
                Action _action;
                std::vector<Node*> _children;
                literals _preconditions;
+               bool _executed;
+               literals _effects;
+};
+
+class StartNode : Node {
+       public:
+               StartNode(const literals& init);
+};
+
+class EndNode : Node {
+       public:
+               EndNode(const literals& goal);
 };
 
 #endif