Pulse adds COVID-19 Simulation Support
×

#include <Controller.h>

Inherits Loggable.

Inherited by PulseController.

Public Member Functions

 PulseData (Logger *logger=nullptr)
 
virtual ~PulseData ()
 
virtual std::string GetDataRoot () const
 
virtual void SetDataRoot (const std::string &dir)
 
virtual void AdvanceCallback (double time_s)
 
virtual EngineState GetState () const
 
virtual SEEngineTrackerGetEngineTracker () const
 
virtual DataTrackGetDataTrack () const
 
virtual SaturationCalculatorGetSaturationCalculator () const
 
virtual PulseSubstancesGetSubstances () const
 
virtual const SEPatientGetInitialPatient () const
 
virtual SEPatientGetCurrentPatient () const
 
virtual SEBloodChemistrySystemGetBloodChemistry () const
 
virtual SECardiovascularSystemGetCardiovascular () const
 
virtual SEDrugSystemGetDrugs () const
 
virtual SEEndocrineSystemGetEndocrine () const
 
virtual SEEnergySystemGetEnergy () const
 
virtual SEGastrointestinalSystemGetGastrointestinal () const
 
virtual SEHepaticSystemGetHepatic () const
 
virtual SENervousSystemGetNervous () const
 
virtual SERenalSystemGetRenal () const
 
virtual SERespiratorySystemGetRespiratory () const
 
virtual SETissueSystemGetTissue () const
 
virtual SEEnvironmentGetEnvironment () const
 
virtual SEAnesthesiaMachineGetAnesthesiaMachine () const
 
virtual SEElectroCardioGramGetECG () const
 
virtual SEInhalerGetInhaler () const
 
virtual SEMechanicalVentilatorGetMechanicalVentilator () const
 
virtual SEActionManagerGetActions () const
 
virtual SEConditionManagerGetConditions () const
 
virtual SEEventManagerGetEvents () const
 
virtual PulseCircuitsGetCircuits () const
 
virtual PulseCompartmentsGetCompartments () const
 
virtual const PulseConfigurationGetConfiguration () const
 
virtual const SEScalarTimeGetTimeStep () const
 
virtual const SEScalarTimeGetEngineTime () const
 
virtual const SEScalarTimeGetSimulationTime () const
 
virtual eAirwayMode GetAirwayMode () const
 
virtual void SetAirwayMode (eAirwayMode mode)
 
virtual eSwitch GetIntubation () const
 
virtual void SetIntubation (eSwitch s)
 
virtual void SetAdvanceHandler (SEAdvanceHandler *handler)
 
virtual bool HasOverride () const
 
virtual const std::vector< SEScalarProperty > & GetOverrides () 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, std::string const &origin=empty) const
 
virtual void Debug (std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Debug (std::ostream &msg, std::string const &origin=empty) const
 
virtual void Info (std::string const &msg, std::string const &origin=empty) const
 
virtual void Info (std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Info (const std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Info (std::ostream &msg, std::string const &origin=empty) const
 
virtual void Warning (std::string const &msg, std::string const &origin=empty) const
 
virtual void Warning (std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Warning (std::ostream &msg, std::string const &origin=empty) const
 
virtual void Error (std::string const &msg, std::string const &origin=empty) const
 
virtual void Error (std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Error (std::ostream &msg, std::string const &origin=empty) const
 
virtual void Fatal (std::string const &msg, std::string const &origin=empty) const
 
virtual void Fatal (std::stringstream &msg, std::string const &origin=empty) const
 
virtual void Fatal (std::ostream &msg, std::string const &origin=empty) const
 
std::string to_string (int i)
 
std::string to_string (unsigned int i)
 
std::string to_string (size_t t)
 
std::string to_string (float f)
 
std::string to_string (double d)
 

Public Attributes

std::stringstream m_ss
 

Protected Attributes

EngineState m_State
 
SEEngineTrackerm_EngineTrack
 
DataTrackm_DataTrack
 
SEScalarTime m_CurrentTime
 
SEScalarTime m_SimulationTime
 
double m_SpareAdvanceTime_s
 
eAirwayMode m_AirwayMode
 
eSwitch m_Intubation
 
std::unique_ptr< PulseConfigurationm_Config
 
std::unique_ptr< SaturationCalculatorm_SaturationCalculator
 
std::unique_ptr< PulseSubstancesm_Substances
 
std::unique_ptr< SEActionManagerm_Actions
 
std::unique_ptr< SEConditionManagerm_Conditions
 
std::unique_ptr< PulseCircuitsm_Circuits
 
std::unique_ptr< PulseCompartmentsm_Compartments
 
std::unique_ptr< Environmentm_Environment
 
std::unique_ptr< BloodChemistrym_BloodChemistrySystem
 
std::unique_ptr< Cardiovascularm_CardiovascularSystem
 
std::unique_ptr< Endocrinem_EndocrineSystem
 
std::unique_ptr< Energym_EnergySystem
 
std::unique_ptr< Gastrointestinalm_GastrointestinalSystem
 
std::unique_ptr< Hepaticm_HepaticSystem
 
std::unique_ptr< Nervousm_NervousSystem
 
std::unique_ptr< Renalm_RenalSystem
 
std::unique_ptr< Respiratorym_RespiratorySystem
 
std::unique_ptr< Drugsm_DrugSystem
 
std::unique_ptr< Tissuem_TissueSystem
 
std::unique_ptr< ECGm_ECG
 
std::unique_ptr< AnesthesiaMachinem_AnesthesiaMachine
 
std::unique_ptr< Inhalerm_Inhaler
 
std::unique_ptr< MechanicalVentilatorm_MechanicalVentilator
 
std::unique_ptr< SEPatientm_InitialPatient
 
std::unique_ptr< SEPatientm_CurrentPatient
 
std::unique_ptr< SEEventManagerm_EventManager
 
SEAdvanceHandlerm_AdvanceHandler
 
std::string m_DataDir
 
std::vector< SEScalarPropertym_ScalarOverrides
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Loggerm_Logger
 

Friends

class PulseEngine
 

Additional Inherited Members

- Static Public Attributes inherited from Loggable
static const std::string empty
 

Constructor & Destructor Documentation

◆ PulseData()

PulseData::PulseData ( Logger logger = nullptr)

◆ ~PulseData()

PulseData::~PulseData ( )
virtual

Member Function Documentation

◆ AdvanceCallback()

void PulseData::AdvanceCallback ( double  time_s)
virtual

◆ GetActions()

SEActionManager & PulseData::GetActions ( ) const
virtual

◆ GetAirwayMode()

virtual eAirwayMode PulseData::GetAirwayMode ( ) const
inlinevirtual

◆ GetAnesthesiaMachine()

SEAnesthesiaMachine & PulseData::GetAnesthesiaMachine ( ) const
virtual

◆ GetBloodChemistry()

SEBloodChemistrySystem & PulseData::GetBloodChemistry ( ) const
virtual

◆ GetCardiovascular()

SECardiovascularSystem & PulseData::GetCardiovascular ( ) const
virtual

◆ GetCircuits()

PulseCircuits & PulseData::GetCircuits ( ) const
virtual

◆ GetCompartments()

PulseCompartments & PulseData::GetCompartments ( ) const
virtual

◆ GetConditions()

SEConditionManager & PulseData::GetConditions ( ) const
virtual

◆ GetConfiguration()

const PulseConfiguration & PulseData::GetConfiguration ( ) const
virtual

◆ GetCurrentPatient()

SEPatient & PulseData::GetCurrentPatient ( ) const
virtual

◆ GetDataRoot()

virtual std::string PulseData::GetDataRoot ( ) const
inlinevirtual

◆ GetDataTrack()

DataTrack & PulseData::GetDataTrack ( ) const
virtual

◆ GetDrugs()

SEDrugSystem & PulseData::GetDrugs ( ) const
virtual

◆ GetECG()

SEElectroCardioGram & PulseData::GetECG ( ) const
virtual

◆ GetEndocrine()

SEEndocrineSystem & PulseData::GetEndocrine ( ) const
virtual

◆ GetEnergy()

SEEnergySystem & PulseData::GetEnergy ( ) const
virtual

◆ GetEngineTime()

const SEScalarTime & PulseData::GetEngineTime ( ) const
virtual

◆ GetEngineTracker()

SEEngineTracker & PulseData::GetEngineTracker ( ) const
virtual

◆ GetEnvironment()

SEEnvironment & PulseData::GetEnvironment ( ) const
virtual

◆ GetEvents()

SEEventManager & PulseData::GetEvents ( ) const
virtual

◆ GetGastrointestinal()

SEGastrointestinalSystem & PulseData::GetGastrointestinal ( ) const
virtual

◆ GetHepatic()

SEHepaticSystem & PulseData::GetHepatic ( ) const
virtual

◆ GetInhaler()

SEInhaler & PulseData::GetInhaler ( ) const
virtual

◆ GetInitialPatient()

const SEPatient & PulseData::GetInitialPatient ( ) const
virtual

◆ GetIntubation()

virtual eSwitch PulseData::GetIntubation ( ) const
inlinevirtual

◆ GetMechanicalVentilator()

SEMechanicalVentilator & PulseData::GetMechanicalVentilator ( ) const
virtual

◆ GetNervous()

SENervousSystem & PulseData::GetNervous ( ) const
virtual

◆ GetOverrides()

const std::vector< SEScalarProperty > & PulseData::GetOverrides ( ) const
virtual

◆ GetRenal()

SERenalSystem & PulseData::GetRenal ( ) const
virtual

◆ GetRespiratory()

SERespiratorySystem & PulseData::GetRespiratory ( ) const
virtual

◆ GetSaturationCalculator()

SaturationCalculator & PulseData::GetSaturationCalculator ( ) const
virtual

◆ GetSimulationTime()

const SEScalarTime & PulseData::GetSimulationTime ( ) const
virtual

◆ GetState()

virtual EngineState PulseData::GetState ( ) const
inlinevirtual

◆ GetSubstances()

PulseSubstances & PulseData::GetSubstances ( ) const
virtual

◆ GetTimeStep()

const SEScalarTime & PulseData::GetTimeStep ( ) const
virtual

◆ GetTissue()

SETissueSystem & PulseData::GetTissue ( ) const
virtual

◆ HasOverride()

bool PulseData::HasOverride ( ) const
virtual

◆ SetAdvanceHandler()

virtual void PulseData::SetAdvanceHandler ( SEAdvanceHandler handler)
inlinevirtual

◆ SetAirwayMode()

void PulseData::SetAirwayMode ( eAirwayMode  mode)
virtual

◆ SetDataRoot()

virtual void PulseData::SetDataRoot ( const std::string &  dir)
inlinevirtual

◆ SetIntubation()

void PulseData::SetIntubation ( eSwitch  s)
virtual

Friends And Related Function Documentation

◆ PulseEngine

friend class PulseEngine
friend

Member Data Documentation

◆ m_Actions

std::unique_ptr<SEActionManager> PulseData::m_Actions
protected

◆ m_AdvanceHandler

SEAdvanceHandler* PulseData::m_AdvanceHandler
protected

◆ m_AirwayMode

eAirwayMode PulseData::m_AirwayMode
protected

◆ m_AnesthesiaMachine

std::unique_ptr<AnesthesiaMachine> PulseData::m_AnesthesiaMachine
protected

◆ m_BloodChemistrySystem

std::unique_ptr<BloodChemistry> PulseData::m_BloodChemistrySystem
protected

◆ m_CardiovascularSystem

std::unique_ptr<Cardiovascular> PulseData::m_CardiovascularSystem
protected

◆ m_Circuits

std::unique_ptr<PulseCircuits> PulseData::m_Circuits
protected

◆ m_Compartments

std::unique_ptr<PulseCompartments> PulseData::m_Compartments
protected

◆ m_Conditions

std::unique_ptr<SEConditionManager> PulseData::m_Conditions
protected

◆ m_Config

std::unique_ptr<PulseConfiguration> PulseData::m_Config
protected

◆ m_CurrentPatient

std::unique_ptr<SEPatient> PulseData::m_CurrentPatient
protected

◆ m_CurrentTime

SEScalarTime PulseData::m_CurrentTime
protected

◆ m_DataDir

std::string PulseData::m_DataDir
protected

◆ m_DataTrack

DataTrack* PulseData::m_DataTrack
protected

◆ m_DrugSystem

std::unique_ptr<Drugs> PulseData::m_DrugSystem
protected

◆ m_ECG

std::unique_ptr<ECG> PulseData::m_ECG
protected

◆ m_EndocrineSystem

std::unique_ptr<Endocrine> PulseData::m_EndocrineSystem
protected

◆ m_EnergySystem

std::unique_ptr<Energy> PulseData::m_EnergySystem
protected

◆ m_EngineTrack

SEEngineTracker* PulseData::m_EngineTrack
protected

◆ m_Environment

std::unique_ptr<Environment> PulseData::m_Environment
protected

◆ m_EventManager

std::unique_ptr<SEEventManager> PulseData::m_EventManager
protected

◆ m_GastrointestinalSystem

std::unique_ptr<Gastrointestinal> PulseData::m_GastrointestinalSystem
protected

◆ m_HepaticSystem

std::unique_ptr<Hepatic> PulseData::m_HepaticSystem
protected

◆ m_Inhaler

std::unique_ptr<Inhaler> PulseData::m_Inhaler
protected

◆ m_InitialPatient

std::unique_ptr<SEPatient> PulseData::m_InitialPatient
protected

◆ m_Intubation

eSwitch PulseData::m_Intubation
protected

◆ m_MechanicalVentilator

std::unique_ptr<MechanicalVentilator> PulseData::m_MechanicalVentilator
protected

◆ m_NervousSystem

std::unique_ptr<Nervous> PulseData::m_NervousSystem
protected

◆ m_RenalSystem

std::unique_ptr<Renal> PulseData::m_RenalSystem
protected

◆ m_RespiratorySystem

std::unique_ptr<Respiratory> PulseData::m_RespiratorySystem
protected

◆ m_SaturationCalculator

std::unique_ptr<SaturationCalculator> PulseData::m_SaturationCalculator
protected

◆ m_ScalarOverrides

std::vector<SEScalarProperty> PulseData::m_ScalarOverrides
protected

◆ m_SimulationTime

SEScalarTime PulseData::m_SimulationTime
protected

◆ m_SpareAdvanceTime_s

double PulseData::m_SpareAdvanceTime_s
protected

◆ m_ss

std::stringstream PulseData::m_ss

◆ m_State

EngineState PulseData::m_State
protected

◆ m_Substances

std::unique_ptr<PulseSubstances> PulseData::m_Substances
protected

◆ m_TissueSystem

std::unique_ptr<Tissue> PulseData::m_TissueSystem
protected

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.