What’s New in the Pulse Physiology Engine 4.4.0
×
SEAirwayObstruction.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5#include "cdm/patient/actions/SEPatientAction.h"
6
7// Keep enums in sync with appropriate schema/cdm/PatientActionEnums.proto file !!
8enum class eAirwayObstruction_ResistanceType
9{
10 Constant = 0,
11 Oscillating = 1
12};
13extern CDM_DECL const std::string& eAirwayObstruction_ResistanceType_Name(eAirwayObstruction_ResistanceType c);
14
15class CDM_DECL SEAirwayObstruction : public SEPatientAction
16{
17 friend class PBPatientAction;//friend the serialization class
18public:
19
20 SEAirwayObstruction(Logger* logger=nullptr);
21 virtual ~SEAirwayObstruction();
22
23 static constexpr char const* Name = "Airway Obstruction";
24 std::string GetName() const override { return Name; }
25
26 void Clear() override;
27 void Copy(const SEAirwayObstruction& src, bool /*preserveState*/=false);
28
29 const SEScalar* GetScalar(const std::string& name) override;
30
31 bool IsValid() const override;
32 bool IsActive() const override;
33 void Deactivate() override;
34
35 virtual bool HasSeverity() const;
36 virtual SEScalar0To1& GetSeverity();
37 virtual double GetSeverity() const;
38
39 virtual eAirwayObstruction_ResistanceType GetResistanceType() const;
40 virtual void SetResistanceType(eAirwayObstruction_ResistanceType rt);
41
42protected:
44 eAirwayObstruction_ResistanceType m_ResistanceType;
45};
Definition: Logger.h:71
Definition: PBPatientActions.h:56
virtual const SEScalar * GetScalar(const std::string &name)=0
static SEAction * Copy(const SEAction &, const SESubstanceManager &)
Definition: SEAction.cpp:53
Definition: SEAirwayObstruction.h:16
SEScalar0To1 * m_Severity
Definition: SEAirwayObstruction.h:43
eAirwayObstruction_ResistanceType m_ResistanceType
Definition: SEAirwayObstruction.h:44
std::string GetName() const override
Definition: SEAirwayObstruction.h:24
Definition: SEPatientAction.h:8
void Deactivate() override
Definition: SEPatientAction.h:23
void Clear() override
Definition: SEPatientAction.h:18
bool IsValid() const override
Definition: SEPatientAction.h:19
bool IsActive() const override
Definition: SEPatientAction.h:22
Definition: SEScalar0To1.h:8
Definition: SEScalar.h:19

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.