What’s New in the Pulse Physiology Engine 4.4.0
×
SEPatientActionCollection.h
1/* Distributed under the Apache License, Version 2.0.
2 See accompanying NOTICE file for details.*/
3
4#pragma once
5class SEAction;
7class SEAcuteAnemia;
9class SEAcuteStress;
11class SEAsthmaAttack;
12class SEArrhythmia;
13class SEBrainInjury;
24class SEDyspnea;
25class SEExercise;
26class SEHemorrhage;
27enum class eHemorrhage_Compartment;
28class SEHemothorax;
30class SEIntubation;
45class SEThermalBurn;
47class SEUrinate;
49class SESubstance;
52
53class CDM_DECL SEPatientActionCollection : public Loggable
54{
55 friend class PBEngine;//friend the serialization class
56 friend class SEActionManager;
57protected:
59public:
61
62 bool HasAcuteAnemia() const;
63 SEAcuteAnemia& GetAcuteAnemia();
64 const SEAcuteAnemia* GetAcuteAnemia() const;
65 void RemoveAcuteAnemia();
66
67 bool HasAcuteRespiratoryDistressSyndromeExacerbation() const;
68 SEAcuteRespiratoryDistressSyndromeExacerbation& GetAcuteRespiratoryDistressSyndromeExacerbation();
69 const SEAcuteRespiratoryDistressSyndromeExacerbation* GetAcuteRespiratoryDistressSyndromeExacerbation() const;
70 void RemoveAcuteRespiratoryDistressSyndromeExacerbation();
71
72 bool HasAcuteStress() const;
73 SEAcuteStress& GetAcuteStress();
74 const SEAcuteStress* GetAcuteStress() const;
75 void RemoveAcuteStress();
76
77 bool HasAirwayObstruction() const;
78 SEAirwayObstruction& GetAirwayObstruction();
79 const SEAirwayObstruction* GetAirwayObstruction() const;
80 void RemoveAirwayObstruction();
81
82 bool HasArrhythmia() const;
83 SEArrhythmia& GetArrhythmia();
84 const SEArrhythmia* GetArrhythmia() const;
85 void RemoveArrhythmia();
86
87 bool HasAsthmaAttack() const;
88 SEAsthmaAttack& GetAsthmaAttack();
89 const SEAsthmaAttack* GetAsthmaAttack() const;
90 void RemoveAsthmaAttack();
91
92 bool HasBrainInjury() const;
93 SEBrainInjury& GetBrainInjury();
94 const SEBrainInjury* GetBrainInjury() const;
95 void RemoveBrainInjury();
96
97 bool HasBronchoconstriction() const;
98 SEBronchoconstriction& GetBronchoconstriction();
99 const SEBronchoconstriction* GetBronchoconstriction() const;
100 void RemoveBronchoconstriction();
101
102 bool HasCardiovascularMechanicsConfiguration() const;
103 SECardiovascularMechanicsConfiguration& GetCardiovascularMechanicsConfiguration();
104 const SECardiovascularMechanicsConfiguration* GetCardiovascularMechanicsConfiguration() const;
105 void RemoveCardiovascularMechanicsConfiguration();
106
107 bool HasCardiovascularMechanicsModification() const;
108 SECardiovascularMechanicsModification& GetCardiovascularMechanicsModification();
109 const SECardiovascularMechanicsModification* GetCardiovascularMechanicsModification() const;
110 void RemoveCardiovascularMechanicsModification();
111
112 bool HasActiveCPRAction() const;
113
114 bool HasChestCompression() const;
115 SEChestCompression& GetChestCompression();
116 const SEChestCompression* GetChestCompression() const;
117 void RemoveChestCompression();
118
119 bool HasChestCompressionAutomated() const;
120 SEChestCompressionAutomated& GetChestCompressionAutomated();
121 const SEChestCompressionAutomated* GetChestCompressionAutomated() const;
122 void RemoveChestCompressionAutomated();
123
124 bool HasChestCompressionInstantaneous() const;
125 SEChestCompressionInstantaneous& GetChestCompressionInstantaneous();
126 const SEChestCompressionInstantaneous* GetChestCompressionInstantaneous() const;
127 void RemoveChestCompressionInstantaneous();
128
129 bool HasChestOcclusiveDressing() const;
130 bool HasLeftChestOcclusiveDressing() const;
131 SEChestOcclusiveDressing& GetLeftChestOcclusiveDressing();
132 const SEChestOcclusiveDressing* GetLeftChestOcclusiveDressing() const;
133 void RemoveLeftChestOcclusiveDressing();
134 bool HasRightChestOcclusiveDressing() const;
135 SEChestOcclusiveDressing& GetRightChestOcclusiveDressing();
136 const SEChestOcclusiveDressing* GetRightChestOcclusiveDressing() const;
137 void RemoveRightChestOcclusiveDressing();
138
139 bool HasChronicObstructivePulmonaryDiseaseExacerbation() const;
140 SEChronicObstructivePulmonaryDiseaseExacerbation& GetChronicObstructivePulmonaryDiseaseExacerbation();
141 const SEChronicObstructivePulmonaryDiseaseExacerbation* GetChronicObstructivePulmonaryDiseaseExacerbation() const;
142 void RemoveChronicObstructivePulmonaryDiseaseExacerbation();
143
144 bool HasConsciousRespiration() const;
145 SEConsciousRespiration& GetConsciousRespiration();
146 const SEConsciousRespiration* GetConsciousRespiration() const;
147 void RemoveConsciousRespiration();
148
149 bool HasConsumeNutrients() const;
150 SEConsumeNutrients& GetConsumeNutrients();
151 const SEConsumeNutrients* GetConsumeNutrients() const;
152 void RemoveConsumeNutrients();
153
154 bool HasDyspnea() const;
155 SEDyspnea& GetDyspnea();
156 const SEDyspnea* GetDyspnea() const;
157 void RemoveDyspnea();
158
159 bool HasExercise() const;
160 SEExercise& GetExercise();
161 const SEExercise* GetExercise() const;
162 void RemoveExercise();
163
164 bool HasHemorrhage() const;
165 bool HasHemorrhage(eHemorrhage_Compartment cmpt) const;
166 SEHemorrhage& GetHemorrhage(eHemorrhage_Compartment cmpt);
167 const SEHemorrhage* GetHemorrhage(eHemorrhage_Compartment cmpt) const;
168 const std::vector<SEHemorrhage*>& GetHemorrhages();
169 const std::vector<const SEHemorrhage*> GetHemorrhages() const;
170 void RemoveHemorrhage(eHemorrhage_Compartment cmpt);
171
172 bool HasHemothorax() const;
173
174 bool HasLeftHemothorax() const;
175 SEHemothorax& GetLeftHemothorax();
176 const SEHemothorax* GetLeftHemothorax() const;
177 void RemoveLeftHemothorax();
178
179 bool HasRightHemothorax() const;
180 SEHemothorax& GetRightHemothorax();
181 const SEHemothorax* GetRightHemothorax() const;
182 void RemoveRightHemothorax();
183
184 bool HasImpairedAlveolarExchangeExacerbation() const;
185 SEImpairedAlveolarExchangeExacerbation& GetImpairedAlveolarExchangeExacerbation();
186 const SEImpairedAlveolarExchangeExacerbation* GetImpairedAlveolarExchangeExacerbation() const;
187 void RemoveImpairedAlveolarExchangeExacerbation();
188
189 bool HasIntubation() const;
190 SEIntubation& GetIntubation();
191 const SEIntubation* GetIntubation() const;
192 void RemoveIntubation();
193
194 bool HasMechanicalVentilation() const;
195 SEMechanicalVentilation& GetMechanicalVentilation();
196 const SEMechanicalVentilation* GetMechanicalVentilation() const;
197 void RemoveMechanicalVentilation();
198
199 bool HasNeedleDecompression() const;
200 bool HasLeftNeedleDecompression() const;
201 SENeedleDecompression& GetLeftNeedleDecompression();
202 const SENeedleDecompression* GetLeftNeedleDecompression() const;
203 void RemoveLeftNeedleDecompression();
204
205 bool HasRightNeedleDecompression() const;
206 SENeedleDecompression& GetRightNeedleDecompression();
207 const SENeedleDecompression* GetRightNeedleDecompression() const;
208 void RemoveRightNeedleDecompression();
209
210 bool HasPericardialEffusion() const;
211 SEPericardialEffusion& GetPericardialEffusion();
212 const SEPericardialEffusion* GetPericardialEffusion() const;
213 void RemovePericardialEffusion();
214
215 bool HasPneumoniaExacerbation() const;
216 SEPneumoniaExacerbation& GetPneumoniaExacerbation();
217 const SEPneumoniaExacerbation* GetPneumoniaExacerbation() const;
218 void RemovePneumoniaExacerbation();
219
220 bool HasPrimaryBlastLungInjury() const;
221 SEPrimaryBlastLungInjury& GetPrimaryBlastLungInjury();
222 const SEPrimaryBlastLungInjury* GetPrimaryBlastLungInjury() const;
223 void RemovePrimaryBlastLungInjury();
224
225 bool HasPulmonaryShuntExacerbation() const;
226 SEPulmonaryShuntExacerbation& GetPulmonaryShuntExacerbation();
227 const SEPulmonaryShuntExacerbation* GetPulmonaryShuntExacerbation() const;
228 void RemovePulmonaryShuntExacerbation();
229
230 bool HasRespiratoryFatigue() const;
231 SERespiratoryFatigue& GetRespiratoryFatigue();
232 const SERespiratoryFatigue* GetRespiratoryFatigue() const;
233 void RemoveRespiratoryFatigue();
234
235 bool HasRespiratoryMechanicsConfiguration() const;
236 SERespiratoryMechanicsConfiguration& GetRespiratoryMechanicsConfiguration();
237 const SERespiratoryMechanicsConfiguration* GetRespiratoryMechanicsConfiguration() const;
238 void RemoveRespiratoryMechanicsConfiguration();
239
240 bool HasRespiratoryMechanicsModification() const;
241 SERespiratoryMechanicsModification& GetRespiratoryMechanicsModification();
242 const SERespiratoryMechanicsModification* GetRespiratoryMechanicsModification() const;
243 void RemoveRespiratoryMechanicsModification();
244
245 bool HasSubstanceBolus() const;
246 bool HasSubstanceBolus(const SESubstance& sub) const;
247 SESubstanceBolus& GetSubstanceBolus(const SESubstance& sub);
248 const SESubstanceBolus* GetSubstanceBolus(const SESubstance& sub) const;
249 const std::vector<SESubstanceBolus*>& GetSubstanceBoluses();
250 const std::vector<const SESubstanceBolus*> GetSubstanceBoluses() const;
251 void RemoveSubstanceBolus(const SESubstance& sub);
252
253 bool HasSubstanceInfusion() const;
254 bool HasSubstanceInfusion(const SESubstance& sub) const;
255 SESubstanceInfusion& GetSubstanceInfusion(const SESubstance& sub);
256 const SESubstanceInfusion* GetSubstanceInfusion(const SESubstance& sub) const;
257 const std::vector<SESubstanceInfusion*>& GetSubstanceInfusions();
258 const std::vector<const SESubstanceInfusion*> GetSubstanceInfusions() const;
259 void RemoveSubstanceInfusion(const SESubstance& sub);
260
261 bool HasSubstanceCompoundInfusion() const;
262 bool HasSubstanceCompoundInfusion(const SESubstanceCompound& sub) const;
263 SESubstanceCompoundInfusion& GetSubstanceCompoundInfusion(const SESubstanceCompound& sub);
264 const SESubstanceCompoundInfusion* GetSubstanceCompoundInfusion(const SESubstanceCompound& sub) const;
265 const std::vector<SESubstanceCompoundInfusion*>& GetSubstanceCompoundInfusions();
266 const std::vector<const SESubstanceCompoundInfusion*> GetSubstanceCompoundInfusions() const;
267 void RemoveSubstanceCompoundInfusion(const SESubstanceCompound& sub);
268
269 bool HasSupplementalOxygen() const;
270 SESupplementalOxygen& GetSupplementalOxygen();
271 const SESupplementalOxygen* GetSupplementalOxygen() const;
272 void RemoveSupplementalOxygen();
273
274 bool HasThermalBurn() const;
275 SEThermalBurn& GetThermalBurn();
276 const SEThermalBurn* GetThermalBurn() const;
277 void RemoveThermalBurn();
278
279 bool HasTensionPneumothorax() const;
280
281 bool HasLeftClosedTensionPneumothorax() const;
282 SETensionPneumothorax& GetLeftClosedTensionPneumothorax();
283 const SETensionPneumothorax* GetLeftClosedTensionPneumothorax() const;
284 void RemoveLeftClosedTensionPneumothorax();
285
286 bool HasLeftOpenTensionPneumothorax() const;
287 SETensionPneumothorax& GetLeftOpenTensionPneumothorax();
288 const SETensionPneumothorax* GetLeftOpenTensionPneumothorax() const;
289 void RemoveLeftOpenTensionPneumothorax();
290
291 bool HasRightClosedTensionPneumothorax() const;
292 SETensionPneumothorax& GetRightClosedTensionPneumothorax();
293 const SETensionPneumothorax* GetRightClosedTensionPneumothorax() const;
294 void RemoveRightClosedTensionPneumothorax();
295
296 bool HasRightOpenTensionPneumothorax() const;
297 SETensionPneumothorax& GetRightOpenTensionPneumothorax();
298 const SETensionPneumothorax* GetRightOpenTensionPneumothorax() const;
299 void RemoveRightOpenTensionPneumothorax();
300
301 bool HasTubeThoracostomy() const;
302
303 bool HasLeftTubeThoracostomy() const;
304 SETubeThoracostomy& GetLeftTubeThoracostomy();
305 const SETubeThoracostomy* GetLeftTubeThoracostomy() const;
306 void RemoveLeftTubeThoracostomy();
307
308 bool HasRightTubeThoracostomy() const;
309 SETubeThoracostomy& GetRightTubeThoracostomy();
310 const SETubeThoracostomy* GetRightTubeThoracostomy() const;
311 void RemoveRightTubeThoracostomy();
312
313 bool HasUrinate() const;
314 SEUrinate& GetUrinate();
315 const SEUrinate* GetUrinate() const;
316 void RemoveUrinate();
317
318 void GetAllActions(std::vector<const SEAction*>& v) const;
319 const SEScalar* GetScalar(const std::string& actionName, const std::string& cmptName, const std::string& substance, const std::string& property);
320
321protected:
322 void Clear();
323 bool ProcessAction(const SEPatientAction& action);
324
326
370
371 std::vector<SEHemorrhage*> m_Hemorrhages;
372 std::vector<SESubstanceBolus*> m_SubstanceBoluses;
373 std::vector<SESubstanceInfusion*> m_SubstanceInfusions;
374 std::vector<SESubstanceCompoundInfusion*> m_SubstanceCompoundInfusions;
375};
Definition: Logger.h:23
Definition: PBEngine.h:31
Definition: SEAction.h:14
Definition: SEActionManager.h:12
bool ProcessAction(const SEAction &action)
Definition: SEActionManager.cpp:71
void Clear()
Definition: SEActionManager.cpp:30
const SEScalar * GetScalar(const std::string &actionName, const std::string &cmptName, const std::string &substance, const std::string &property)
Definition: SEActionManager.cpp:108
void GetAllActions(std::vector< const SEAction * > &v) const
Definition: SEActionManager.cpp:101
Definition: SEAcuteAnemia.h:8
Definition: SEAcuteRespiratoryDistressSyndromeExacerbation.h:9
Definition: SEAcuteStress.h:8
Definition: SEAirwayObstruction.h:16
Definition: SEArrhythmia.h:19
Definition: SEAsthmaAttack.h:8
Definition: SEBrainInjury.h:12
Definition: SEBronchoconstriction.h:8
Definition: SECardiovascularMechanicsConfiguration.h:9
Definition: SECardiovascularMechanicsModification.h:9
Definition: SEChestCompressionAutomated.h:8
Definition: SEChestCompression.h:8
Definition: SEChestCompressionInstantaneous.h:8
Definition: SEChestOcclusiveDressing.h:8
Definition: SEChronicObstructivePulmonaryDiseaseExacerbation.h:9
Definition: SEConsciousRespiration.h:13
Definition: SEConsumeNutrients.h:10
Definition: SEDyspnea.h:8
Definition: SEExercise.h:8
Definition: SEHemorrhage.h:35
Definition: SEHemothorax.h:8
Definition: SEImpairedAlveolarExchangeExacerbation.h:7
Definition: SEIntubation.h:13
Definition: SEMechanicalVentilation.h:13
Definition: SENeedleDecompression.h:8
Definition: SEPatientActionCollection.h:54
SERespiratoryFatigue * m_RespiratoryFatigue
Definition: SEPatientActionCollection.h:358
SESubstanceManager & m_SubMgr
Definition: SEPatientActionCollection.h:325
SETubeThoracostomy * m_RightTubeThoracostomy
Definition: SEPatientActionCollection.h:368
SEMechanicalVentilation * m_MechanicalVentilation
Definition: SEPatientActionCollection.h:351
SEPulmonaryShuntExacerbation * m_PulmonaryShuntExacerbation
Definition: SEPatientActionCollection.h:357
SEArrhythmia * m_Arrhythmia
Definition: SEPatientActionCollection.h:331
SEChestCompressionAutomated * m_ChestCompressionAutomated
Definition: SEPatientActionCollection.h:338
std::vector< SESubstanceInfusion * > m_SubstanceInfusions
Definition: SEPatientActionCollection.h:373
SEConsciousRespiration * m_ConsciousRespiration
Definition: SEPatientActionCollection.h:342
SEHemothorax * m_LeftHemothorax
Definition: SEPatientActionCollection.h:347
SENeedleDecompression * m_LeftNeedleDecompression
Definition: SEPatientActionCollection.h:352
SETensionPneumothorax * m_RightOpenTensionPneumothorax
Definition: SEPatientActionCollection.h:366
SEChestOcclusiveDressing * m_LeftChestOcclusiveDressing
Definition: SEPatientActionCollection.h:340
SEImpairedAlveolarExchangeExacerbation * m_ImpairedAlveolarExchangeExacerbation
Definition: SEPatientActionCollection.h:350
SERespiratoryMechanicsModification * m_RespiratoryMechanicsModification
Definition: SEPatientActionCollection.h:360
SENeedleDecompression * m_RightNeedleDecompression
Definition: SEPatientActionCollection.h:353
SECardiovascularMechanicsModification * m_CardiovascularMechanicsModification
Definition: SEPatientActionCollection.h:336
SEPericardialEffusion * m_PericardialEffusion
Definition: SEPatientActionCollection.h:354
SEAcuteAnemia * m_AcuteAnemia
Definition: SEPatientActionCollection.h:327
SESupplementalOxygen * m_SupplementalOxygen
Definition: SEPatientActionCollection.h:361
SEPneumoniaExacerbation * m_PneumoniaExacerbation
Definition: SEPatientActionCollection.h:355
SECardiovascularMechanicsConfiguration * m_CardiovascularMechanicsConfiguration
Definition: SEPatientActionCollection.h:335
SEChestCompressionInstantaneous * m_ChestCompressionInstantaneous
Definition: SEPatientActionCollection.h:339
SEAcuteRespiratoryDistressSyndromeExacerbation * m_ARDSExacerbation
Definition: SEPatientActionCollection.h:328
SEHemothorax * m_RightHemothorax
Definition: SEPatientActionCollection.h:348
SEExercise * m_Exercise
Definition: SEPatientActionCollection.h:346
SEDyspnea * m_Dyspnea
Definition: SEPatientActionCollection.h:345
SEAsthmaAttack * m_AsthmaAttack
Definition: SEPatientActionCollection.h:332
SEPrimaryBlastLungInjury * m_PrimaryBlastLungInjury
Definition: SEPatientActionCollection.h:356
SEBrainInjury * m_BrainInjury
Definition: SEPatientActionCollection.h:333
SEThermalBurn * m_ThermalBurn
Definition: SEPatientActionCollection.h:362
SETensionPneumothorax * m_LeftClosedTensionPneumothorax
Definition: SEPatientActionCollection.h:363
SEChronicObstructivePulmonaryDiseaseExacerbation * m_COPDExacerbation
Definition: SEPatientActionCollection.h:344
SEUrinate * m_Urinate
Definition: SEPatientActionCollection.h:369
SEAirwayObstruction * m_AirwayObstruction
Definition: SEPatientActionCollection.h:330
SEIntubation * m_Intubation
Definition: SEPatientActionCollection.h:349
std::vector< SEHemorrhage * > m_Hemorrhages
Definition: SEPatientActionCollection.h:371
SETubeThoracostomy * m_LeftTubeThoracostomy
Definition: SEPatientActionCollection.h:367
SETensionPneumothorax * m_LeftOpenTensionPneumothorax
Definition: SEPatientActionCollection.h:364
SEChestOcclusiveDressing * m_RightChestOcclusiveDressing
Definition: SEPatientActionCollection.h:341
SETensionPneumothorax * m_RightClosedTensionPneumothorax
Definition: SEPatientActionCollection.h:365
SEAcuteStress * m_AcuteStress
Definition: SEPatientActionCollection.h:329
SEBronchoconstriction * m_Bronchoconstriction
Definition: SEPatientActionCollection.h:334
SERespiratoryMechanicsConfiguration * m_RespiratoryMechanicsConfiguration
Definition: SEPatientActionCollection.h:359
SEChestCompression * m_ChestCompression
Definition: SEPatientActionCollection.h:337
std::vector< SESubstanceCompoundInfusion * > m_SubstanceCompoundInfusions
Definition: SEPatientActionCollection.h:374
SEConsumeNutrients * m_ConsumeNutrients
Definition: SEPatientActionCollection.h:343
std::vector< SESubstanceBolus * > m_SubstanceBoluses
Definition: SEPatientActionCollection.h:372
Definition: SEPatientAction.h:8
Definition: SEPatientAssessmentRequest.h:9
Definition: SEPericardialEffusion.h:8
Definition: SEPneumoniaExacerbation.h:9
Definition: SEPrimaryBlastLungInjury.h:9
Definition: SEPulmonaryShuntExacerbation.h:8
Definition: SERespiratoryFatigue.h:8
Definition: SERespiratoryMechanicsConfiguration.h:9
Definition: SERespiratoryMechanicsModification.h:9
Definition: SEScalar.h:19
Definition: SESubstanceBolus.h:9
Definition: SESubstanceCompound.h:10
Definition: SESubstanceCompoundInfusion.h:9
Definition: SESubstance.h:16
Definition: SESubstanceInfusion.h:9
Definition: SESubstanceManager.h:10
Definition: SESupplementalOxygen.h:13
Definition: SETensionPneumothorax.h:8
Definition: SEThermalBurn.h:69
Definition: SETubeThoracostomy.h:8
Definition: SEUrinate.h:8

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.