#include <SEAction.h>

Inheritance diagram for SEAction:
Loggable SEAdvanceTime SEAdvanceUntilStable SEEnvironmentAction SEEquipmentAction SEOverrides SEPatientAction SESerializeRequested SESerializeState

Public Member Functions

 SEAction (Logger *logger)
 
virtual ~SEAction ()
 
 SEAction (const SEAction &)=delete
 
SEActionoperator= (const SEAction &)=delete
 
virtual std::string GetName () const =0
 
virtual std::string GetActionType () const
 
virtual void Clear ()
 
virtual bool SerializeToString (std::string &dst, eSerializationFormat fmt) const
 
virtual bool IsValid () const
 
virtual void Activate ()
 
virtual bool IsActive () const
 
virtual void Deactivate ()
 
virtual std::string GetComment () const
 
virtual void SetComment (const std::string &comment)
 
virtual bool HasComment () const
 
virtual void InvalidateComment ()
 
virtual const SEScalarGetScalar (const std::string &name)=0
 
virtual std::string ToJSON () const
 
virtual std::string ToString () const
 
- Public Member Functions inherited from Loggable
 Loggable (Logger *logger=nullptr)
 
 Loggable (std::string const &logfile)
 
virtual ~Loggable ()
 
virtual LoggerGetLogger () const
 
virtual void SetLogger (Logger &logger)
 
virtual void Debug (std::string const &msg) const
 
virtual void Debug (std::stringstream &msg) const
 
virtual void Debug (std::ostream &msg) const
 
virtual void Info (std::string const &msg) const
 
virtual void Info (std::stringstream &msg) const
 
virtual void Info (const std::stringstream &msg) const
 
virtual void Info (std::ostream &msg) const
 
virtual void Warning (std::string const &msg) const
 
virtual void Warning (std::stringstream &msg) const
 
virtual void Warning (std::ostream &msg) const
 
virtual void Error (std::string const &msg) const
 
virtual void Error (std::stringstream &msg) const
 
virtual void Error (std::ostream &msg) const
 
virtual void Fatal (std::string const &msg) const
 
virtual void Fatal (std::stringstream &msg) const
 
virtual void Fatal (std::ostream &msg) const
 

Static Public Member Functions

static SEActionCopy (const SEAction &, const SESubstanceManager &)
 
static SEActionSerializeFromString (const std::string, eSerializationFormat fmt, const SESubstanceManager &)
 
static std::string PrettyPrint (const std::string &str)
 

Static Public Attributes

static constexpr char const * ActionType = "Action"
 

Protected Attributes

bool m_Active = true
 
std::string m_Comment
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Loggerm_Logger
 

Friends

class PBAction
 

Constructor & Destructor Documentation

◆ SEAction() [1/2]

SEAction::SEAction ( Logger logger)

◆ ~SEAction()

SEAction::~SEAction ( )
virtual

◆ SEAction() [2/2]

SEAction::SEAction ( const SEAction )
delete

Member Function Documentation

◆ Activate()

virtual void SEAction::Activate ( )
inlinevirtual

Actions can be turned off or on with various data combinations This method will encapsulate that logic in a single function

Reimplemented in SEEquipmentAction, SEEnvironmentAction, SESubstanceBolus, SEPneumoniaExacerbation, SEPatientAction, SEChronicObstructivePulmonaryDiseaseExacerbation, SECardiovascularMechanicsModification, and SEAcuteRespiratoryDistressSyndromeExacerbation.

◆ Clear()

void SEAction::Clear ( )
virtual

Reimplemented in SEEquipmentAction, SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorMode, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEMechanicalVentilatorAction, SEInhalerConfiguration, SEInhalerAction, SEECMOConfiguration, SEECMOAction, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEBagValveMaskAction, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEAnesthesiaMachineAction, SEThermalApplication, SEEnvironmentAction, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SEPatientAction, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, SEAcuteRespiratoryDistressSyndromeExacerbation, SESerializeState, SESerializeRequested, SEOverrides, SEAdvanceUntilStable, and SEAdvanceTime.

◆ Copy()

SEAction * SEAction::Copy ( const SEAction action,
const SESubstanceManager subMgr 
)
static

◆ Deactivate()

virtual void SEAction::Deactivate ( )
inlinevirtual

Reimplemented in SEEquipmentAction, SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEInhalerConfiguration, SEECMOConfiguration, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEThermalApplication, SEEnvironmentAction, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SEPatientAction, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, and SEAcuteRespiratoryDistressSyndromeExacerbation.

◆ GetActionType()

virtual std::string SEAction::GetActionType ( ) const
inlinevirtual

◆ GetComment()

std::string SEAction::GetComment ( ) const
virtual

◆ GetName()

virtual std::string SEAction::GetName ( ) const
pure virtual

Implemented in SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEInhalerConfiguration, SEECMOConfiguration, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEThermalApplication, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, SEAcuteRespiratoryDistressSyndromeExacerbation, SESerializeState, SESerializeRequested, SEOverrides, SEAdvanceUntilStable, and SEAdvanceTime.

◆ GetScalar()

virtual const SEScalar* SEAction::GetScalar ( const std::string &  name)
pure virtual

Implemented in SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEInhalerConfiguration, SEECMOConfiguration, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEThermalApplication, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, SEAcuteRespiratoryDistressSyndromeExacerbation, SESerializeState, SESerializeRequested, SEOverrides, SEAdvanceUntilStable, and SEAdvanceTime.

◆ HasComment()

bool SEAction::HasComment ( ) const
virtual

◆ InvalidateComment()

void SEAction::InvalidateComment ( )
virtual

◆ IsActive()

virtual bool SEAction::IsActive ( ) const
inlinevirtual

Reimplemented in SEEquipmentAction, SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorMode, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEInhalerConfiguration, SEECMOConfiguration, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEThermalApplication, SEEnvironmentAction, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SEPatientAction, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, and SEAcuteRespiratoryDistressSyndromeExacerbation.

◆ IsValid()

virtual bool SEAction::IsValid ( ) const
inlinevirtual

Test if the action has all data it needs

Reimplemented in SEEquipmentAction, SEMechanicalVentilatorVolumeControl, SEMechanicalVentilatorPressureControl, SEMechanicalVentilatorMode, SEMechanicalVentilatorLeak, SEMechanicalVentilatorHold, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorConfiguration, SEMechanicalVentilatorAction, SEInhalerConfiguration, SEInhalerAction, SEECMOConfiguration, SEECMOAction, SEBagValveMaskSqueeze, SEBagValveMaskInstantaneous, SEBagValveMaskConfiguration, SEBagValveMaskAutomated, SEBagValveMaskAction, SEAnesthesiaMachineYPieceDisconnect, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineConfiguration, SEAnesthesiaMachineAction, SEThermalApplication, SEEnvironmentAction, SEChangeEnvironmentalConditions, SEUrinate, SETubeThoracostomy, SETensionPneumothorax, SESupplementalOxygen, SESubstanceInfusion, SESubstanceCompoundInfusion, SESubstanceBolus, SERespiratoryMechanicsModification, SERespiratoryMechanicsConfiguration, SERespiratoryFatigue, SEPulmonaryShuntExacerbation, SEPneumoniaExacerbation, SEPericardialEffusion, SEPatientAssessmentRequest, SEPatientAction, SENeedleDecompression, SEMechanicalVentilation, SEIntubation, SEImpairedAlveolarExchangeExacerbation, SEHemothorax, SEHemorrhage, SEExercise, SEDyspnea, SEConsumeNutrients, SEConsciousRespiration, SEChronicObstructivePulmonaryDiseaseExacerbation, SEChestOcclusiveDressing, SEChestCompressionInstantaneous, SEChestCompressionAutomated, SEChestCompression, SECardiovascularMechanicsModification, SEBronchoconstriction, SEBrainInjury, SEAsthmaAttack, SEArrhythmia, SEAirwayObstruction, SEAcuteStress, SEAcuteRespiratoryDistressSyndromeExacerbation, SESerializeState, SESerializeRequested, SEOverrides, SEAdvanceUntilStable, and SEAdvanceTime.

◆ operator=()

SEAction& SEAction::operator= ( const SEAction )
delete

◆ PrettyPrint()

std::string SEAction::PrettyPrint ( const std::string &  str)
static

◆ SerializeFromString()

SEAction * SEAction::SerializeFromString ( const std::string  src,
eSerializationFormat  fmt,
const SESubstanceManager subMgr 
)
static

◆ SerializeToString()

bool SEAction::SerializeToString ( std::string &  dst,
eSerializationFormat  fmt 
) const
virtual

◆ SetComment()

void SEAction::SetComment ( const std::string &  comment)
virtual

◆ ToJSON()

std::string SEAction::ToJSON ( ) const
virtual

◆ ToString()

std::string SEAction::ToString ( ) const
virtual

Friends And Related Function Documentation

◆ PBAction

friend class PBAction
friend

Member Data Documentation

◆ ActionType

constexpr char const* SEAction::ActionType = "Action"
staticconstexpr

◆ m_Active

bool SEAction::m_Active = true
protected

◆ m_Comment

std::string SEAction::m_Comment
protected

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.