VAT  3.0
Video Analysis Tool
ModelInterface.h
1 #ifndef _MODEL_INTERFACE_H_
2 #define _MODEL_INTERFACE_H_
3 
4 #include "blob.h"
5 #include "GaussianFunction.h"
6 #include <QDomNode>
7 
8 class Datapool;
9 class ModelInterface;
10 class SceneModel;
11 
12 typedef QSharedPointer<ModelInterface> SpModelInterface;
13 
14 class Criterion {
15  public:
16  Criterion();
17  ~Criterion();
18  SpGaussianFunction spFunction;
19  double score;
20  double reliability;
21 };
22 
24 
25  public :
26  bool velocity_defined;
27  bool IsRigid;
28  std::map<QString, Criterion> m_mapCriteria;
29  std::map<ObjectSubtype, SpModelInterface > m_mapPostures;
30 
32  ModelInterface(Datapool *i_data);
33  ~ModelInterface();
34 
35  //bool hasCriterion(const QString& i_criterionName);
36  //double getMinForCriterion(const QString& i_criterionName);
37  //double getMaxForCriterion(const QString& i_criterionName);
38  //double getMeanForCriterion(const QString& i_criterionName);
39 
40  double computeScore(Blob *i_blob, SceneModel *smodel);
41 
42  //double computeScoreForCriterion(Blob *i_blob, SceneModel *smodel, const std::string& i_criterionName);
43 
44 
45  void computeCriteriaScores(Blob *blob, SceneModel *smodel);
46 
47  void computeReliabilities(Blob *blob, SceneModel *smodel);
48 
49  void setParameters(QDomNode &i_parameters);
50 
51  void addSubModel(ObjectSubtype i_subType, SpModelInterface i_spModel);
52 
53  protected:
54  Datapool *m_data;
55 };
56 
57 
58 #endif
59 
60 
Definition: ModelInterface.h:23
Definition: calibration.h:51
Definition: ModelInterface.h:14
An object of this class is instantiated at main code, and this object is used by every class to push ...
Definition: Datapool.h:39
Definition: blob.h:79