SEPatientConfiguration.h
1 /* Distributed under the Apache License, Version 2.0.
2  See accompanying NOTICE file for details.*/
3 
4 #pragma once
6 class SEPatient;
9 
10 class CDM_DECL SEPatientConfiguration : public Loggable
11 {
12  friend class PBEngine;//friend the serialization class
13 public:
14  explicit SEPatientConfiguration(Logger* logger=nullptr);
15  virtual ~SEPatientConfiguration();
16 
19 
20  virtual void Clear(); //clear memory
21 
22  bool SerializeToString(std::string& output, eSerializationFormat m) const;
23  bool SerializeToFile(const std::string& filename) const;
24  bool SerializeFromString(const std::string& src, eSerializationFormat m, const SESubstanceManager& subMgr);
25  bool SerializeFromFile(const std::string& filename, const SESubstanceManager& subMgr);
26 
27  virtual bool IsValid()const;
28 
29  virtual std::string GetDataRoot() const;
30  virtual void SetDataRoot(const std::string& rootDir);
31 
32  virtual std::string GetPatientFile() const;
33  virtual void SetPatientFile(const std::string& patientFile);
34  virtual bool HasPatientFile() const;
35 
36  virtual SEPatient& GetPatient();
37  virtual const SEPatient* GetPatient() const;
38  virtual bool HasPatient() const;
39 
40  virtual SEConditionManager& GetConditions();
41  virtual const SEConditionManager* GetConditions() const;
42  virtual bool HasConditions() const;
43 
44 protected:
45  std::string m_DataRoot;
47  std::string m_PatientFile;
49 };
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:135
static bool SerializeFromFile(const std::string &filename, SEPatientConfiguration &dst, const SESubstanceManager &subMgr)
Definition: PBEngine.cpp:466
static bool SerializeToString(const LogMessages &src, std::string &output, eSerializationFormat m, Logger *logger)
Definition: PBEngine.cpp:163
static bool SerializeToFile(const SEPatientConfiguration &src, const std::string &filename)
Definition: PBEngine.cpp:452
Definition: SEConditionManager.h:26
Definition: SEEngineConfiguration.h:8
Definition: SEPatientConfiguration.h:11
SEPatient * m_Patient
Definition: SEPatientConfiguration.h:46
SEConditionManager * m_Conditions
Definition: SEPatientConfiguration.h:48
SEPatientConfiguration operator=(const SEPatientConfiguration &)=delete
SEPatientConfiguration(const SEPatientConfiguration &)=delete
std::string m_DataRoot
Definition: SEPatientConfiguration.h:45
std::string m_PatientFile
Definition: SEPatientConfiguration.h:47
Definition: SEPatient.h:13
Definition: SESubstanceManager.h:9

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.