SETensionPneumothorax.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
8{
9 friend class PBPatientAction;//friend the serialization class
10public:
11
12 SETensionPneumothorax(Logger* logger=nullptr);
13 virtual ~SETensionPneumothorax();
14
15 static constexpr char const* Name = "Tension Pneumothorax";
16 std::string GetName() const override { return Name; }
17
18 void Clear() override;
19 void Copy(const SETensionPneumothorax& src, bool /*preserveState*/=false);
20
21 const SEScalar* GetScalar(const std::string& name) override;
22
23 bool IsValid() const override;
24 bool IsActive() const override;
25 void Deactivate() override;
26
27 virtual eGate GetType() const;
28 virtual void SetType(eGate name);
29 virtual bool HasType() const;
30 virtual void InvalidateType();
31
32 virtual eSide GetSide() const;
33 virtual void SetSide(eSide name);
34 virtual bool HasSide() const;
35 virtual void InvalidateSide();
36
37 virtual bool HasSeverity() const;
38 virtual SEScalar0To1& GetSeverity();
39 virtual double GetSeverity() const;
40
41protected:
42 eGate m_Type;
43 eSide m_Side;
45
46};
Definition: Logger.h:71
Definition: PBPatientActions.h:52
virtual const SEScalar * GetScalar(const std::string &name)=0
static SEAction * Copy(const SEAction &, const SESubstanceManager &)
Definition: SEAction.cpp:53
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
Definition: SETensionPneumothorax.h:8
eSide m_Side
Definition: SETensionPneumothorax.h:43
std::string GetName() const override
Definition: SETensionPneumothorax.h:16
SEScalar0To1 * m_Severity
Definition: SETensionPneumothorax.h:44
eGate m_Type
Definition: SETensionPneumothorax.h:42

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.