14 #include <biogears/exports.h>
16 #include <biogears/cdm/patient/actions/SEPupillaryResponse.h>
17 #include <biogears/cdm/properties/SEScalarFrequency.h>
18 #include <biogears/cdm/properties/SEScalarPressure.h>
19 #include <biogears/cdm/system/SESystem.h>
20 #include <biogears/schema/biogears/BioGearsPhysiology.hxx>
31 static constexpr
char const*
const TypeTag() {
return "SENervousSystem"; }
32 const char*
classname()
const override {
return TypeTag(); }
33 size_t hash_code()
const override {
return TypeHash(); }
35 void Clear()
override;
37 const SEScalar* GetScalar(
const char* name)
override;
38 const SEScalar* GetScalar(
const std::string& name)
override;
43 Tree<const char*> GetPhysiologyRequestGraph()
const override;
49 bool HasComplianceScale()
const;
51 double GetComplianceScale()
const;
53 bool HasHeartRateScale()
const;
55 double GetHeartRateScale()
const;
57 bool HasHeartElastanceScale()
const;
59 double GetHeartElastanceScale()
const;
61 bool HasResistanceScaleExtrasplanchnic()
const;
62 SEScalar& GetResistanceScaleExtrasplanchnic();
63 double GetResistanceScaleExtrasplanchnic()
const;
65 bool HasResistanceScaleMuscle()
const;
66 SEScalar& GetResistanceScaleMuscle();
67 double GetResistanceScaleMuscle()
const;
69 bool HasResistanceScaleMyocardium()
const;
70 SEScalar& GetResistanceScaleMyocardium();
71 double GetResistanceScaleMyocardium()
const;
73 bool HasResistanceScaleSplanchnic()
const;
74 SEScalar& GetResistanceScaleSplanchnic();
75 double GetResistanceScaleSplanchnic()
const;
77 bool HasLeftEyePupillaryResponse()
const;
80 void RemoveLeftEyePupillaryResponse();
82 bool HasPainVisualAnalogueScale()
const;
83 SEScalar& GetPainVisualAnalogueScale();
84 double GetPainVisualAnalogueScale()
const;
86 bool HasRichmondAgitationSedationScale()
const;
87 SEScalar& GetRichmondAgitationSedationScale();
88 double GetRichmondAgitationSedationScale()
const;
90 bool HasRightEyePupillaryResponse()
const;
93 void RemoveRightEyePupillaryResponse();
95 bool IsAsleep()
const;
97 double GetSleepTime(
const TimeUnit& unit)
const;
101 void InvalidateSleepState();
102 bool HasSleepState()
const;
104 bool IsAwake()
const;
106 double GetWakeTime(
const TimeUnit& unit)
const;
108 bool HasBiologicalDebt()
const;
110 double GetBiologicalDebt()
const;
112 bool HasReactionTime()
const;
114 double GetReactionTime(
const TimeUnit& unit)
const;
116 bool HasAttentionLapses()
const;
118 double GetAttentionLapses()
const;
SEScalarTime * m_WakeTime
Definition: SENervousSystem.h:132
Definition: SENervousSystem.h:25
Definition: SEScalar.h:33
static constexpr char const *const TypeTag()
Definition: SENervousSystem.h:31
SEScalar * m_BiologicalDebt
Definition: SENervousSystem.h:134
Definition: SEPupillaryResponse.h:23
SEScalar * m_ResistanceScaleExtrasplanchnic
Definition: SENervousSystem.h:127
CDM::enumSleepState::value m_SleepState
Definition: SENervousSystem.h:133
size_t hash_code() const override
Definition: SENervousSystem.h:33
SEPupillaryResponse * m_LeftEyePupillaryResponse
Definition: SENervousSystem.h:124
Definition: SESystem.h:27
SEScalar * m_HeartElastanceScale
Definition: SENervousSystem.h:123
static size_t TypeHash()
Definition: SENervousSystem.h:30
SEScalarTime * m_SleepTime
Definition: SENervousSystem.h:131
Definition: SEScalarTime.h:37
Definition: SEScalarTime.h:18
SEScalar * m_ResistanceScaleSplanchnic
Definition: SENervousSystem.h:130
SEScalar * m_HeartRateScale
Definition: SENervousSystem.h:122
SEScalar * m_AttentionLapses
Definition: SENervousSystem.h:136
SEScalar * m_ComplianceScale
Definition: SENervousSystem.h:121
SEScalar * m_RichmondAgitationSedationScale
Definition: SENervousSystem.h:141
Class corresponding to the NervousSystemData schema type.
Definition: Physiology.hxx:12058
SEPupillaryResponse * m_RightEyePupillaryResponse
Definition: SENervousSystem.h:125
const char * classname() const override
Definition: SENervousSystem.h:32
SEScalar * m_ResistanceScaleMuscle
Definition: SENervousSystem.h:128
value
Underlying enum type.
Definition: Physiology.hxx:11911
SEScalar * m_ResistanceScaleMyocardium
Definition: SENervousSystem.h:129
Definition: SEElectricalCircuit.h:18
SEScalarTime * m_ReactionTime
Definition: SENervousSystem.h:135
SEScalar * m_PainVisualAnalogueScale
Definition: SENervousSystem.h:126