]> ruin.nu Git - popboot.git/blobdiff - planner.h
including iterator
[popboot.git] / planner.h
index 3faa6fb6918559f0182e45b51fc167c340920db1..8d116933f14a6d0122aaa0182ca22f21686ca277 100644 (file)
--- a/planner.h
+++ b/planner.h
@@ -3,6 +3,9 @@
 
 #include <ext/hash_map>
 #include <vector>
+#include <queue>
+#include <pthread.h>
+#include <semaphore.h>
 #include "action.h"
 
 class Node;
@@ -14,16 +17,23 @@ class Planner {
 
                void execute();
 
+
        protected:
 
                void makePlan(Node* node);
                void addNode(Node* node);
+
+               sem_t _nodes;
+               sem_t _list;
+               std::queue<Node*> _executedNodes;
                
                Node* _start;
                Node* _finish;
-               __gnu_cxx::hash_map<std::string,Node*> _addedNodes;
-               __gnu_cxx::hash_map<std::string,Action> _actions;
+               __gnu_cxx::hash_map<std::string,Node*> _addedEffects;
+               __gnu_cxx::hash_map<std::string,Action*> _actionEffects;
                Literals _init;
                Literals _goal;
+               std::vector<Node*> _addedNodes;
+               std::vector<Action*> _actions;
 };
 #endif