SEEngineInitialization.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
8
9class CDM_DECL SEEngineInitialization : public Loggable
10{
11 friend class PBEngine;//friend the serialization class
12public:
13 explicit SEEngineInitialization(Logger* logger=nullptr);
15
18
19 virtual void Copy(const SEEngineInitialization& from, const SESubstanceManager& subMgr);
20 virtual void Clear(); //clear memory
21
22 bool SerializeToString(std::string& output, eSerializationFormat m) const;
23 bool SerializeFromString(const std::string& src, eSerializationFormat m, const SESubstanceManager& subMgr);
24 static bool SerializeFromString(const std::string& src, std::vector<SEEngineInitialization*>& dst, eSerializationFormat m, const SESubstanceManager& subMgr);
25
26 virtual bool IsValid()const;
27
28 virtual int GetID() const;
29 virtual void SetID(int id);
30
31 virtual bool HasPatientConfiguration() const;
32 virtual SEPatientConfiguration& GetPatientConfiguration();
33 virtual const SEPatientConfiguration* GetPatientConfiguration() const;
34
35 virtual bool HasStateFilename() const;
36 virtual std::string GetStateFilename() const;
37 virtual void SetStateFilename(const std::string& filename);
38
39 virtual bool HasState() const;
40 virtual std::string GetState() const;
41 virtual void SetState(const std::string& s, eSerializationFormat fmt);
42 virtual eSerializationFormat GetStateFormat() const;
43
44 virtual bool HasDataRequestManager() const;
45 virtual SEDataRequestManager& GetDataRequestManager();
46 virtual const SEDataRequestManager* GetDataRequestManager() const;
47
48 virtual bool HasLogFilename() const;
49 virtual std::string GetLogFilename() const;
50 virtual void SetLogFilename(const std::string& filename);
51
52 virtual bool KeepLogMessages() const;
53 virtual void KeepLogMessages(bool b);
54
55 virtual bool KeepEventChanges() const;
56 virtual void KeepEventChanges(bool b);
57
58protected:
59 int m_ID;
61 std::string m_StateFilename;
62 std::string m_State;
63 eSerializationFormat m_StateFormat;
65 std::string m_LogFilename;
68};
Definition: Logger.h:23
Definition: Logger.h:71
Definition: PBEngine.h:31
static bool SerializeFromString(const std::string &src, LogMessages &dst, eSerializationFormat m, Logger *logger)
Definition: PBEngine.cpp:126
static void Copy(const SEDataRequest &src, SEDataRequest &dst)
Definition: PBEngine.cpp:484
static bool SerializeToString(const LogMessages &src, std::string &output, eSerializationFormat m, Logger *logger)
Definition: PBEngine.cpp:154
Definition: SEDataRequestManager.h:10
Definition: SEEngineInitialization.h:10
SEEngineInitialization operator=(const SEEngineInitialization &)=delete
bool m_KeepEventChanges
Definition: SEEngineInitialization.h:67
SEDataRequestManager * m_DataRequestManager
Definition: SEEngineInitialization.h:64
eSerializationFormat m_StateFormat
Definition: SEEngineInitialization.h:63
std::string m_LogFilename
Definition: SEEngineInitialization.h:65
bool m_KeepLogMessages
Definition: SEEngineInitialization.h:66
SEEngineInitialization(const SEEngineInitialization &)=delete
SEPatientConfiguration * m_PatientConfiguration
Definition: SEEngineInitialization.h:60
std::string m_State
Definition: SEEngineInitialization.h:62
int m_ID
Definition: SEEngineInitialization.h:59
std::string m_StateFilename
Definition: SEEngineInitialization.h:61
Definition: SEPatientConfiguration.h:11
Definition: SESubstanceManager.h:9

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.