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
10public:
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
52protected:
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.