What’s New in the Pulse Physiology Engine 4.4.0
×
SEArrhythmia.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#include "cdm/system/physiology/SECardiovascularSystem.h"
8
9// Keep enums in sync with appropriate schema/cdm/Physiology.proto file !!
10enum class eDefibrillate
11{
12 NoShock = 0,
13 Synchronized,
14 Unsynchronized
15};
16extern CDM_DECL const std::string& eDefibrillate_Name(eDefibrillate d);
17
18class CDM_DECL SEArrhythmia : public SEPatientAction
19{
20 friend class PBPatientAction;//friend the serialization class
21public:
22
23 SEArrhythmia(Logger* logger=nullptr);
24 virtual ~SEArrhythmia();
25
26 static constexpr char const* Name = "Arrhythmia";
27 std::string GetName() const override { return Name; }
28
29 void Clear() override;
30 void Copy(const SEArrhythmia& src, bool /*preserveState*/=false);
31
32 const SEScalar* GetScalar(const std::string& name) override;
33
34 bool IsValid() const override;
35 bool IsActive() const override;
36 void Deactivate() override;
37
38 virtual eDefibrillate GetDefibrillation() const;
39 virtual void SetDefibrillation(eDefibrillate d);
40
41 virtual eHeartRhythm GetRhythm() const;
42 virtual void SetRhythm(eHeartRhythm t);
43
44protected:
45 eDefibrillate m_Defibrillate;
46 eHeartRhythm m_Rhythm;
47};
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: SEArrhythmia.h:19
eDefibrillate m_Defibrillate
Definition: SEArrhythmia.h:45
eHeartRhythm m_Rhythm
Definition: SEArrhythmia.h:46
std::string GetName() const override
Definition: SEArrhythmia.h:27
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: SEScalar.h:19

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.