← Documentation
ADS-IDAC Engine 5.0.0
EventSchemaBase.h
Go to the documentation of this file.
1#pragma once
2
3// EventSchemaBase.h: interface for the EventSchemaBase class.
4//
6#include "EventSchemaUnit.h"
7#include "Investigator.h"
8#include "InvestigatorLink.h"
10#include "IDElement.h"
11#include "SentenceUnit.h"
12
14public IDElement
15{
16public:
20 void UpdateTheBranchingHistory(void * _pt);
29 void PrintMessage(std::string str);
31 void SaveAllDiagnoseInvestigatorInforToFile(std::string _path);
38 void AddANewDiagnoseInvestigator(DiagnoseInvestigator * _diagnose_invest_pt);
39 void ErrorMessage(std::string);
41
44 float m_timing; // this timer is used for generating a new investigator
45
47 std::string m_ID_timed_DI;
48
49 std::vector<std::unique_ptr<EventSchemaUnit>> m_event_schema_list;
50 std::vector<std::unique_ptr<DiagnoseInvestigator>> m_diagnose_invest_list;
51 std::vector<std::string> m_debug_info;
52
53 std::vector<Investigator *> m_interested_invest_list;
54 std::vector<InvestigatorLink *> m_interested_invest_link_list;
55
56 std::vector<std::string> m_ID_interested_invest_list;
57 std::vector<std::string> m_ID_interested_invest_link_list;
58
59
61 virtual ~EventSchemaBase();
62
63};
EventSchemaUnit * FindACorrespondingEventSchemaUnitByKE(KnowledgeElement *_KE_pt)
float m_active_investigation_threshold
std::vector< InvestigatorLink * > m_interested_invest_link_list
std::vector< std::unique_ptr< EventSchemaUnit > > m_event_schema_list
DiagnoseInvestigator * m_timed_DI
void TrackTheOngoingInvestigation()
void UpdateTheBranchingHistory(void *_pt)
void RemoveAllTheCaseAssociatedWithAnInvestigator(IDElement *)
DiagnoseInvestigator * FindACorrespondingDiagnoseInvestigatorByKE(KnowledgeElement *_KE_pt)
SymptomInvestigator * FindSymtomInvestigatorByID(std::string)
std::vector< std::string > m_ID_interested_invest_list
DiagnoseInvestigator * FindDiagnoseInvestigatorByID(std::string)
virtual ~EventSchemaBase()
void ErrorMessage(std::string)
void BuildTheConnectionsForThisEventSchemaBase(void *)
void AddNewSymptomCaseWithNewInvestigatorIfNecessary(Investigator *_invest_pt)
void ConvertStaticESBinfoToString()
void PrintMessage(std::string str)
std::vector< std::string > m_ID_interested_invest_link_list
bool WhetherItIsNormalOperating()
bool GenerateANewInvestigatorOrNot()
std::string m_ID_timed_DI
void ReadEventSchemaBaseFromInputFile()
std::vector< std::unique_ptr< DiagnoseInvestigator > > m_diagnose_invest_list
std::vector< Investigator * > m_interested_invest_list
void AddANewDiagnoseInvestigator(DiagnoseInvestigator *_diagnose_invest_pt)
float m_diagnose_claim_threshold
void SaveAllDiagnoseInvestigatorInforToFile(std::string _path)
void CopyESBinfoFromAnother(EventSchemaBase *)
void UpdateTheInterestForInvestigatorOrInvestigatorLink()
EventSchemaUnit * FindEventSchemaUnitByID(std::string)
EventSymptomUnit * FindEventSymptomUnitByID(std::string)
std::vector< std::string > m_debug_info
void LinkNewInvestigatorToDiagnoseInvestigatorIfNecessary(Investigator *_invest_pt)