]> ruin.nu Git - popboot.git/blobdiff - planner.h
including iterator
[popboot.git] / planner.h
index 79db5420a06cd52e751947013f8eb594af8d7791..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,17 +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*> _addedEffects;
-               __gnu_cxx::hash_map<std::string,Action> _actions;
+               __gnu_cxx::hash_map<std::string,Action*> _actionEffects;
                Literals _init;
                Literals _goal;
                std::vector<Node*> _addedNodes;
+               std::vector<Action*> _actions;
 };
 #endif