What’s New in the Pulse Physiology Engine 4.4.0
×
SEBloodChemistrySystem.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"
6
9class CDM_DECL SEBloodChemistrySystem : public SESystem
10{
11 friend class PBPhysiology;//friend the serialization class
12public:
13
16
17 void Clear() override;
19 const SEScalar* GetScalar(const std::string& name) override;
25 virtual bool HasArterialOxygenContent() const;
27 virtual SEScalar& GetArterialOxygenContent();
28 virtual double GetArterialOxygenContent() const;
30
35 virtual bool HasArteriovenousOxygenDifference() const;
37 virtual SEScalar& GetArteriovenousOxygenDifference();
38 virtual double GetArteriovenousOxygenDifference() const;
40
45 virtual bool HasBaseExcess() const;
47 virtual SEScalarAmountPerVolume& GetBaseExcess();
48 virtual double GetBaseExcess(const AmountPerVolumeUnit& unit) const;
50//@{ @copybrief Physiology_BloodChemistrySystemData_BloodDensity
52 virtual bool HasBloodDensity() const;
53 virtual SEScalarMassPerVolume& GetBloodDensity();
54 virtual double GetBloodDensity(const MassPerVolumeUnit& unit) const; //@}
55
60 virtual bool HasBloodPH() const;
62 virtual SEScalar& GetBloodPH();
63 virtual double GetBloodPH() const;
65
70 virtual bool HasBloodSpecificHeat() const;
72 virtual SEScalarHeatCapacitancePerMass& GetBloodSpecificHeat();
73 virtual double GetBloodSpecificHeat(const HeatCapacitancePerMassUnit& unit) const;
75
80 virtual bool HasBloodUreaNitrogenConcentration() const;
82 virtual SEScalarMassPerVolume& GetBloodUreaNitrogenConcentration();
83 virtual double GetBloodUreaNitrogenConcentration(const MassPerVolumeUnit& unit) const;
85
90 virtual bool HasCarbonDioxideSaturation() const;
92 virtual SEScalar0To1& GetCarbonDioxideSaturation();
93 virtual double GetCarbonDioxideSaturation() const;
95
100 virtual bool HasCarbonMonoxideSaturation() const;
102 virtual SEScalar0To1& GetCarbonMonoxideSaturation();
103 virtual double GetCarbonMonoxideSaturation() const;
105
110 virtual bool HasClinicalShuntFraction() const;
112 virtual SEScalar0To1& GetClinicalShuntFraction();
113 virtual double GetClinicalShuntFraction() const;
115
120 virtual bool HasHematocrit() const;
122 virtual SEScalar0To1& GetHematocrit();
123 virtual double GetHematocrit() const;
125
130 virtual bool HasHemoglobinContent() const;
132 virtual SEScalarMass& GetHemoglobinContent();
133 virtual double GetHemoglobinContent(const MassUnit& unit) const;
135
140 virtual bool HasMixedVenousOxygenContent() const;
142 virtual SEScalar& GetMixedVenousOxygenContent();
143 virtual double GetMixedVenousOxygenContent() const;
145
150 virtual bool HasClinicalOxygenConsumption() const;
152 virtual SEScalarVolumePerTime& GetClinicalOxygenConsumption();
153 virtual double GetClinicalOxygenConsumption(const VolumePerTimeUnit& unit) const;
155
160 virtual bool HasOxygenDelivery() const;
162 virtual SEScalarVolumePerTime& GetOxygenDelivery();
163 virtual double GetOxygenDelivery(const VolumePerTimeUnit& unit) const;
165
170 virtual bool HasOxygenDeliveryToOxygenConsumptionRatio() const;
172 virtual SEScalar& GetOxygenDeliveryToOxygenConsumptionRatio();
173 virtual double GetOxygenDeliveryToOxygenConsumptionRatio() const;
175
180 virtual bool HasOxygenSaturation() const;
182 virtual SEScalar0To1& GetOxygenSaturation();
183 virtual double GetOxygenSaturation() const;
185
190 virtual bool HasPhosphate() const;
192 virtual SEScalarAmountPerVolume& GetPhosphate();
193 virtual double GetPhosphate(const AmountPerVolumeUnit& unit) const;
195
196 virtual bool HasPlasmaOsmolality() const;
197 virtual SEScalarOsmolality& GetPlasmaOsmolality();
198 virtual double GetPlasmaOsmolality(const OsmolalityUnit& unit) const;
199
200 virtual bool HasPlasmaOsmolarity() const;
201 virtual SEScalarOsmolarity& GetPlasmaOsmolarity();
202 virtual double GetPlasmaOsmolarity(const OsmolarityUnit& unit) const;
203
208 virtual bool HasPlasmaVolume() const;
210 virtual SEScalarVolume& GetPlasmaVolume();
211 virtual double GetPlasmaVolume(const VolumeUnit& unit) const;
213
218 virtual bool HasPulseOximetry() const;
220 virtual SEScalar0To1& GetPulseOximetry();
221 virtual double GetPulseOximetry() const;
223
228 virtual bool HasRedBloodCellCount() const;
230 virtual SEScalarAmountPerVolume& GetRedBloodCellCount();
231 virtual double GetRedBloodCellCount(const AmountPerVolumeUnit& unit) const;
233
238 virtual bool HasStrongIonDifference() const;
240 virtual SEScalarAmountPerVolume& GetStrongIonDifference();
241 virtual double GetStrongIonDifference(const AmountPerVolumeUnit& unit) const;
243
248 virtual bool HasAnatomicShuntFraction() const;
250 virtual SEScalar0To1& GetAnatomicShuntFraction();
251 virtual double GetAnatomicShuntFraction() const;
253
258 virtual bool HasTotalProteinConcentration() const;
260 virtual SEScalarMassPerVolume& GetTotalProteinConcentration();
261 virtual double GetTotalProteinConcentration(const MassPerVolumeUnit& unit) const;
263
268 virtual bool HasVolumeFractionNeutralPhospholipidInPlasma() const;
270 virtual SEScalar0To1& GetVolumeFractionNeutralPhospholipidInPlasma();
271 virtual double GetVolumeFractionNeutralPhospholipidInPlasma() const;
273
278 virtual bool HasVolumeFractionNeutralLipidInPlasma() const;
280 virtual SEScalar0To1& GetVolumeFractionNeutralLipidInPlasma();
281 virtual double GetVolumeFractionNeutralLipidInPlasma() const;
283
288 virtual bool HasWhiteBloodCellCount() const;
290 virtual SEScalarAmountPerVolume& GetWhiteBloodCellCount();
291 virtual double GetWhiteBloodCellCount(const AmountPerVolumeUnit& unit) const;
293
298 virtual bool HasArterialCarbonDioxidePressure() const;
300 virtual SEScalarPressure& GetArterialCarbonDioxidePressure();
301 virtual double GetArterialCarbonDioxidePressure(const PressureUnit& unit) const;
303
308 virtual bool HasArterialOxygenPressure() const;
310 virtual SEScalarPressure& GetArterialOxygenPressure();
311 virtual double GetArterialOxygenPressure(const PressureUnit& unit) const;
313
318 virtual bool HasPulmonaryArterialCarbonDioxidePressure() const;
320 virtual SEScalarPressure& GetPulmonaryArterialCarbonDioxidePressure();
321 virtual double GetPulmonaryArterialCarbonDioxidePressure(const PressureUnit& unit) const;
323
328 virtual bool HasPulmonaryArterialOxygenPressure() const;
330 virtual SEScalarPressure& GetPulmonaryArterialOxygenPressure();
331 virtual double GetPulmonaryArterialOxygenPressure(const PressureUnit& unit) const;
333
338 virtual bool HasPulmonaryVenousCarbonDioxidePressure() const;
340 virtual SEScalarPressure& GetPulmonaryVenousCarbonDioxidePressure();
341 virtual double GetPulmonaryVenousCarbonDioxidePressure(const PressureUnit& unit) const;
343
348 virtual bool HasPulmonaryVenousOxygenPressure() const;
350 virtual SEScalarPressure& GetPulmonaryVenousOxygenPressure();
351 virtual double GetPulmonaryVenousOxygenPressure(const PressureUnit& unit) const;
353
358 virtual bool HasVenousCarbonDioxidePressure() const;
360 virtual SEScalarPressure& GetVenousCarbonDioxidePressure();
361 virtual double GetVenousCarbonDioxidePressure(const PressureUnit& unit) const;
363
367 virtual bool HasVenousOxygenPressure() const;
369 virtual SEScalarPressure& GetVenousOxygenPressure();
370 virtual double GetVenousOxygenPressure(const PressureUnit& unit) const;
372
373
374protected:
404
413};
Definition: SEScalarAmountPerVolume.h:8
Definition: SEScalarHeatCapacitancePerMass.h:8
Definition: Logger.h:71
Definition: SEScalarMassPerVolume.h:8
Definition: SEScalarMass.h:8
Definition: SEScalarOsmolality.h:8
Definition: SEScalarOsmolarity.h:8
Definition: PBPhysiology.h:25
Definition: SEScalarPressure.h:8
Definition: SEBloodChemistrySystem.h:10
SEScalar * m_OxygenDeliveryToOxygenConsumptionRatio
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:390
SEScalarPressure * m_PulmonaryVenousOxygenPressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:410
SEScalar0To1 * m_CarbonMonoxideSaturation
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:383
SEScalar0To1 * m_Hematocrit
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:385
SEScalarPressure * m_ArterialOxygenPressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:406
SEScalar0To1 * m_CarbonDioxideSaturation
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:382
SEScalarMassPerVolume * m_BloodUreaNitrogenConcentration
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:381
SEScalar * m_BloodPH
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:379
SEScalarPressure * m_VenousCarbonDioxidePressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:411
SEScalar * m_ArteriovenousOxygenDifference
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:376
SEScalar0To1 * m_PulseOximetry
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:396
SEScalarMassPerVolume * m_BloodDensity
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:378
SEScalar0To1 * m_AnatomicShuntFraction
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:398
SEScalar0To1 * m_VolumeFractionNeutralPhospholipidInPlasma
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:401
SEScalar * m_ArterialOxygenContent
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:375
SEScalar0To1 * m_OxygenSaturation
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:391
SEScalarPressure * m_PulmonaryArterialOxygenPressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:408
SEScalar * m_MixedVenousOxygenContent
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:387
SEScalarOsmolarity * m_PlasmaOsmolarity
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:394
SEScalarAmountPerVolume * m_RedBloodCellCount
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:397
SEScalarMassPerVolume * m_TotalProteinConcentration
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:400
SEScalar0To1 * m_ClinicalShuntFraction
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:384
SEScalarPressure * m_PulmonaryArterialCarbonDioxidePressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:407
SEScalar0To1 * m_VolumeFractionNeutralLipidInPlasma
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:402
SEScalarAmountPerVolume * m_Phosphate
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:392
SEScalarAmountPerVolume * m_WhiteBloodCellCount
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:403
SEScalarHeatCapacitancePerMass * m_BloodSpecificHeat
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:380
SEScalarAmountPerVolume * m_StrongIonDifference
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:399
SEScalarMass * m_HemoglobinContent
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:386
SEScalarPressure * m_ArterialCarbonDioxidePressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:405
SEScalarPressure * m_PulmonaryVenousCarbonDioxidePressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:409
SEScalarVolumePerTime * m_OxygenDelivery
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:389
SEScalarVolumePerTime * m_ClinicalOxygenConsumption
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:388
SEScalarPressure * m_VenousOxygenPressure
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:412
SEScalarOsmolality * m_PlasmaOsmolality
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:393
SEScalarVolume * m_PlasmaVolume
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:395
SEScalarAmountPerVolume * m_BaseExcess
Test if member has been allocated
Definition: SEBloodChemistrySystem.h:377
Definition: SEScalar0To1.h:8
Definition: SEScalarAmountPerVolume.h:35
Definition: SEScalarHeatCapacitancePerMass.h:27
Definition: SEScalar.h:19
Definition: SEScalarMass.h:28
Definition: SEScalarMassPerVolume.h:37
Definition: SEScalarOsmolality.h:25
Definition: SEScalarOsmolarity.h:25
Definition: SEScalarPressure.h:29
Definition: SEScalarVolume.h:28
Definition: SEScalarVolumePerTime.h:32
Definition: SESystem.h:8
virtual const SEScalar * GetScalar(const std::string &name)=0
virtual void Clear()
Definition: SESystem.cpp:17
Definition: SEScalarVolumePerTime.h:8
Definition: SEScalarVolume.h:8

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.