SEMechanicalVentilatorVolumeControl Class Reference

#include <SEMechanicalVentilatorVolumeControl.h>

Inherits SEMechanicalVentilatorMode.

Public Member Functions

 SEMechanicalVentilatorVolumeControl (Logger *logger=nullptr)
 
virtual ~SEMechanicalVentilatorVolumeControl ()
 
virtual std::string GetName () const
 
void Clear () override
 
virtual void Copy (const SEMechanicalVentilatorVolumeControl &src, bool=false)
 
virtual bool ToSettings (SEMechanicalVentilatorSettings &s, const SESubstanceManager &subMgr) override
 
bool IsValid () const override
 
bool IsActive () const override
 
void Deactivate () override
 
virtual eMechanicalVentilator_VolumeControlMode GetMode () const
 
virtual void SetMode (eMechanicalVentilator_VolumeControlMode c)
 
virtual bool HasFlow () const
 
virtual SEScalarVolumePerTimeGetFlow ()
 
virtual double GetFlow (const VolumePerTimeUnit &unit) const
 
virtual bool HasFractionInspiredOxygen () const
 
virtual SEScalar0To1GetFractionInspiredOxygen ()
 
virtual double GetFractionInspiredOxygen () const
 
virtual bool HasInspirationPatientTriggerFlow () const
 
virtual SEScalarVolumePerTimeGetInspirationPatientTriggerFlow ()
 
virtual double GetInspirationPatientTriggerFlow (const VolumePerTimeUnit &unit) const
 
virtual bool HasInspirationPatientTriggerPressure () const
 
virtual SEScalarPressureGetInspirationPatientTriggerPressure ()
 
virtual double GetInspirationPatientTriggerPressure (const PressureUnit &unit) const
 
virtual bool HasInspirationWaveform () const
 
virtual eDriverWaveform GetInspirationWaveform () const
 
virtual void SetInspirationWaveform (eDriverWaveform w)
 
virtual bool HasInspiratoryPeriod () const
 
virtual SEScalarTimeGetInspiratoryPeriod ()
 
virtual double GetInspiratoryPeriod (const TimeUnit &unit) const
 
virtual bool HasPositiveEndExpiredPressure () const
 
virtual SEScalarPressureGetPositiveEndExpiredPressure ()
 
virtual double GetPositiveEndExpiredPressure (const PressureUnit &unit) const
 
virtual bool HasRespirationRate () const
 
virtual SEScalarFrequencyGetRespirationRate ()
 
virtual double GetRespirationRate (const FrequencyUnit &unit) const
 
virtual bool HasTidalVolume () const
 
virtual SEScalarVolumeGetTidalVolume ()
 
virtual double GetTidalVolume (const VolumeUnit &unit) const
 
virtual bool HasSlope () const
 
virtual SEScalarTimeGetSlope ()
 
virtual double GetSlope (const TimeUnit &unit) const
 
const SEScalarGetScalar (const std::string &name) override
 
- Public Member Functions inherited from SEMechanicalVentilatorMode
 SEMechanicalVentilatorMode (Logger *logger)
 
virtual ~SEMechanicalVentilatorMode ()
 
virtual void Clear ()
 
virtual bool IsValid () const
 
virtual bool IsActive () const
 
virtual bool ToSettings (SEMechanicalVentilatorSettings &s, const SESubstanceManager &subMgr)
 
virtual eSwitch GetConnection () const
 
virtual void SetConnection (eSwitch c)
 
- Public Member Functions inherited from SEMechanicalVentilatorAction
 SEMechanicalVentilatorAction (Logger *logger)
 
virtual ~SEMechanicalVentilatorAction ()
 
virtual std::string GetActionType () const
 
virtual void Clear ()
 
virtual bool IsValid () const
 
- Public Member Functions inherited from SEEquipmentAction
 SEEquipmentAction (Logger *logger)
 
virtual ~SEEquipmentAction ()
 
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 = "Volume Control"
 
- Static Public Attributes inherited from SEMechanicalVentilatorAction
static constexpr char const * ActionType = "Mechanical Ventilator"
 
- Static Public Attributes inherited from SEAction
static constexpr char const * ActionType = "Action"
 

Protected Attributes

eMechanicalVentilator_VolumeControlMode m_Mode
 
SEScalarVolumePerTimem_Flow
 
SEScalar0To1m_FractionInspiredOxygen
 
SEScalarVolumePerTimem_InspirationPatientTriggerFlow
 
SEScalarPressurem_InspirationPatientTriggerPressure
 
eDriverWaveform m_InspirationWaveform
 
SEScalarTimem_InspiratoryPeriod
 
SEScalarPressurem_PositiveEndExpiredPressure
 
SEScalarFrequencym_RespirationRate
 
SEScalarVolumem_TidalVolume
 
SEScalarTimem_Slope
 
- Protected Attributes inherited from SEMechanicalVentilatorMode
eSwitch m_Connection
 
- Protected Attributes inherited from SEAction
bool m_Active = true
 
std::string m_Comment
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Loggerm_Logger
 

Friends

class PBEquipmentAction
 

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

◆ SEMechanicalVentilatorVolumeControl()

SEMechanicalVentilatorVolumeControl::SEMechanicalVentilatorVolumeControl ( Logger logger = nullptr)

◆ ~SEMechanicalVentilatorVolumeControl()

SEMechanicalVentilatorVolumeControl::~SEMechanicalVentilatorVolumeControl ( )
virtual

Member Function Documentation

◆ Clear()

void SEMechanicalVentilatorVolumeControl::Clear ( )
overridevirtual

Reimplemented from SEMechanicalVentilatorMode.

◆ Copy()

void SEMechanicalVentilatorVolumeControl::Copy ( const SEMechanicalVentilatorVolumeControl src,
bool  = false 
)
virtual

◆ Deactivate()

void SEMechanicalVentilatorVolumeControl::Deactivate ( )
overridevirtual

Reimplemented from SEAction.

◆ GetFlow() [1/2]

SEScalarVolumePerTime & SEMechanicalVentilatorVolumeControl::GetFlow ( )
virtual

◆ GetFlow() [2/2]

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

◆ GetFractionInspiredOxygen() [1/2]

SEScalar0To1 & SEMechanicalVentilatorVolumeControl::GetFractionInspiredOxygen ( )
virtual

◆ GetFractionInspiredOxygen() [2/2]

double SEMechanicalVentilatorVolumeControl::GetFractionInspiredOxygen ( ) const
virtual

◆ GetInspirationPatientTriggerFlow() [1/2]

SEScalarVolumePerTime & SEMechanicalVentilatorVolumeControl::GetInspirationPatientTriggerFlow ( )
virtual

◆ GetInspirationPatientTriggerFlow() [2/2]

double SEMechanicalVentilatorVolumeControl::GetInspirationPatientTriggerFlow ( const VolumePerTimeUnit unit) const
virtual

◆ GetInspirationPatientTriggerPressure() [1/2]

SEScalarPressure & SEMechanicalVentilatorVolumeControl::GetInspirationPatientTriggerPressure ( )
virtual

◆ GetInspirationPatientTriggerPressure() [2/2]

double SEMechanicalVentilatorVolumeControl::GetInspirationPatientTriggerPressure ( const PressureUnit unit) const
virtual

◆ GetInspirationWaveform()

eDriverWaveform SEMechanicalVentilatorVolumeControl::GetInspirationWaveform ( ) const
virtual

◆ GetInspiratoryPeriod() [1/2]

SEScalarTime & SEMechanicalVentilatorVolumeControl::GetInspiratoryPeriod ( )
virtual

◆ GetInspiratoryPeriod() [2/2]

double SEMechanicalVentilatorVolumeControl::GetInspiratoryPeriod ( const TimeUnit unit) const
virtual

◆ GetMode()

eMechanicalVentilator_VolumeControlMode SEMechanicalVentilatorVolumeControl::GetMode ( ) const
virtual

◆ GetName()

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

Implements SEAction.

◆ GetPositiveEndExpiredPressure() [1/2]

SEScalarPressure & SEMechanicalVentilatorVolumeControl::GetPositiveEndExpiredPressure ( )
virtual

◆ GetPositiveEndExpiredPressure() [2/2]

double SEMechanicalVentilatorVolumeControl::GetPositiveEndExpiredPressure ( const PressureUnit unit) const
virtual

◆ GetRespirationRate() [1/2]

SEScalarFrequency & SEMechanicalVentilatorVolumeControl::GetRespirationRate ( )
virtual

◆ GetRespirationRate() [2/2]

double SEMechanicalVentilatorVolumeControl::GetRespirationRate ( const FrequencyUnit unit) const
virtual

◆ GetScalar()

const SEScalar * SEMechanicalVentilatorVolumeControl::GetScalar ( const std::string &  name)
overridevirtual

Implements SEAction.

◆ GetSlope() [1/2]

SEScalarTime & SEMechanicalVentilatorVolumeControl::GetSlope ( )
virtual

◆ GetSlope() [2/2]

double SEMechanicalVentilatorVolumeControl::GetSlope ( const TimeUnit unit) const
virtual

◆ GetTidalVolume() [1/2]

SEScalarVolume & SEMechanicalVentilatorVolumeControl::GetTidalVolume ( )
virtual

◆ GetTidalVolume() [2/2]

double SEMechanicalVentilatorVolumeControl::GetTidalVolume ( const VolumeUnit unit) const
virtual

◆ HasFlow()

bool SEMechanicalVentilatorVolumeControl::HasFlow ( ) const
virtual

◆ HasFractionInspiredOxygen()

bool SEMechanicalVentilatorVolumeControl::HasFractionInspiredOxygen ( ) const
virtual

◆ HasInspirationPatientTriggerFlow()

bool SEMechanicalVentilatorVolumeControl::HasInspirationPatientTriggerFlow ( ) const
virtual

◆ HasInspirationPatientTriggerPressure()

bool SEMechanicalVentilatorVolumeControl::HasInspirationPatientTriggerPressure ( ) const
virtual

◆ HasInspirationWaveform()

bool SEMechanicalVentilatorVolumeControl::HasInspirationWaveform ( ) const
virtual

◆ HasInspiratoryPeriod()

bool SEMechanicalVentilatorVolumeControl::HasInspiratoryPeriod ( ) const
virtual

◆ HasPositiveEndExpiredPressure()

bool SEMechanicalVentilatorVolumeControl::HasPositiveEndExpiredPressure ( ) const
virtual

◆ HasRespirationRate()

bool SEMechanicalVentilatorVolumeControl::HasRespirationRate ( ) const
virtual

◆ HasSlope()

bool SEMechanicalVentilatorVolumeControl::HasSlope ( ) const
virtual

◆ HasTidalVolume()

bool SEMechanicalVentilatorVolumeControl::HasTidalVolume ( ) const
virtual

◆ IsActive()

bool SEMechanicalVentilatorVolumeControl::IsActive ( ) const
overridevirtual

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

Reimplemented from SEMechanicalVentilatorMode.

◆ IsValid()

bool SEMechanicalVentilatorVolumeControl::IsValid ( ) const
overridevirtual

Test if the action has all data it needs

Reimplemented from SEMechanicalVentilatorMode.

◆ SetInspirationWaveform()

void SEMechanicalVentilatorVolumeControl::SetInspirationWaveform ( eDriverWaveform  w)
virtual

◆ SetMode()

void SEMechanicalVentilatorVolumeControl::SetMode ( eMechanicalVentilator_VolumeControlMode  c)
virtual

◆ ToSettings()

bool SEMechanicalVentilatorVolumeControl::ToSettings ( SEMechanicalVentilatorSettings s,
const SESubstanceManager subMgr 
)
overridevirtual

Reimplemented from SEMechanicalVentilatorMode.

Friends And Related Function Documentation

◆ PBEquipmentAction

friend class PBEquipmentAction
friend

Member Data Documentation

◆ m_Flow

SEScalarVolumePerTime* SEMechanicalVentilatorVolumeControl::m_Flow
protected

◆ m_FractionInspiredOxygen

SEScalar0To1* SEMechanicalVentilatorVolumeControl::m_FractionInspiredOxygen
protected

◆ m_InspirationPatientTriggerFlow

SEScalarVolumePerTime* SEMechanicalVentilatorVolumeControl::m_InspirationPatientTriggerFlow
protected

◆ m_InspirationPatientTriggerPressure

SEScalarPressure* SEMechanicalVentilatorVolumeControl::m_InspirationPatientTriggerPressure
protected

◆ m_InspirationWaveform

eDriverWaveform SEMechanicalVentilatorVolumeControl::m_InspirationWaveform
protected

◆ m_InspiratoryPeriod

SEScalarTime* SEMechanicalVentilatorVolumeControl::m_InspiratoryPeriod
protected

◆ m_Mode

eMechanicalVentilator_VolumeControlMode SEMechanicalVentilatorVolumeControl::m_Mode
protected

◆ m_PositiveEndExpiredPressure

SEScalarPressure* SEMechanicalVentilatorVolumeControl::m_PositiveEndExpiredPressure
protected

◆ m_RespirationRate

SEScalarFrequency* SEMechanicalVentilatorVolumeControl::m_RespirationRate
protected

◆ m_Slope

SEScalarTime* SEMechanicalVentilatorVolumeControl::m_Slope
protected

◆ m_TidalVolume

SEScalarVolume* SEMechanicalVentilatorVolumeControl::m_TidalVolume
protected

◆ Name

constexpr char const* SEMechanicalVentilatorVolumeControl::Name = "Volume Control"
staticconstexpr

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.