#include <SEMechanicalVentilation.h>

Inherits SEPatientAction.

Public Member Functions

 SEMechanicalVentilation (Logger *logger=nullptr)
 
virtual ~SEMechanicalVentilation ()
 
virtual std::string GetName () const
 
virtual void Clear ()
 
virtual void Copy (const SEMechanicalVentilation &src, const SESubstanceManager &subMgr, bool=false)
 
virtual bool IsValid () const
 
virtual bool IsActive () const
 
virtual void Deactivate ()
 
virtual eSwitch GetState () const
 
virtual void SetState (eSwitch name)
 
virtual bool HasFlow () const
 
virtual SEScalarVolumePerTimeGetFlow ()
 
virtual double GetFlow (const VolumePerTimeUnit &unit) const
 
virtual bool HasPressure () const
 
virtual SEScalarPressureGetPressure ()
 
virtual double GetPressure (const PressureUnit &unit) const
 
bool HasGasFraction () const
 
bool HasGasFraction (const SESubstance &substance) const
 
const std::vector< SESubstanceFraction * > & GetGasFractions ()
 
const std::vector< const SESubstanceFraction * > & GetGasFractions () const
 
SESubstanceFractionGetGasFraction (const SESubstance &substance)
 
const SESubstanceFractionGetGasFraction (const SESubstance &substance) const
 
void RemoveGasFraction (const SESubstance &substance)
 
void RemoveGasFractions ()
 
bool HasAerosol () const
 
bool HasAerosol (const SESubstance &substance) const
 
const std::vector< SESubstanceConcentration * > & GetAerosols ()
 
const std::vector< const SESubstanceConcentration * > & GetAerosols () const
 
SESubstanceConcentrationGetAerosol (const SESubstance &substance)
 
const SESubstanceConcentrationGetAerosol (const SESubstance &substance) const
 
void RemoveAerosol (const SESubstance &substance)
 
void RemoveAerosols ()
 
virtual const SEScalarGetScalar (const std::string &name)
 
- Public Member Functions inherited from SEPatientAction
 SEPatientAction (Logger *logger=nullptr)
 
virtual ~SEPatientAction ()
 
virtual std::string GetActionType () const
 
virtual void Clear ()
 
virtual bool IsValid () const
 
- Public Member Functions inherited from SEAction
 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 Attributes

static constexpr char const * Name = "Mechanical Ventilation"
 
- Static Public Attributes inherited from SEPatientAction
static constexpr char const * ActionType = "Patient"
 
- Static Public Attributes inherited from SEAction
static constexpr char const * ActionType = "Action"
 

Protected Attributes

eSwitch m_State
 
SEScalarVolumePerTimem_Flow
 
SEScalarPressurem_Pressure
 
std::vector< SESubstanceFraction * > m_GasFractions
 
std::vector< const SESubstanceFraction * > m_cGasFractions
 
std::vector< SESubstanceConcentration * > m_Aerosols
 
std::vector< const SESubstanceConcentration * > m_cAerosols
 
- Protected Attributes inherited from SEAction
bool m_Active = true
 
std::string m_Comment
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Loggerm_Logger
 

Friends

class PBPatientAction
 

Additional Inherited Members

- Static Public Member Functions inherited from SEAction
static SEActionCopy (const SEAction &, const SESubstanceManager &)
 
static SEActionSerializeFromString (const std::string, eSerializationFormat fmt, const SESubstanceManager &)
 
static std::string PrettyPrint (const std::string &str)
 

Constructor & Destructor Documentation

◆ SEMechanicalVentilation()

SEMechanicalVentilation::SEMechanicalVentilation ( Logger logger = nullptr)

◆ ~SEMechanicalVentilation()

SEMechanicalVentilation::~SEMechanicalVentilation ( )
virtual

Member Function Documentation

◆ Clear()

void SEMechanicalVentilation::Clear ( )
virtual

Reimplemented from SEPatientAction.

◆ Copy()

void SEMechanicalVentilation::Copy ( const SEMechanicalVentilation src,
const SESubstanceManager subMgr,
bool  = false 
)
virtual

◆ Deactivate()

void SEMechanicalVentilation::Deactivate ( )
virtual

Reimplemented from SEAction.

◆ GetAerosol() [1/2]

SESubstanceConcentration & SEMechanicalVentilation::GetAerosol ( const SESubstance substance)

◆ GetAerosol() [2/2]

const SESubstanceConcentration * SEMechanicalVentilation::GetAerosol ( const SESubstance substance) const

◆ GetAerosols() [1/2]

const std::vector< SESubstanceConcentration * > & SEMechanicalVentilation::GetAerosols ( )

◆ GetAerosols() [2/2]

const std::vector< const SESubstanceConcentration * > & SEMechanicalVentilation::GetAerosols ( ) const

◆ GetFlow() [1/2]

SEScalarVolumePerTime & SEMechanicalVentilation::GetFlow ( )
virtual

◆ GetFlow() [2/2]

double SEMechanicalVentilation::GetFlow ( const VolumePerTimeUnit unit) const
virtual

◆ GetGasFraction() [1/2]

SESubstanceFraction & SEMechanicalVentilation::GetGasFraction ( const SESubstance substance)

◆ GetGasFraction() [2/2]

const SESubstanceFraction * SEMechanicalVentilation::GetGasFraction ( const SESubstance substance) const

◆ GetGasFractions() [1/2]

const std::vector< SESubstanceFraction * > & SEMechanicalVentilation::GetGasFractions ( )

◆ GetGasFractions() [2/2]

const std::vector< const SESubstanceFraction * > & SEMechanicalVentilation::GetGasFractions ( ) const

◆ GetName()

virtual std::string SEMechanicalVentilation::GetName ( ) const
inlinevirtual

Implements SEAction.

◆ GetPressure() [1/2]

SEScalarPressure & SEMechanicalVentilation::GetPressure ( )
virtual

◆ GetPressure() [2/2]

double SEMechanicalVentilation::GetPressure ( const PressureUnit unit) const
virtual

◆ GetScalar()

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

Implements SEAction.

◆ GetState()

eSwitch SEMechanicalVentilation::GetState ( ) const
virtual

◆ HasAerosol() [1/2]

bool SEMechanicalVentilation::HasAerosol ( ) const

◆ HasAerosol() [2/2]

bool SEMechanicalVentilation::HasAerosol ( const SESubstance substance) const

◆ HasFlow()

bool SEMechanicalVentilation::HasFlow ( ) const
virtual

◆ HasGasFraction() [1/2]

bool SEMechanicalVentilation::HasGasFraction ( ) const

◆ HasGasFraction() [2/2]

bool SEMechanicalVentilation::HasGasFraction ( const SESubstance substance) const

◆ HasPressure()

bool SEMechanicalVentilation::HasPressure ( ) const
virtual

◆ IsActive()

bool SEMechanicalVentilation::IsActive ( ) const
virtual

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

Reimplemented from SEAction.

◆ IsValid()

bool SEMechanicalVentilation::IsValid ( ) const
virtual

Test if the action has all data it needs

Reimplemented from SEPatientAction.

◆ RemoveAerosol()

void SEMechanicalVentilation::RemoveAerosol ( const SESubstance substance)

◆ RemoveAerosols()

void SEMechanicalVentilation::RemoveAerosols ( )

◆ RemoveGasFraction()

void SEMechanicalVentilation::RemoveGasFraction ( const SESubstance substance)

◆ RemoveGasFractions()

void SEMechanicalVentilation::RemoveGasFractions ( )

◆ SetState()

void SEMechanicalVentilation::SetState ( eSwitch  name)
virtual

Friends And Related Function Documentation

◆ PBPatientAction

friend class PBPatientAction
friend

Member Data Documentation

◆ m_Aerosols

std::vector<SESubstanceConcentration*> SEMechanicalVentilation::m_Aerosols
protected

◆ m_cAerosols

std::vector<const SESubstanceConcentration*> SEMechanicalVentilation::m_cAerosols
protected

◆ m_cGasFractions

std::vector<const SESubstanceFraction*> SEMechanicalVentilation::m_cGasFractions
protected

◆ m_Flow

SEScalarVolumePerTime* SEMechanicalVentilation::m_Flow
protected

◆ m_GasFractions

std::vector<SESubstanceFraction*> SEMechanicalVentilation::m_GasFractions
protected

◆ m_Pressure

SEScalarPressure* SEMechanicalVentilation::m_Pressure
protected

◆ m_State

eSwitch SEMechanicalVentilation::m_State
protected

◆ Name

constexpr char const* SEMechanicalVentilation::Name = "Mechanical Ventilation"
staticconstexpr

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.