6 #include "engine/CommonDefs.h"
7 #include "engine/common/controller/Controller.h"
8 #include "cdm/system/physiology/SEBloodChemistrySystem.h"
9 #include "cdm/system/physiology/SECardiovascularSystem.h"
10 #include "cdm/system/physiology/SEDrugSystem.h"
11 #include "cdm/system/physiology/SEEndocrineSystem.h"
12 #include "cdm/system/physiology/SEEnergySystem.h"
13 #include "cdm/system/physiology/SEGastrointestinalSystem.h"
14 #include "cdm/system/physiology/SEHepaticSystem.h"
15 #include "cdm/system/physiology/SENervousSystem.h"
16 #include "cdm/system/physiology/SERenalSystem.h"
17 #include "cdm/system/physiology/SERespiratorySystem.h"
18 #include "cdm/system/physiology/SETissueSystem.h"
19 #include "cdm/system/environment/SEEnvironment.h"
20 #include "cdm/system/equipment/anesthesia_machine/SEAnesthesiaMachine.h"
21 #include "cdm/system/equipment/bag_valve_mask/SEBagValveMask.h"
22 #include "cdm/system/equipment/ecmo/SEECMO.h"
23 #include "cdm/system/equipment/electrocardiogram/SEElectroCardioGram.h"
24 #include "cdm/system/equipment/inhaler/SEInhaler.h"
25 #include "cdm/system/equipment/mechanical_ventilator/SEMechanicalVentilator.h"
26 #include "cdm/properties/SEScalarVolumePerPressure.h"
27 #include "cdm/properties/SEScalarPressureTimePerVolume.h"
42 virtual ~BloodChemistrySystem() =
default;
49 virtual const SEScalar* GetScalar(
const std::string& name)
override
59 virtual void ComputeExposedModelParameters()=0;
68 virtual ~CardiovascularSystem() =
default;
75 virtual const SEScalar* GetScalar(
const std::string & name)
override
85 virtual void ComputeExposedModelParameters() = 0;
94 virtual ~DrugSystem() =
default;
101 virtual const SEScalar* GetScalar(
const std::string & name)
override
111 virtual void ComputeExposedModelParameters() = 0;
120 virtual ~EndocrineSystem() =
default;
122 void Clear()
override
127 virtual const SEScalar* GetScalar(
const std::string & name)
override
137 virtual void ComputeExposedModelParameters() = 0;
146 virtual ~EnergySystem() =
default;
148 void Clear()
override
153 virtual const SEScalar* GetScalar(
const std::string & name)
override
163 virtual void ComputeExposedModelParameters() = 0;
172 virtual ~GastrointestinalSystem() =
default;
174 void Clear()
override
179 virtual const SEScalar* GetScalar(
const std::string & name)
override
189 virtual void ComputeExposedModelParameters() = 0;
198 virtual ~HepaticSystem() =
default;
200 void Clear()
override
205 virtual const SEScalar* GetScalar(
const std::string & name)
override
215 virtual void ComputeExposedModelParameters() = 0;
224 virtual ~NervousSystem() =
default;
226 void Clear()
override
231 virtual const SEScalar* GetScalar(
const std::string & name)
override
241 virtual void ComputeExposedModelParameters() = 0;
250 virtual ~RenalSystem() =
default;
252 void Clear()
override
257 virtual const SEScalar* GetScalar(
const std::string & name)
override
267 virtual void ComputeExposedModelParameters() = 0;
276 virtual ~RespiratorySystem() =
default;
278 void Clear()
override
281 m_TotalRespiratoryModelCompliance.Invalidate();
282 m_TotalRespiratoryModelInspiratoryResistance.Invalidate();
283 m_TotalRespiratoryModelExpiratoryResistance.Invalidate();
286 virtual const SEScalar* GetScalar(
const std::string & name)
override
292 if (name.compare(
"TotalRespiratoryModelCompliance") == 0)
293 return &m_TotalRespiratoryModelCompliance;
294 if (name.compare(
"TotalRespiratoryModelInspiratoryResistance") == 0)
295 return &m_TotalRespiratoryModelInspiratoryResistance;
296 if (name.compare(
"TotalRespiratoryModelExpiratoryResistance") == 0)
297 return &m_TotalRespiratoryModelExpiratoryResistance;
300 virtual void ComputeExposedModelParameters() = 0;
302 DEFINE_UNIT_SCALAR(TotalRespiratoryModelCompliance, VolumePerPressure);
303 DEFINE_UNIT_SCALAR(TotalRespiratoryModelInspiratoryResistance, PressureTimePerVolume);
304 DEFINE_UNIT_SCALAR(TotalRespiratoryModelExpiratoryResistance, PressureTimePerVolume);
311 virtual ~TissueSystem() =
default;
313 void Clear()
override
318 virtual const SEScalar* GetScalar(
const std::string & name)
override
328 virtual void ComputeExposedModelParameters() = 0;
337 virtual ~EnvironmentSystem() =
default;
339 void Clear()
override
344 virtual const SEScalar* GetScalar(
const std::string & name)
override
354 virtual void ComputeExposedModelParameters() = 0;
363 virtual ~AnesthesiaMachineSystem() =
default;
365 void Clear()
override
370 virtual const SEScalar* GetScalar(
const std::string & name)
override
380 virtual void ComputeExposedModelParameters() = 0;
389 virtual ~BagValveMaskSystem() =
default;
391 void Clear()
override
396 virtual const SEScalar* GetScalar(
const std::string& name)
override
406 virtual void ComputeExposedModelParameters() = 0;
411 class PULSE_DECL ECMOSystem :
public SEECMO
415 virtual ~ECMOSystem() =
default;
417 void Clear()
override
422 virtual const SEScalar* GetScalar(
const std::string & name)
override
432 virtual void ComputeExposedModelParameters() = 0;
441 virtual ~ElectroCardioGramSystem() =
default;
443 void Clear()
override
448 virtual const SEScalar* GetScalar(
const std::string & name)
override
458 virtual void ComputeExposedModelParameters() = 0;
463 class PULSE_DECL InhalerSystem :
public SEInhaler
467 virtual ~InhalerSystem() =
default;
469 void Clear()
override
474 virtual const SEScalar* GetScalar(
const std::string & name)
override
484 virtual void ComputeExposedModelParameters() = 0;
493 virtual ~MechanicalVentilatorSystem() =
default;
495 void Clear()
override
500 virtual const SEScalar* GetScalar(
const std::string & name)
override
510 virtual void ComputeExposedModelParameters() = 0;
Definition: SEAnesthesiaMachine.h:24
const SEScalar * GetScalar(const std::string &name) override
Definition: SEAnesthesiaMachine.cpp:137
void Clear() override
Definition: SEAnesthesiaMachine.cpp:57
Definition: SEBagValveMask.h:14
const SEScalar * GetScalar(const std::string &name) override
Definition: SEBagValveMask.cpp:184
void Clear() override
Definition: SEBagValveMask.cpp:59
Definition: SEBloodChemistrySystem.h:10
const SEScalar * GetScalar(const std::string &name) override
A reflextion type call that will return the Scalar associated with the string. ex....
Definition: SEBloodChemistrySystem.cpp:143
void Clear() override
Deletes all members.
Definition: SEBloodChemistrySystem.cpp:101
Definition: SECardiovascularSystem.h:24
const SEScalar * GetScalar(const std::string &name) override
Definition: SECardiovascularSystem.cpp:152
void Clear() override
Definition: SECardiovascularSystem.cpp:108
Definition: SEDrugSystem.h:9
void Clear() override
Definition: SEDrugSystem.cpp:43
const SEScalar * GetScalar(const std::string &name) override
Definition: SEDrugSystem.cpp:60
void Clear() override
Definition: SEECMO.cpp:18
const SEScalar * GetScalar(const std::string &name) override
Definition: SEECMO.cpp:34
Definition: SEElectroCardioGram.h:9
const SEScalar * GetScalar(const std::string &name) override
Definition: SEElectroCardioGram.cpp:87
void Clear() override
Definition: SEElectroCardioGram.cpp:44
Definition: SEEndocrineSystem.h:8
const SEScalar * GetScalar(const std::string &name) override
Definition: SEEndocrineSystem.cpp:24
void Clear() override
Definition: SEEndocrineSystem.cpp:18
Definition: SEEnergySystem.h:8
void Clear() override
Definition: SEEnergySystem.cpp:46
const SEScalar * GetScalar(const std::string &name) override
Definition: SEEnergySystem.cpp:63
Definition: SEEnvironment.h:13
void Clear() override
Definition: SEEnvironment.cpp:53
const SEScalar * GetScalar(const std::string &name) override
Definition: SEEnvironment.cpp:75
Definition: SEGastrointestinalSystem.h:9
const SEScalar * GetScalar(const std::string &name) override
Definition: SEGastrointestinalSystem.cpp:33
void Clear() override
Definition: SEGastrointestinalSystem.cpp:24
Definition: SEHepaticSystem.h:8
const SEScalar * GetScalar(const std::string &name) override
Definition: SEHepaticSystem.cpp:23
void Clear() override
Definition: SEHepaticSystem.cpp:17
Definition: SEInhaler.h:12
const SEScalar * GetScalar(const std::string &name) override
Definition: SEInhaler.cpp:63
void Clear() override
Definition: SEInhaler.cpp:35
Definition: SEMechanicalVentilator.h:10
void Clear() override
Definition: SEMechanicalVentilator.cpp:84
const SEScalar * GetScalar(const std::string &name) override
Definition: SEMechanicalVentilator.cpp:161
Definition: SENervousSystem.h:9
void Clear() override
Definition: SENervousSystem.cpp:39
const SEScalar * GetScalar(const std::string &name) override
Definition: SENervousSystem.cpp:56
Definition: SERenalSystem.h:8
void Clear() override
Definition: SERenalSystem.cpp:146
const SEScalar * GetScalar(const std::string &name) override
Definition: SERenalSystem.cpp:210
Definition: SERespiratorySystem.h:25
void Clear() override
Definition: SERespiratorySystem.cpp:180
const SEScalar * GetScalar(const std::string &name) override
Definition: SERespiratorySystem.cpp:252
Definition: SEScalar.h:19
Definition: SETissueSystem.h:8
const SEScalar * GetScalar(const std::string &name) override
Definition: SETissueSystem.cpp:46
void Clear() override
Definition: SETissueSystem.cpp:33