SECompleteBloodCount.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/assessments/SEPatientAssessment.h"
6 
8 {
9  friend class PBPatientAssessment;//friend the serialization class
10 public:
11 
13  virtual ~SECompleteBloodCount();
14 
15  virtual void Clear() override; //clear memory
16 
17  bool SerializeToString(std::string& output, eSerializationFormat m) const override;
18  bool SerializeToFile(const std::string& filename) const override;
19 
20  virtual bool HasHematocrit() const;
21  virtual SEScalar0To1& GetHematocrit();
22  virtual double GetHematocrit() const;
23 
24  virtual bool HasHemoglobin() const;
25  virtual SEScalarMassPerVolume& GetHemoglobin();
26  virtual double GetHemoglobin(const MassPerVolumeUnit& unit) const;
27 
28  virtual bool HasPlateletCount() const;
29  virtual SEScalarAmountPerVolume& GetPlateletCount();
30  virtual double GetPlateletCount(const AmountPerVolumeUnit& unit) const;
31 
32  virtual bool HasMeanCorpuscularHemoglobin() const;
33  virtual SEScalarMassPerAmount& GetMeanCorpuscularHemoglobin();
34  virtual double GetMeanCorpuscularHemoglobin(const MassPerAmountUnit& unit) const;
35 
36  virtual bool HasMeanCorpuscularHemoglobinConcentration() const;
37  virtual SEScalarMassPerVolume& GetMeanCorpuscularHemoglobinConcentration();
38  virtual double GetMeanCorpuscularHemoglobinConcentration(const MassPerVolumeUnit& unit) const;
39 
40  virtual bool HasMeanCorpuscularVolume() const;
41  virtual SEScalarVolume& GetMeanCorpuscularVolume();
42  virtual double GetMeanCorpuscularVolume(const VolumeUnit& unit) const;
43 
44  virtual bool HasRedBloodCellCount() const;
45  virtual SEScalarAmountPerVolume& GetRedBloodCellCount();
46  virtual double GetRedBloodCellCount(const AmountPerVolumeUnit& unit) const;
47 
48  virtual bool HasWhiteBloodCellCount() const;
49  virtual SEScalarAmountPerVolume& GetWhiteBloodCellCount();
50  virtual double GetWhiteBloodCellCount(const AmountPerVolumeUnit& unit) const;
51 
52 protected:
53 
62 
63 };
Definition: SEScalarAmountPerVolume.h:8
Definition: Logger.h:71
Definition: SEScalarMassPerAmount.h:8
Definition: SEScalarMassPerVolume.h:8
Definition: PBPatientAssessments.h:13
Definition: SECompleteBloodCount.h:8
SEScalarAmountPerVolume * m_PlateletCount
Definition: SECompleteBloodCount.h:56
SEScalarAmountPerVolume * m_WhiteBloodCellCount
Definition: SECompleteBloodCount.h:61
SEScalarVolume * m_MeanCorpuscularVolume
Definition: SECompleteBloodCount.h:59
SEScalarAmountPerVolume * m_RedBloodCellCount
Definition: SECompleteBloodCount.h:60
SEScalarMassPerVolume * m_MeanCorpuscularHemoglobinConcentration
Definition: SECompleteBloodCount.h:58
SEScalarMassPerVolume * m_Hemoglobin
Definition: SECompleteBloodCount.h:55
SEScalar0To1 * m_Hematocrit
Definition: SECompleteBloodCount.h:54
SEScalarMassPerAmount * m_MeanCorpuscularHemoglobin
Definition: SECompleteBloodCount.h:57
Data formed at a level of a clinicians report. This is high level data, such as a mean or generalized...
Definition: SEPatientAssessment.h:22
virtual bool SerializeToFile(const std::string &filename) const =0
virtual void Clear()
Definition: SEPatientAssessment.cpp:17
virtual bool SerializeToString(std::string &output, eSerializationFormat m) const =0
Definition: SEScalar0To1.h:8
Definition: SEScalarAmountPerVolume.h:31
Definition: SEScalarMassPerAmount.h:34
Definition: SEScalarMassPerVolume.h:37
Definition: SEScalarVolume.h:28
Definition: SEScalarVolume.h:8

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.