Building Medical Digital Twins with Pulse: Open Source Simulation Tools for Developers and Researchers
×

#include <SELiquidSubstanceQuantity.h>

Inheritance diagram for SELiquidSubstanceQuantity:
SESubstanceQuantity SESubstanceTransportAmount< ExtensiveScalar, IntensiveScalar > Loggable

Public Member Functions

virtual ~SELiquidSubstanceQuantity ()
 
void Clear () override
 
virtual std::string GetCompartmentName () override
 
void SetToZero () override
 
const SEScalar * GetScalar (const std::string &name) override
 
virtual void Balance (BalanceLiquidBy e)
 
virtual bool HasConcentration () const
 
virtual SEScalarMassPerVolume & GetConcentration ()
 
virtual double GetConcentration (const MassPerVolumeUnit &unit) const
 
virtual bool HasMass () const
 
virtual SEScalarMass & GetMass ()
 
virtual double GetMass (const MassUnit &unit) const
 
virtual bool HasMassCleared () const
 
virtual SEScalarMass & GetMassCleared ()
 
virtual double GetMassCleared (const MassUnit &unit) const
 
virtual bool HasMassDeposited () const
 
virtual SEScalarMass & GetMassDeposited ()
 
virtual double GetMassDeposited (const MassUnit &unit) const
 
virtual bool HasMassExcreted () const
 
virtual SEScalarMass & GetMassExcreted ()
 
virtual double GetMassExcreted (const MassUnit &unit) const
 
virtual bool HasMolarity () const
 
virtual SEScalarAmountPerVolume & GetMolarity ()
 
virtual double GetMolarity (const AmountPerVolumeUnit &unit) const
 
virtual bool HasPartialPressure () const
 
virtual SEScalarPressure & GetPartialPressure ()
 
virtual double GetPartialPressure (const PressureUnit &unit) const
 
virtual bool HasSaturation () const
 
virtual SEScalar0To1 & GetSaturation ()
 
virtual double GetSaturation () const
 
virtual void SetHemoglobins (const SESubstance &Hb, const SESubstance &HbO2, const SESubstance &HbCO2, const SESubstance &HbO2CO2, const SESubstance &HbCO)
 
- Public Member Functions inherited from SESubstanceQuantity
 SESubstanceQuantity (SESubstance &sub)
 
virtual ~SESubstanceQuantity ()
 
virtual SESubstance & GetSubstance ()
 
virtual const SESubstance & GetSubstance () const
 
- Public Member Functions inherited from Loggable
 Loggable (Logger *logger=nullptr)
 
 Loggable (std::string const &logfile)
 
virtual ~Loggable ()
 
virtual Logger * GetLogger () 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
 
- Public Member Functions inherited from SESubstanceTransportAmount< ExtensiveScalar, IntensiveScalar >
virtual ~SESubstanceTransportAmount ()
 

Protected Member Functions

 SELiquidSubstanceQuantity (SESubstance &sub, SELiquidCompartment &compartment)
 
virtual void AddChild (SELiquidSubstanceQuantity &subQ)
 
bool HasExtensive () const override
 
SEScalarMass & GetExtensive () override
 
bool HasIntensive () const override
 
SEScalarMassPerVolume & GetIntensive () override
 

Protected Attributes

SEScalarMassPerVolume * m_Concentration
 
SEScalarMass * m_Mass
 
SEScalarMass * m_MassCleared
 
SEScalarMass * m_MassDeposited
 
SEScalarMass * m_MassExcreted
 
SEScalarAmountPerVolume * m_Molarity
 
SEScalarPressure * m_PartialPressure
 
SEScalar0To1 * m_Saturation
 
SELiquidCompartment & m_Compartment
 
std::vector< SELiquidSubstanceQuantity * > m_Children
 
bool m_isO2
 
bool m_isCO
 
bool m_isCO2
 
const SESubstance * m_Hb
 
const SESubstance * m_HbO2
 
const SESubstance * m_HbCO2
 
const SESubstance * m_HbO2CO2
 
const SESubstance * m_HbCO
 
- Protected Attributes inherited from SESubstanceQuantity
SESubstance & m_Substance
 
- Protected Attributes inherited from Loggable
bool myLogger
 
Logger * m_Logger
 

Friends

class PBSubstanceQuantity
 
class SELiquidCompartment
 

Constructor & Destructor Documentation

◆ SELiquidSubstanceQuantity()

SELiquidSubstanceQuantity::SELiquidSubstanceQuantity ( SESubstance &  sub,
SELiquidCompartment &  compartment 
)
protected

◆ ~SELiquidSubstanceQuantity()

SELiquidSubstanceQuantity::~SELiquidSubstanceQuantity ( )
virtual

Member Function Documentation

◆ AddChild()

void SELiquidSubstanceQuantity::AddChild ( SELiquidSubstanceQuantity &  subQ)
protectedvirtual

◆ Balance()

void SELiquidSubstanceQuantity::Balance ( BalanceLiquidBy  e)
virtual

◆ Clear()

void SELiquidSubstanceQuantity::Clear ( )
overridevirtual

Implements SESubstanceQuantity.

◆ GetCompartmentName()

std::string SELiquidSubstanceQuantity::GetCompartmentName ( )
overridevirtual

Implements SESubstanceQuantity.

◆ GetConcentration() [1/2]

SEScalarMassPerVolume & SELiquidSubstanceQuantity::GetConcentration ( )
virtual

◆ GetConcentration() [2/2]

double SELiquidSubstanceQuantity::GetConcentration ( const MassPerVolumeUnit &  unit) const
virtual

◆ GetExtensive()

SEScalarMass& SELiquidSubstanceQuantity::GetExtensive ( )
inlineoverrideprotectedvirtual

◆ GetIntensive()

SEScalarMassPerVolume& SELiquidSubstanceQuantity::GetIntensive ( )
inlineoverrideprotectedvirtual

◆ GetMass() [1/2]

SEScalarMass & SELiquidSubstanceQuantity::GetMass ( )
virtual

◆ GetMass() [2/2]

double SELiquidSubstanceQuantity::GetMass ( const MassUnit &  unit) const
virtual

◆ GetMassCleared() [1/2]

SEScalarMass & SELiquidSubstanceQuantity::GetMassCleared ( )
virtual

◆ GetMassCleared() [2/2]

double SELiquidSubstanceQuantity::GetMassCleared ( const MassUnit &  unit) const
virtual

◆ GetMassDeposited() [1/2]

SEScalarMass & SELiquidSubstanceQuantity::GetMassDeposited ( )
virtual

◆ GetMassDeposited() [2/2]

double SELiquidSubstanceQuantity::GetMassDeposited ( const MassUnit &  unit) const
virtual

◆ GetMassExcreted() [1/2]

SEScalarMass & SELiquidSubstanceQuantity::GetMassExcreted ( )
virtual

◆ GetMassExcreted() [2/2]

double SELiquidSubstanceQuantity::GetMassExcreted ( const MassUnit &  unit) const
virtual

◆ GetMolarity() [1/2]

SEScalarAmountPerVolume & SELiquidSubstanceQuantity::GetMolarity ( )
virtual

◆ GetMolarity() [2/2]

double SELiquidSubstanceQuantity::GetMolarity ( const AmountPerVolumeUnit &  unit) const
virtual

◆ GetPartialPressure() [1/2]

SEScalarPressure & SELiquidSubstanceQuantity::GetPartialPressure ( )
virtual

◆ GetPartialPressure() [2/2]

double SELiquidSubstanceQuantity::GetPartialPressure ( const PressureUnit &  unit) const
virtual

◆ GetSaturation() [1/2]

SEScalar0To1 & SELiquidSubstanceQuantity::GetSaturation ( )
virtual

◆ GetSaturation() [2/2]

double SELiquidSubstanceQuantity::GetSaturation ( ) const
virtual

◆ GetScalar()

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

Implements SESubstanceQuantity.

◆ HasConcentration()

bool SELiquidSubstanceQuantity::HasConcentration ( ) const
virtual

◆ HasExtensive()

bool SELiquidSubstanceQuantity::HasExtensive ( ) const
inlineoverrideprotectedvirtual

◆ HasIntensive()

bool SELiquidSubstanceQuantity::HasIntensive ( ) const
inlineoverrideprotectedvirtual

◆ HasMass()

bool SELiquidSubstanceQuantity::HasMass ( ) const
virtual

◆ HasMassCleared()

bool SELiquidSubstanceQuantity::HasMassCleared ( ) const
virtual

◆ HasMassDeposited()

bool SELiquidSubstanceQuantity::HasMassDeposited ( ) const
virtual

◆ HasMassExcreted()

bool SELiquidSubstanceQuantity::HasMassExcreted ( ) const
virtual

◆ HasMolarity()

bool SELiquidSubstanceQuantity::HasMolarity ( ) const
virtual

◆ HasPartialPressure()

bool SELiquidSubstanceQuantity::HasPartialPressure ( ) const
virtual

◆ HasSaturation()

bool SELiquidSubstanceQuantity::HasSaturation ( ) const
virtual

◆ SetHemoglobins()

void SELiquidSubstanceQuantity::SetHemoglobins ( const SESubstance &  Hb,
const SESubstance &  HbO2,
const SESubstance &  HbCO2,
const SESubstance &  HbO2CO2,
const SESubstance &  HbCO 
)
virtual

◆ SetToZero()

void SELiquidSubstanceQuantity::SetToZero ( )
overridevirtual

Implements SESubstanceQuantity.

Friends And Related Function Documentation

◆ PBSubstanceQuantity

friend class PBSubstanceQuantity
friend

◆ SELiquidCompartment

friend class SELiquidCompartment
friend

Member Data Documentation

◆ m_Children

std::vector<SELiquidSubstanceQuantity*> SELiquidSubstanceQuantity::m_Children
protected

◆ m_Compartment

SELiquidCompartment& SELiquidSubstanceQuantity::m_Compartment
protected

◆ m_Concentration

SEScalarMassPerVolume* SELiquidSubstanceQuantity::m_Concentration
protected

◆ m_Hb

const SESubstance* SELiquidSubstanceQuantity::m_Hb
protected

◆ m_HbCO

const SESubstance* SELiquidSubstanceQuantity::m_HbCO
protected

◆ m_HbCO2

const SESubstance* SELiquidSubstanceQuantity::m_HbCO2
protected

◆ m_HbO2

const SESubstance* SELiquidSubstanceQuantity::m_HbO2
protected

◆ m_HbO2CO2

const SESubstance* SELiquidSubstanceQuantity::m_HbO2CO2
protected

◆ m_isCO

bool SELiquidSubstanceQuantity::m_isCO
protected

◆ m_isCO2

bool SELiquidSubstanceQuantity::m_isCO2
protected

◆ m_isO2

bool SELiquidSubstanceQuantity::m_isO2
protected

◆ m_Mass

SEScalarMass* SELiquidSubstanceQuantity::m_Mass
protected

◆ m_MassCleared

SEScalarMass* SELiquidSubstanceQuantity::m_MassCleared
protected

◆ m_MassDeposited

SEScalarMass* SELiquidSubstanceQuantity::m_MassDeposited
protected

◆ m_MassExcreted

SEScalarMass* SELiquidSubstanceQuantity::m_MassExcreted
protected

◆ m_Molarity

SEScalarAmountPerVolume* SELiquidSubstanceQuantity::m_Molarity
protected

◆ m_PartialPressure

SEScalarPressure* SELiquidSubstanceQuantity::m_PartialPressure
protected

◆ m_Saturation

SEScalar0To1* SELiquidSubstanceQuantity::m_Saturation
protected

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.