UniqueBeliefHeap.h
Go to the documentation of this file.
00001 
00010 #ifndef UNIQUEBELIEFHEAP3_H
00011 #define UNIQUEBELIEFHEAP3_H
00012 
00013 #include <map>
00014 #include <string>
00015 #include <vector>
00016 #include "MathLib.h"
00017 #include "MObject.h"
00018 using namespace std;
00019 
00020 namespace momdp{
00021 
00022         struct BeliefVector_RowIndexPair
00023         {
00024                 BeliefVector_RowIndexPair(SharedPointer<belief_vector>& bel, int row)
00025                 {
00026                         vector = bel;
00027                         this->row = row;
00028                 }
00029 
00030                 SharedPointer<belief_vector> vector;
00031                 int row;
00032         };
00033         class UniqueBeliefHeap
00034         {
00035         private:
00036                 map<string, vector<BeliefVector_RowIndexPair> > uniqueBelHeap;
00037 
00038                 bool hasBelief(SharedPointer<belief_vector>& bel);
00039         public:
00046                 int addBeliefRowPair(SharedPointer<belief_vector>& bel, int row);
00047                 //void addBeliefRowPair(const Belief& bel, int row);
00048 
00056                 int getBeliefRowIndex(SharedPointer<belief_vector>& bel) const;
00057                 //int getBeliefRowIndex(const Belief& bel)const;
00058 
00067                 bool isStorageMaterial(SharedPointer<belief_vector>& bel);
00068                 //bool isStorageMaterial(const Belief& bel)const;
00069 
00070                 void printHashMap()const ;
00071 
00072                 virtual ~UniqueBeliefHeap();
00073         };
00074 }
00075 #endif


appl
Author(s): petercai
autogenerated on Tue Jan 7 2014 11:02:29