AssignmentSet.h
Go to the documentation of this file.
00001 /*
00002  * AssignmentSet.h
00003  *
00004  *  Created on: Jul 29, 2011
00005  *      Author: sdries
00006  */
00007 
00008 #ifndef ASSIGNMENTSET_H_
00009 #define ASSIGNMENTSET_H_
00010 
00011 #include <list>
00012 #include <vector>
00013 #include <map>
00014 
00015 namespace mhf {
00016 
00017 class Assignment;
00018 class Hypothesis;
00019 class AssignmentMatrix;
00020 class SemanticObject;
00021 
00022 class AssignmentSet {
00023 
00024 public:
00025 
00026     AssignmentSet(Hypothesis* hyp, AssignmentMatrix* assignment_matrix);
00027 
00028     AssignmentSet(const AssignmentSet& orig);
00029 
00030     virtual ~AssignmentSet();
00031 
00032     void init();
00033 
00034     void expand(std::list<AssignmentSet*>& children) const;
00035 
00036     bool allMeasurementsAssigned() const;
00037 
00038     bool allObjectsAssigned() const;
00039 
00040     AssignmentSet* constructNextBest() const;
00041 
00042     const Assignment& getMeasurementAssignment(unsigned int i_ev) const;
00043 
00044     void getAllAssignments(std::list<const Assignment*>& assignments) const;
00045 
00046     double getProbability() const;
00047 
00048     Hypothesis* getHypothesis() const;
00049 
00050     int getNumMeasurements() const;
00051 
00052     bool isValid() const;
00053 
00054     void print() const;
00055 
00056 protected:
00057 
00058     Hypothesis* hyp_;
00059 
00060     AssignmentMatrix* assignment_matrix_;
00061 
00062     double probability_;
00063 
00064     std::vector<unsigned int> evidence_assignments_;
00065 
00066     int n_blocked_;
00067 
00068 };
00069 
00070 }
00071 
00072 #endif /* ASSIGNMENTSET_H_ */


wire_core
Author(s): Sjoerd van den Dries, Jos Elfring
autogenerated on Tue Jan 7 2014 11:43:19