#include <SEAnesthesiaMachine.h>

Inheritance diagram for biogears::SEAnesthesiaMachine:

Public Member Functions

 SEAnesthesiaMachine (SESubstanceManager &substances)
 
 ~SEAnesthesiaMachine () override
 
const char * classname () const override
 
size_t hash_code () const override
 
void Clear () override
 
bool Load (const CDM::AnesthesiaMachineData &in)
 
CDM::AnesthesiaMachineDataUnload () const override
 
Tree< const char * > GetPhysiologyRequestGraph () const override
 
- Public Member Functions inherited from biogears::SESystem
 SESystem (Logger *logger)
 
virtual ~SESystem ()
 
bool Load (const CDM::SystemData &in)
 
- Public Member Functions inherited from biogears::Loggable
 Loggable ()
 
 Loggable (Logger *log)
 
virtual ~Loggable ()
 
virtual LoggerGetLogger () const
 

Static Public Member Functions

static size_t TypeHash ()
 
static constexpr char const *const TypeTag ()
 
- Static Public Member Functions inherited from biogears::SESystem
static const SEScalarGetScalar (const char *name, std::vector< SESystem * > *systems)
 
static const SEScalarGetScalar (const std::string &name, std::vector< SESystem * > *systems)
 

Protected Member Functions

void Unload (CDM::AnesthesiaMachineData &data) const
 
- Protected Member Functions inherited from biogears::SESystem
void Unload (CDM::SystemData &data) const
 
- Protected Member Functions inherited from biogears::Loggable
virtual void Debug (const char *msg, const char *origin="") const
 
virtual void Debug (const std::string &msg, const std::string &origin=empty) const
 
virtual void Debug (std::ostream &msg, const std::string &origin=empty) const
 
virtual void Info (const char *msg, const char *origin="") const
 
virtual void Info (const std::string &msg, const std::string &origin=empty) const
 
virtual void Info (std::ostream &msg, const std::string &origin=empty) const
 
virtual void Warning (const char *msg, const char *origin="") const
 
virtual void Warning (const std::string &msg, const std::string &origin=empty) const
 
virtual void Warning (std::ostream &msg, const std::string &origin=empty) const
 
virtual void Error (const char *msg, const char *origin="") const
 
virtual void Error (const std::string msg, const std::string origin=empty) const
 
virtual void Error (std::ostream &msg, const std::string &origin=empty) const
 
virtual void Fatal (const char *msg, const char *origin="") const
 
virtual void Fatal (const std::string &msg, const std::string &origin=empty) const
 
virtual void Fatal (std::ostream &msg, const std::string &origin=empty) const
 

Protected Attributes

friend SEAnesthesiaMachineConfiguration
 
- Protected Attributes inherited from biogears::SESystem
std::stringstream m_ss
 
- Protected Attributes inherited from biogears::Loggable
Loggerm_Logger
 

StateChange

- This method is called when ever there is a state change Specically a new file has been loaded, configuration action, or the system reset Engine specific methodology can then update their logic.

bool Load (const std::string &file)
 
const SEScalarGetScalar (const char *name) override
 
const SEScalarGetScalar (const std::string &name) override
 
const std::map< CDM::enumAnesthesiaMachineEvent::value, bool > & GetEventStates () const
 
void SetEvent (CDM::enumAnesthesiaMachineEvent::value state, bool active, const SEScalarTime &time)
 
bool IsEventActive (CDM::enumAnesthesiaMachineEvent::value state) const
 
double GetEventDuration (CDM::enumAnesthesiaMachineEvent::value type, const TimeUnit &unit) const
 
void UpdateEvents (const SEScalarTime &timeStep)
 
virtual void StateChange ()
 
void Merge (const SEAnesthesiaMachine &from)
 
void ProcessConfiguration (const SEAnesthesiaMachineConfiguration &config)
 

ForwardEvents

- Set a callback class to invoke when any event changes

  • Note that the handler callback can and will be called in the middle of a time step So system and compartment objects may not be completely up to date when called. Use the PhysiologyEngineInterface::SetEventHandler to ensure that all engine data is up to date at the time the callback is invoked
std::stringstream m_ss
 
SEEventHandlerm_EventHandler
 
std::map< CDM::enumAnesthesiaMachineEvent::value, bool > m_EventState
 
std::map< CDM::enumAnesthesiaMachineEvent::value, double > m_EventDuration_s
 
CDM::enumAnesthesiaMachineConnection::value m_Connection
 
SEScalarVolumePerTimem_InletFlow
 
SEScalarm_InspiratoryExpiratoryRatio
 
SEScalarFractionm_OxygenFraction
 
CDM::enumAnesthesiaMachineOxygenSource::value m_OxygenSource
 
SEScalarPressurem_PositiveEndExpiredPressure
 
CDM::enumAnesthesiaMachinePrimaryGas::value m_PrimaryGas
 
SEScalarFrequencym_RespiratoryRate
 
SEScalarPressurem_ReliefValvePressure
 
SEScalarPressurem_VentilatorPressure
 
SEAnesthesiaMachineChamberm_LeftChamber
 
SEAnesthesiaMachineChamberm_RightChamber
 
SEAnesthesiaMachineOxygenBottlem_OxygenBottleOne
 
SEAnesthesiaMachineOxygenBottlem_OxygenBottleTwo
 
SESubstanceManagerm_Substances
 
void ForwardEvents (SEEventHandler *handler)
 
virtual CDM::enumAnesthesiaMachineConnection::value GetConnection () const
 
virtual void SetConnection (CDM::enumAnesthesiaMachineConnection::value c)
 
virtual bool HasConnection () const
 
virtual void InvalidateConnection ()
 
bool HasInletFlow () const
 
SEScalarVolumePerTimeGetInletFlow ()
 
double GetInletFlow (const VolumePerTimeUnit &unit) const
 
bool HasInspiratoryExpiratoryRatio () const
 
SEScalarGetInspiratoryExpiratoryRatio ()
 
double GetInspiratoryExpiratoryRatio () const
 
bool HasOxygenFraction () const
 
SEScalarFractionGetOxygenFraction ()
 
double GetOxygenFraction () const
 
CDM::enumAnesthesiaMachineOxygenSource::value GetOxygenSource () const
 
void SetOxygenSource (CDM::enumAnesthesiaMachineOxygenSource::value name)
 
bool HasOxygenSource () const
 
void InvalidateOxygenSource ()
 
bool HasPositiveEndExpiredPressure () const
 
SEScalarPressureGetPositiveEndExpiredPressure ()
 
double GetPositiveEndExpiredPressure (const PressureUnit &unit) const
 
CDM::enumAnesthesiaMachinePrimaryGas::value GetPrimaryGas () const
 
void SetPrimaryGas (CDM::enumAnesthesiaMachinePrimaryGas::value name)
 
bool HasPrimaryGas () const
 
void InvalidatePrimaryGas ()
 
bool HasRespiratoryRate () const
 
SEScalarFrequencyGetRespiratoryRate ()
 
double GetRespiratoryRate (const FrequencyUnit &unit) const
 
bool HasReliefValvePressure () const
 
SEScalarPressureGetReliefValvePressure ()
 
double GetReliefValvePressure (const PressureUnit &unit) const
 
bool HasVentilatorPressure () const
 
SEScalarPressureGetVentilatorPressure ()
 
double GetVentilatorPressure (const PressureUnit &unit) const
 
bool HasLeftChamber () const
 
SEAnesthesiaMachineChamberGetLeftChamber ()
 
const SEAnesthesiaMachineChamberGetLeftChamber () const
 
void RemoveLeftChamber ()
 
bool HasRightChamber () const
 
SEAnesthesiaMachineChamberGetRightChamber ()
 
const SEAnesthesiaMachineChamberGetRightChamber () const
 
void RemoveRightChamber ()
 
bool HasOxygenBottleOne () const
 
SEAnesthesiaMachineOxygenBottleGetOxygenBottleOne ()
 
const SEAnesthesiaMachineOxygenBottleGetOxygenBottleOne () const
 
void RemoveOxygenBottleOne ()
 
bool HasOxygenBottleTwo () const
 
SEAnesthesiaMachineOxygenBottleGetOxygenBottleTwo ()
 
const SEAnesthesiaMachineOxygenBottleGetOxygenBottleTwo () const
 
void RemoveOxygenBottleTwo ()
 

Additional Inherited Members

- Static Public Attributes inherited from biogears::Loggable
static const std::string empty
 
static const char * empty_cStr
 

Constructor & Destructor Documentation

biogears::SEAnesthesiaMachine::SEAnesthesiaMachine ( SESubstanceManager substances)
biogears::SEAnesthesiaMachine::~SEAnesthesiaMachine ( )
override

Member Function Documentation

const char* biogears::SEAnesthesiaMachine::classname ( ) const
inlineoverridevirtual

Implements biogears::SESystem.

Reimplemented in biogears::AnesthesiaMachine.

void biogears::SEAnesthesiaMachine::Clear ( )
overridevirtual

Reimplemented from biogears::SESystem.

Reimplemented in biogears::AnesthesiaMachine.

void biogears::SEAnesthesiaMachine::ForwardEvents ( SEEventHandler handler)
CDM::enumAnesthesiaMachineConnection::value biogears::SEAnesthesiaMachine::GetConnection ( ) const
virtual
double biogears::SEAnesthesiaMachine::GetEventDuration ( CDM::enumAnesthesiaMachineEvent::value  type,
const TimeUnit unit 
) const
const std::map<CDM::enumAnesthesiaMachineEvent::value, bool>& biogears::SEAnesthesiaMachine::GetEventStates ( ) const
inline
SEScalarVolumePerTime & biogears::SEAnesthesiaMachine::GetInletFlow ( )
double biogears::SEAnesthesiaMachine::GetInletFlow ( const VolumePerTimeUnit unit) const
SEScalar & biogears::SEAnesthesiaMachine::GetInspiratoryExpiratoryRatio ( )
double biogears::SEAnesthesiaMachine::GetInspiratoryExpiratoryRatio ( ) const
SEAnesthesiaMachineChamber & biogears::SEAnesthesiaMachine::GetLeftChamber ( )
const SEAnesthesiaMachineChamber * biogears::SEAnesthesiaMachine::GetLeftChamber ( ) const
SEAnesthesiaMachineOxygenBottle & biogears::SEAnesthesiaMachine::GetOxygenBottleOne ( )
const SEAnesthesiaMachineOxygenBottle * biogears::SEAnesthesiaMachine::GetOxygenBottleOne ( ) const
SEAnesthesiaMachineOxygenBottle & biogears::SEAnesthesiaMachine::GetOxygenBottleTwo ( )
const SEAnesthesiaMachineOxygenBottle * biogears::SEAnesthesiaMachine::GetOxygenBottleTwo ( ) const
SEScalarFraction & biogears::SEAnesthesiaMachine::GetOxygenFraction ( )
double biogears::SEAnesthesiaMachine::GetOxygenFraction ( ) const
CDM::enumAnesthesiaMachineOxygenSource::value biogears::SEAnesthesiaMachine::GetOxygenSource ( ) const
Tree< const char * > biogears::SEAnesthesiaMachine::GetPhysiologyRequestGraph ( ) const
overridevirtual

Implements biogears::SESystem.

SEScalarPressure & biogears::SEAnesthesiaMachine::GetPositiveEndExpiredPressure ( )
double biogears::SEAnesthesiaMachine::GetPositiveEndExpiredPressure ( const PressureUnit unit) const
CDM::enumAnesthesiaMachinePrimaryGas::value biogears::SEAnesthesiaMachine::GetPrimaryGas ( ) const
SEScalarPressure & biogears::SEAnesthesiaMachine::GetReliefValvePressure ( )
double biogears::SEAnesthesiaMachine::GetReliefValvePressure ( const PressureUnit unit) const
SEScalarFrequency & biogears::SEAnesthesiaMachine::GetRespiratoryRate ( )
double biogears::SEAnesthesiaMachine::GetRespiratoryRate ( const FrequencyUnit unit) const
SEAnesthesiaMachineChamber & biogears::SEAnesthesiaMachine::GetRightChamber ( )
const SEAnesthesiaMachineChamber * biogears::SEAnesthesiaMachine::GetRightChamber ( ) const
const SEScalar * biogears::SEAnesthesiaMachine::GetScalar ( const char *  name)
overridevirtual

Implements biogears::SESystem.

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

Implements biogears::SESystem.

SEScalarPressure & biogears::SEAnesthesiaMachine::GetVentilatorPressure ( )
double biogears::SEAnesthesiaMachine::GetVentilatorPressure ( const PressureUnit unit) const
bool biogears::SEAnesthesiaMachine::HasConnection ( ) const
virtual
size_t biogears::SEAnesthesiaMachine::hash_code ( ) const
inlineoverridevirtual

Implements biogears::SESystem.

Reimplemented in biogears::AnesthesiaMachine.

bool biogears::SEAnesthesiaMachine::HasInletFlow ( ) const
bool biogears::SEAnesthesiaMachine::HasInspiratoryExpiratoryRatio ( ) const
bool biogears::SEAnesthesiaMachine::HasLeftChamber ( ) const
bool biogears::SEAnesthesiaMachine::HasOxygenBottleOne ( ) const
bool biogears::SEAnesthesiaMachine::HasOxygenBottleTwo ( ) const
bool biogears::SEAnesthesiaMachine::HasOxygenFraction ( ) const
bool biogears::SEAnesthesiaMachine::HasOxygenSource ( ) const
bool biogears::SEAnesthesiaMachine::HasPositiveEndExpiredPressure ( ) const
bool biogears::SEAnesthesiaMachine::HasPrimaryGas ( ) const
bool biogears::SEAnesthesiaMachine::HasReliefValvePressure ( ) const
bool biogears::SEAnesthesiaMachine::HasRespiratoryRate ( ) const
bool biogears::SEAnesthesiaMachine::HasRightChamber ( ) const
bool biogears::SEAnesthesiaMachine::HasVentilatorPressure ( ) const
void biogears::SEAnesthesiaMachine::InvalidateConnection ( )
virtual

Reimplemented in biogears::AnesthesiaMachine.

void biogears::SEAnesthesiaMachine::InvalidateOxygenSource ( )
void biogears::SEAnesthesiaMachine::InvalidatePrimaryGas ( )
bool biogears::SEAnesthesiaMachine::IsEventActive ( CDM::enumAnesthesiaMachineEvent::value  state) const
bool biogears::SEAnesthesiaMachine::Load ( const CDM::AnesthesiaMachineData in)
bool biogears::SEAnesthesiaMachine::Load ( const std::string &  file)
void biogears::SEAnesthesiaMachine::Merge ( const SEAnesthesiaMachine from)
protected
void biogears::SEAnesthesiaMachine::ProcessConfiguration ( const SEAnesthesiaMachineConfiguration config)
protected
void biogears::SEAnesthesiaMachine::RemoveLeftChamber ( )
void biogears::SEAnesthesiaMachine::RemoveOxygenBottleOne ( )
void biogears::SEAnesthesiaMachine::RemoveOxygenBottleTwo ( )
void biogears::SEAnesthesiaMachine::RemoveRightChamber ( )
void biogears::SEAnesthesiaMachine::SetConnection ( CDM::enumAnesthesiaMachineConnection::value  c)
virtual

Reimplemented in biogears::AnesthesiaMachine.

void biogears::SEAnesthesiaMachine::SetEvent ( CDM::enumAnesthesiaMachineEvent::value  state,
bool  active,
const SEScalarTime time 
)
void biogears::SEAnesthesiaMachine::SetOxygenSource ( CDM::enumAnesthesiaMachineOxygenSource::value  name)
void biogears::SEAnesthesiaMachine::SetPrimaryGas ( CDM::enumAnesthesiaMachinePrimaryGas::value  name)
virtual void biogears::SEAnesthesiaMachine::StateChange ( )
inlineprotectedvirtual

Reimplemented in biogears::AnesthesiaMachine.

static size_t biogears::SEAnesthesiaMachine::TypeHash ( )
inlinestatic
static constexpr char const* const biogears::SEAnesthesiaMachine::TypeTag ( )
inlinestatic
CDM::AnesthesiaMachineData * biogears::SEAnesthesiaMachine::Unload ( ) const
overridevirtual

Implements biogears::SESystem.

Reimplemented in biogears::AnesthesiaMachine.

void biogears::SEAnesthesiaMachine::Unload ( CDM::AnesthesiaMachineData data) const
protected
void biogears::SEAnesthesiaMachine::UpdateEvents ( const SEScalarTime timeStep)

Member Data Documentation

CDM::enumAnesthesiaMachineConnection::value biogears::SEAnesthesiaMachine::m_Connection
protected
std::map<CDM::enumAnesthesiaMachineEvent::value, double> biogears::SEAnesthesiaMachine::m_EventDuration_s
protected
SEEventHandler* biogears::SEAnesthesiaMachine::m_EventHandler
protected
std::map<CDM::enumAnesthesiaMachineEvent::value, bool> biogears::SEAnesthesiaMachine::m_EventState
protected
SEScalarVolumePerTime* biogears::SEAnesthesiaMachine::m_InletFlow
protected
SEScalar* biogears::SEAnesthesiaMachine::m_InspiratoryExpiratoryRatio
protected
SEAnesthesiaMachineChamber* biogears::SEAnesthesiaMachine::m_LeftChamber
protected
SEAnesthesiaMachineOxygenBottle* biogears::SEAnesthesiaMachine::m_OxygenBottleOne
protected
SEAnesthesiaMachineOxygenBottle* biogears::SEAnesthesiaMachine::m_OxygenBottleTwo
protected
SEScalarFraction* biogears::SEAnesthesiaMachine::m_OxygenFraction
protected
CDM::enumAnesthesiaMachineOxygenSource::value biogears::SEAnesthesiaMachine::m_OxygenSource
protected
SEScalarPressure* biogears::SEAnesthesiaMachine::m_PositiveEndExpiredPressure
protected
CDM::enumAnesthesiaMachinePrimaryGas::value biogears::SEAnesthesiaMachine::m_PrimaryGas
protected
SEScalarPressure* biogears::SEAnesthesiaMachine::m_ReliefValvePressure
protected
SEScalarFrequency* biogears::SEAnesthesiaMachine::m_RespiratoryRate
protected
SEAnesthesiaMachineChamber* biogears::SEAnesthesiaMachine::m_RightChamber
protected
std::stringstream biogears::SEAnesthesiaMachine::m_ss
protected
SESubstanceManager& biogears::SEAnesthesiaMachine::m_Substances
protected
SEScalarPressure* biogears::SEAnesthesiaMachine::m_VentilatorPressure
protected
friend biogears::SEAnesthesiaMachine::SEAnesthesiaMachineConfiguration
protected