SEDrugSystem.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5#include "cdm/system/SESystem.h"
7
8class CDM_DECL SEDrugSystem : public SESystem
9{
10 friend class PBPhysiology;//friend the serialization class
11public:
12 SEDrugSystem(Logger* logger);
13 virtual ~SEDrugSystem();
14
15 void Clear() override;// Deletes all members
16
17 const SEScalar* GetScalar(const std::string& name) override;
18
19 virtual bool HasBronchodilationLevel() const;
20 virtual SEScalarNegative1To1& GetBronchodilationLevel();
21 virtual double GetBronchodilationLevel() const;
22
23 virtual bool HasHeartRateChange() const;
24 virtual SEScalarFrequency& GetHeartRateChange();
25 virtual double GetHeartRateChange(const FrequencyUnit& unit) const;
26
27 virtual bool HasMeanBloodPressureChange() const;
28 virtual SEScalarPressure& GetMeanBloodPressureChange();
29 virtual double GetMeanBloodPressureChange(const PressureUnit& unit) const;
30
31 virtual bool HasNeuromuscularBlockLevel() const;
32 virtual SEScalar0To1& GetNeuromuscularBlockLevel();
33 virtual double GetNeuromuscularBlockLevel() const;
34
35 virtual bool HasPulsePressureChange() const;
36 virtual SEScalarPressure& GetPulsePressureChange();
37 virtual double GetPulsePressureChange(const PressureUnit& unit) const;
38
39 virtual bool HasPupillaryResponse() const;
40 virtual SEPupillaryResponse& GetPupillaryResponse();
41 virtual const SEPupillaryResponse* GetPupillaryResponse() const;
42 virtual void RemovePupillaryResponse();
43
44 virtual bool HasRespirationRateChange() const;
45 virtual SEScalarFrequency& GetRespirationRateChange();
46 virtual double GetRespirationRateChange(const FrequencyUnit& unit) const;
47
48 virtual bool HasSedationLevel() const;
49 virtual SEScalar0To1& GetSedationLevel();
50 virtual double GetSedationLevel() const;
51
52 virtual bool HasTidalVolumeChange() const;
53 virtual SEScalarVolume& GetTidalVolumeChange();
54 virtual double GetTidalVolumeChange(const VolumeUnit& unit) const;
55
56 virtual bool HasTubularPermeabilityChange() const;
57 virtual SEScalarNegative1To1& GetTubularPermeabilityChange();
58 virtual double GetTubularPermeabilityChange() const;
59
60protected:
61
72};
Definition: SEScalarFrequency.h:8
Definition: Logger.h:71
Definition: PBPhysiology.h:24
Definition: SEScalarPressure.h:8
Definition: SEDrugSystem.h:9
SEScalarFrequency * m_HeartRateChange
Definition: SEDrugSystem.h:63
SEScalar0To1 * m_NeuromuscularBlockLevel
Definition: SEDrugSystem.h:65
SEScalarFrequency * m_RespirationRateChange
Definition: SEDrugSystem.h:68
SEScalarNegative1To1 * m_TubularPermeabilityChange
Definition: SEDrugSystem.h:71
SEScalar0To1 * m_SedationLevel
Definition: SEDrugSystem.h:69
SEScalarVolume * m_TidalVolumeChange
Definition: SEDrugSystem.h:70
SEScalarPressure * m_PulsePressureChange
Definition: SEDrugSystem.h:66
SEScalarPressure * m_MeanBloodPressureChange
Definition: SEDrugSystem.h:64
SEPupillaryResponse * m_PupillaryResponse
Definition: SEDrugSystem.h:67
SEScalarNegative1To1 * m_BronchodilationLevel
Definition: SEDrugSystem.h:62
Definition: SEPupillaryResponse.h:8
Definition: SEScalar0To1.h:8
Definition: SEScalarFrequency.h:26
Definition: SEScalar.h:19
Definition: SEScalarNegative1To1.h:8
Definition: SEScalarPressure.h:29
Definition: SEScalarVolume.h:28
Definition: SESystem.h:8
virtual const SEScalar * GetScalar(const std::string &name)=0
virtual void Clear()
Definition: SESystem.cpp:17
Definition: SEScalarVolume.h:8

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.