MultiAgentDecisionProcess  Release 0.2.1
JointObservationDiscrete.h
Go to the documentation of this file.
1 
28 /* Only include this header file once. */
29 #ifndef _JOINTOBSERVATIONINTEGER_H_
30 #define _JOINTOBSERVATIONINTEGER_H_ 1
31 
32 /* the include directives */
33 
34 #include <iostream>
35 #include <vector>
36 #include "Globals.h"
37 #include "JointObservation.h"
38 #include "DiscreteEntity.h"
39 
41 
44  public DiscreteEntity
45 {
46  private:
47 
48 
49  protected:
50 
52  std::vector<Index> _m_oIndexVector;
54  std::vector<const ObservationDiscrete*> _m_opVector;
56  std::vector<Index> ConstructIndividualObservationDiscretesIndices() const;
57 
58  public:
59  // Constructor, destructor and copy assignment.
63  JointObservationDiscrete(Index index, std::vector<const ObservationDiscrete*> a);
68 
69  //operators:
70 
72 
76  void AddIndividualObservation(const ObservationDiscrete* a, Index agentI);
77 
78  //get (data) functions:
79 
81  const std::vector<const ObservationDiscrete*>&
83  { return _m_opVector;}
85  const std::vector<Index>& GetIndividualObservationDiscretesIndices() const
86  { return _m_oIndexVector; }
87 
90  { return new JointObservationDiscrete(*this); }
91 
92  //other
93  std::string SoftPrint() const;
94  std::string SoftPrintBrief() const;
95 };
96 
97 
98 #endif /* !_JOINTOBSERVATIONINTEGER_H_ */
99 
100 
101 // Local Variables: ***
102 // mode:c++ ***
103 // End: ***