MultiAgentDecisionProcess  Release 0.2.1
QFunctionJAOHInterface.h
Go to the documentation of this file.
1 
28 /* Only include this header file once. */
29 #ifndef _QFUNCTIONJAOHINTERFACE_H_
30 #define _QFUNCTIONJAOHINTERFACE_H_ 1
31 
32 /* the include directives */
33 #include <iostream>
34 #include "Globals.h"
35 #include "QFunctionForDecPOMDP.h"
36 
37 
38 
47  : virtual public QFunctionForDecPOMDPInterface
48 {
49  private:
50 
51  protected:
52 
53  public:
61 
62  //operators:
63 
64  //data manipulation (set) functions:
65 
66  //get (data) functions:
67 
69  virtual double GetQ(Index jaohI, Index jaI) const = 0;
70 
71  //TODO the load and save functions should probably be moved up in the hierarchy?!?
73  void Load();
75  virtual void Load(std::string filename)
76  {throw E("QFunctionJAOHInterface::Load in order to have Load functionality this function should be overriden in the relevant derived class.");}
78  void Save() const;
80  virtual void Save(std::string filename) const
81  {throw E("QFunctionJAOHInterface::Save in order to have Save functionality this function should be overriden in the relevant derived class.");}
82 
84  virtual std::string GetCacheFilename() const
85  {throw E("QFunctionJAOHInterface::GetCacheFilename in order to have cache (Load/Save)functionality this function should be overriden in the relevant derived class.");}
86 
87 
88 };
89 
90 
91 #endif /* !_QFUNCTIONJAOHINTERFACE_H_ */
92 
93 // Local Variables: ***
94 // mode:c++ ***
95 // End: ***