#include <SEAction.h>

Inherits Loggable.

Inherited by SEAdvanceTime, SEEnvironmentAction, SEEquipmentAction, SEOverrides, SEPatientAction, and 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 bool IsActive () const
 
virtual void Activate ()
 
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

Reimplemented in SESubstanceBolus.

◆ Clear()

void SEAction::Clear ( )
virtual

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

◆ Copy()

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

◆ Deactivate()

virtual void SEAction::Deactivate ( )
inlinevirtual

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

◆ 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 SEAdvanceTime, SEOverrides, SESerializeState, SEAcuteRespiratoryDistressSyndromeExacerbation, SEAcuteStress, SEAirwayObstruction, SEArrhythmia, SEAsthmaAttack, SEBrainInjury, SEBronchoconstriction, SEChestCompression, SEChestCompressionAutomated, SEChestCompressionInstantaneous, SEChestOcclusiveDressing, SEChronicObstructivePulmonaryDiseaseExacerbation, SEConsciousRespiration, SEConsumeNutrients, SEDyspnea, SEExercise, SEHemorrhage, SEImpairedAlveolarExchangeExacerbation, SEIntubation, SELobarPneumoniaExacerbation, SEMechanicalVentilation, SENeedleDecompression, SEPatientAssessmentRequest, SEPericardialEffusion, SEPulmonaryShuntExacerbation, SERespiratoryFatigue, SERespiratoryMechanicsConfiguration, SESubstanceBolus, SESubstanceCompoundInfusion, SESubstanceInfusion, SESupplementalOxygen, SETensionPneumothorax, SEUrinate, SEChangeEnvironmentalConditions, SEThermalApplication, SEAnesthesiaMachineConfiguration, SEAnesthesiaMachineExpiratoryValveLeak, SEAnesthesiaMachineExpiratoryValveObstruction, SEAnesthesiaMachineInspiratoryValveLeak, SEAnesthesiaMachineInspiratoryValveObstruction, SEAnesthesiaMachineMaskLeak, SEAnesthesiaMachineOxygenTankPressureLoss, SEAnesthesiaMachineOxygenWallPortPressureLoss, SEAnesthesiaMachineSodaLimeFailure, SEAnesthesiaMachineTubeCuffLeak, SEAnesthesiaMachineVaporizerFailure, SEAnesthesiaMachineVentilatorPressureLoss, SEAnesthesiaMachineYPieceDisconnect, SEBagValveMaskAutomated, SEBagValveMaskConfiguration, SEBagValveMaskInstantaneous, SEBagValveMaskSqueeze, SEECMOConfiguration, SEInhalerConfiguration, SEMechanicalVentilatorConfiguration, SEMechanicalVentilatorContinuousPositiveAirwayPressure, SEMechanicalVentilatorHold, SEMechanicalVentilatorLeak, SEMechanicalVentilatorPressureControl, and SEMechanicalVentilatorVolumeControl.

◆ GetScalar()

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

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

◆ HasComment()

bool SEAction::HasComment ( ) const
virtual

◆ InvalidateComment()

void SEAction::InvalidateComment ( )
virtual

◆ IsActive()

virtual bool SEAction::IsActive ( ) const
inlinevirtual

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

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

◆ IsValid()

virtual bool SEAction::IsValid ( ) const
inlinevirtual

Test if the action has all data it needs

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

◆ 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.