SEComprehensiveMetabolicPanel.h
1 /**************************************************************************************
2 Copyright 2015 Applied Research Associates, Inc.
3 Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 this file except in compliance with the License. You may obtain a copy of the License
5 at:
6 http://www.apache.org/licenses/LICENSE-2.0
7 Unless required by applicable law or agreed to in writing, software distributed under
8 the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
9 CONDITIONS OF ANY KIND, either express or implied. See the License for the
10 specific language governing permissions and limitations under the License.
11 **************************************************************************************/
12 
13 #pragma once
14 #include <biogears/cdm/patient/assessments/SEPatientAssessment.h>
15 #include <biogears/schema/cdm/PatientAssessments.hxx>
16 
17 namespace biogears {
18 class SEBloodChemistrySystem;
19 class SEScalarMassPerVolume;
20 class SEScalarAmountPerVolume;
21 
23 public:
26 
27  static constexpr const char* TypeTag() { return "SEComprehensiveMetabolicPanel"; };
28  const char* classname() const override { return TypeTag(); }
29 
30  virtual void Reset(); //reset values
31  virtual void Clear(); //clear memory
32 
33  virtual bool Load(const CDM::ComprehensiveMetabolicPanelData& in);
34  virtual CDM::ComprehensiveMetabolicPanelData* Unload();
35 
36 protected:
37  virtual void Unload(CDM::ComprehensiveMetabolicPanelData& data);
38 
39 public:
40  bool HasAlbumin();
41  SEScalarMassPerVolume& GetAlbumin();
42 
43  bool HasALP();
44  SEScalarMassPerVolume& GetALP();
45 
46  bool HasALT();
47  SEScalarMassPerVolume& GetALT();
48 
49  bool HasAST();
50  SEScalarMassPerVolume& GetAST();
51 
52  bool HasBUN();
53  SEScalarMassPerVolume& GetBUN();
54 
55  bool HasCalcium();
56  SEScalarMassPerVolume& GetCalcium();
57 
58  bool HasChloride();
59  SEScalarAmountPerVolume& GetChloride();
60 
61  bool HasCO2();
62  SEScalarAmountPerVolume& GetCO2();
63 
64  bool HasCreatinine();
65  SEScalarMassPerVolume& GetCreatinine();
66 
67  bool HasGlucose();
68  SEScalarMassPerVolume& GetGlucose();
69 
70  bool HasPotassium();
71  SEScalarAmountPerVolume& GetPotassium();
72 
73  bool HasSodium();
74  SEScalarAmountPerVolume& GetSodium();
75 
76  bool HasTotalBilirubin();
77  SEScalarMassPerVolume& GetTotalBilirubin();
78 
79  bool HasTotalProtein();
80  SEScalarMassPerVolume& GetTotalProtein();
81 
82 protected:
97 };
98 }
SEScalarMassPerVolume * m_ALP
Definition: SEComprehensiveMetabolicPanel.h:84
SEScalarAmountPerVolume * m_Sodium
Definition: SEComprehensiveMetabolicPanel.h:94
SEScalarAmountPerVolume * m_CO2
Definition: SEComprehensiveMetabolicPanel.h:90
const char * classname() const override
Definition: SEComprehensiveMetabolicPanel.h:28
Class corresponding to the ComprehensiveMetabolicPanelData schema type.
Definition: PatientAssessments.hxx:3364
SEScalarMassPerVolume * m_BUN
Definition: SEComprehensiveMetabolicPanel.h:87
Data formed at a level of a clinicians report. This is high level data, such as a mean or generalized...
Definition: SEPatientAssessment.h:25
SEScalarMassPerVolume * m_TotalProtein
Definition: SEComprehensiveMetabolicPanel.h:96
SEScalarMassPerVolume * m_TotalBilirubin
Definition: SEComprehensiveMetabolicPanel.h:95
SEScalarMassPerVolume * m_AST
Definition: SEComprehensiveMetabolicPanel.h:86
SEScalarAmountPerVolume * m_Chloride
Definition: SEComprehensiveMetabolicPanel.h:89
Definition: SEScalarAmountPerVolume.h:37
static constexpr const char * TypeTag()
Definition: SEComprehensiveMetabolicPanel.h:27
Definition: SEComprehensiveMetabolicPanel.h:22
Definition: SEScalarMassPerVolume.h:46
SEScalarMassPerVolume * m_Creatinine
Definition: SEComprehensiveMetabolicPanel.h:91
Definition: SEElectricalCircuit.h:18
SEScalarMassPerVolume * m_ALT
Definition: SEComprehensiveMetabolicPanel.h:85
SEScalarMassPerVolume * m_Calcium
Definition: SEComprehensiveMetabolicPanel.h:88
SEScalarMassPerVolume * m_Glucose
Definition: SEComprehensiveMetabolicPanel.h:92
SEScalarAmountPerVolume * m_Potassium
Definition: SEComprehensiveMetabolicPanel.h:93
SEScalarMassPerVolume * m_Albumin
Definition: SEComprehensiveMetabolicPanel.h:83