virtual ~SymptomInvestigator()
void RemoveADeterminedCaseFromCandiateList(SymptomCase *_case_pt)
float m_last_case_end_time
std::vector< std::unique_ptr< SymptomCase > > m_voided_case_list
std::vector< std::unique_ptr< SymptomCase > > m_partial_consistant_case_list
void PrintMessage(std::string str)
void CopySymptomInvestigatorInfoFromAnother(SymptomInvestigator *)
EventSymptomUnit * m_event_symptom_pt
void TrackOneInvestigationCase(SymptomCase *_case_pt)
std::vector< Investigator * > m_ongoing_invest_list
KnowledgeElement * m_symptom_KE_pt
std::vector< InvestigatorLink * > m_ongoing_invest_link_list
std::string m_opposite_KE_ID
std::vector< std::unique_ptr< SymptomCase > > m_candidate_case_list
std::vector< std::unique_ptr< SymptomCase > > m_exception_case_list
std::vector< std::unique_ptr< SymptomCase > > m_inconsistant_case_list
void MoveCaseFromCandidateTo(SymptomCase *_case_pt, std::vector< std::unique_ptr< SymptomCase > > &_target)
float m_independent_symptom_probability
bool m_need_to_invest_opposite_bl
bool m_can_not_explain_opposite_bl
std::vector< std::string > m_ID_ongoing_invest_link_list
void SITrackTheOngoingInvestigation()
IDElement * m_label_ID_pt
KnowledgeElement * m_opposite_KE_pt
void InitiationOfthisSymptomInvestigator()
float GetTheLastRejectionTime()
void ErrorMessage(std::string)
float GetLastConfirmationTime()
std::vector< std::unique_ptr< SymptomCase > > m_rejected_case_list
std::vector< std::unique_ptr< SymptomCase > > m_confirmed_case_list
void BuildConnectionsForThisSymptomInvestigator(void *)
KnowledgeUnit * CheckAKnowledgeUnitInTheList(KnowledgeUnit *_KU_pt)
std::vector< std::unique_ptr< SymptomCase > > m_discarded_case_list
void InitiallyCompareAnInvestigationTraceWithThePrototype(SymptomCase *)
void BoostTheActivationOfOngoingInvestigation()
SymptomCase * FindASymptomCaseByInvestigator(Investigator *_invest_pt)
std::vector< std::string > m_ID_ongoing_invest_list