1 #ifndef RMALTERNATIVE_SOLUTION_H 2 #define RMALTERNATIVE_SOLUTION_H 5 #include "MobileObject.h" 22 typedef QSharedPointer<RMAlternativeSolution> SpRMAlternativeSolution;
25 bool operator()(SpRMAlternativeSolution a1, SpRMAlternativeSolution a2);
32 std::deque<SpMobileObject> solution;
33 double alternativeProbability;
37 static int m_currentTrackingBlobsNumber;
46 bool incompleteAlternative;
48 bool comparedAlternative;
51 int alternativeNumber;
53 std::map<long int, std::set<SpMobileObject, orderedByBestCoherenceOperator> > newObjectsList;
54 std::set<SpRMAlternativeSolution, alternativesOrderedByBestProbabilityOperator> newAlternatives;
56 bool survivedToComparison;
63 std::deque<SpMobileObject>::iterator begin();
64 std::deque<SpMobileObject>::iterator end();
68 std::deque<SpMobileObject>::iterator erase(std::deque<SpMobileObject>::iterator element);
69 std::deque<SpMobileObject>::iterator erase(std::deque<SpMobileObject>::iterator first, std::deque<SpMobileObject>::iterator last);
71 SpMobileObject operator[](
int index);
74 void initUsedBlobsList();
75 void initInvolvedBlobs();
78 void insertNewMobileObject(SpMobileObject newMobileObject);
79 void insert(std::deque<SpMobileObject>::iterator pos, std::deque<SpMobileObject>::iterator f, std::deque<SpMobileObject>::iterator l);
82 double getProbability();
83 std::deque<SpMobileObject> *getSolution();
85 void setProbability(
double p);
86 void setAlternativeProbability();
88 friend std::ostream& operator<<(std::ostream&, SpRMAlternativeSolution);
Definition: RMAlternativeSolution.h:11
Definition: RMAlternativeSolution.h:29
Definition: RMAlternativeSolution.h:24