MultiAgentDecisionProcess  Release 0.2.1
RewardModel.h
Go to the documentation of this file.
1 
28 /* Only include this header file once. */
29 #ifndef _REWARDMODEL_H_
30 #define _REWARDMODEL_H_ 1
31 
32 /* the include directives */
33 #include "Globals.h"
34 #include "QTableInterface.h"
35 
38  : public QTableInterface
39 {
40  private:
41 
42  protected:
44  size_t _m_nrStates;
47 
48  public:
49  // Constructor, destructor and copy assignment.
51  RewardModel(size_t nrS=1, size_t nrJA=1) :
52  _m_nrStates(nrS),
53  _m_nrJointActions(nrJA){};
54 
56  virtual ~RewardModel(){};
57 
59  virtual double Get(Index s_i, Index ja_i) const = 0;
60 
61  //data manipulation funtions:
63 
66  virtual void Set(Index s_i, Index ja_i, double rew) = 0;
67 
69  virtual RewardModel* Clone() const = 0;
70 
72  virtual std::string SoftPrint() const = 0;
74  void Print() const
75  { std::cout << SoftPrint();}
76 
77 };
78 
79 #endif /* !_REWARDMODEL_H_ */
80 
81 
82 // Local Variables: ***
83 // mode:c++ ***
84 // End: ***
85