SEUrinalysisMicroscopic.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 SEScalarAmount;
19 
20 class BIOGEARS_API SEUrinalysisMicroscopic : public SEPatientAssessment {
21 public:
23  virtual ~SEUrinalysisMicroscopic();
24 
25  static constexpr const char* TypeTag() { return "SEUrinalysisMicroscopic"; };
26  const char* classname() const override { return TypeTag(); }
27 
28  virtual void Reset();
29  virtual void Clear();
30 
31  virtual bool Load(const CDM::UrinalysisMicroscopicData& in);
32  virtual CDM::UrinalysisMicroscopicData* Unload();
33 
34 protected:
35  virtual void Unload(CDM::UrinalysisMicroscopicData& data);
36 
37 public:
38  virtual bool HasObservationType() const;
39  virtual CDM::enumMicroscopicObservationType::value GetObservationType() const;
40  virtual void SetObservationType(CDM::enumMicroscopicObservationType::value p);
41  virtual void InvalidateObservationType();
42 
43  virtual bool HasRedBloodCellsResult() const;
44  virtual SEScalarAmount& GetRedBloodCellsResult();
45 
46  virtual bool HasWhiteBloodCellsResult() const;
47  virtual SEScalarAmount& GetWhiteBloodCellsResult();
48 
49  virtual bool HasEpithelialCellsResult() const;
50  virtual CDM::enumMicroscopicObservationAmount::value GetEpithelialCellsResult() const;
51  virtual void SetEpithelialCellsResult(CDM::enumMicroscopicObservationAmount::value p);
52  virtual void InvalidateEpithelialCellsResult();
53 
54  virtual bool HasCastsResult() const;
55  virtual SEScalarAmount& GetCastsResult();
56 
57  virtual bool HasCrystalsResult() const;
58  virtual CDM::enumMicroscopicObservationAmount::value GetCrystalsResult() const;
59  virtual void SetCrystalsResult(CDM::enumMicroscopicObservationAmount::value p);
60  virtual void InvalidateCrystalsResult();
61 
62  virtual bool HasBacteriaResult() const;
63  virtual CDM::enumMicroscopicObservationAmount::value GetBacteriaResult() const;
64  virtual void SetBacteriaResult(CDM::enumMicroscopicObservationAmount::value p);
65  virtual void InvalidateBacteriaResult();
66 
67  virtual bool HasTrichomonadsResult() const;
68  virtual CDM::enumMicroscopicObservationAmount::value GetTrichomonadsResult() const;
69  virtual void SetTrichomonadsResult(CDM::enumMicroscopicObservationAmount::value p);
70  virtual void InvalidateTrichomonadsResult();
71 
72  virtual bool HasYeastResult() const;
73  virtual CDM::enumMicroscopicObservationAmount::value GetYeastResult() const;
74  virtual void SetYeastResult(CDM::enumMicroscopicObservationAmount::value p);
75  virtual void InvalidateYeastResult();
76 
77 protected:
87 };
88 }
const char * classname() const override
Definition: SEUrinalysisMicroscopic.h:26
SEScalarAmount * m_WhiteBloodCells
Definition: SEUrinalysisMicroscopic.h:80
value
Underlying enum type.
Definition: PatientAssessments.hxx:5157
Class corresponding to the UrinalysisMicroscopicData schema type.
Definition: PatientAssessments.hxx:6399
SEScalarAmount * m_Casts
Definition: SEUrinalysisMicroscopic.h:82
CDM::enumMicroscopicObservationAmount::value m_EpithelialCells
Definition: SEUrinalysisMicroscopic.h:81
static constexpr const char * TypeTag()
Definition: SEUrinalysisMicroscopic.h:25
Data formed at a level of a clinicians report. This is high level data, such as a mean or generalized...
Definition: SEPatientAssessment.h:25
CDM::enumMicroscopicObservationAmount::value m_Trichomonads
Definition: SEUrinalysisMicroscopic.h:85
SEScalarAmount * m_RedBloodCells
Definition: SEUrinalysisMicroscopic.h:79
value
Underlying enum type.
Definition: PatientAssessments.hxx:5004
Definition: SEScalarAmount.h:35
CDM::enumMicroscopicObservationAmount::value m_Crystals
Definition: SEUrinalysisMicroscopic.h:83
CDM::enumMicroscopicObservationType::value m_ObservationType
Definition: SEUrinalysisMicroscopic.h:78
CDM::enumMicroscopicObservationAmount::value m_Bacteria
Definition: SEUrinalysisMicroscopic.h:84
CDM::enumMicroscopicObservationAmount::value m_Yeast
Definition: SEUrinalysisMicroscopic.h:86
Definition: SEElectricalCircuit.h:18
Definition: SEUrinalysisMicroscopic.h:20