SESubstanceInfusion Class Reference

#include <SESubstanceInfusion.h>

Inherits SEPatientAction.

Public Member Functions

 SESubstanceInfusion (const SESubstance &substance, Logger *logger=nullptr)
 
virtual ~SESubstanceInfusion ()
 
virtual void Clear ()
 
virtual void Copy (const SESubstanceInfusion &src, bool=false)
 
virtual bool IsValid () const
 
virtual bool IsActive () const
 
virtual void Deactivate ()
 
virtual bool HasConcentration () const
 
virtual SEScalarMassPerVolumeGetConcentration ()
 
virtual double GetConcentration (const MassPerVolumeUnit &unit) const
 
virtual bool HasRate () const
 
virtual SEScalarVolumePerTimeGetRate ()
 
virtual double GetRate (const VolumePerTimeUnit &unit) const
 
virtual bool HasVolume () const
 
virtual SEScalarVolumeGetVolume ()
 
virtual double GetVolume (const VolumeUnit &unit) const
 
virtual SESubstanceGetSubstance ()
 
virtual const SESubstanceGetSubstance () const
 
virtual void ToString (std::ostream &str) const
 
virtual const SEScalarGetScalar (const std::string &name)
 
- Public Member Functions inherited from SEPatientAction
 SEPatientAction (Logger *logger=nullptr)
 
virtual ~SEPatientAction ()
 
- Public Member Functions inherited from SEAction
 SEAction (Logger *logger)
 
virtual ~SEAction ()
 
 SEAction (const SEAction &)=delete
 
SEActionoperator= (const SEAction &)=delete
 
virtual void Activate ()
 
virtual std::string GetComment () const
 
virtual void SetComment (const std::string &comment)
 
virtual bool HasComment () const
 
virtual void InvalidateComment ()
 
- 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
 

Protected Attributes

SEScalarMassPerVolumem_Concentration
 
SEScalarVolumePerTimem_Rate
 
SEScalarVolumem_Volume
 
const SESubstancem_Substance
 
- 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 Public Attributes inherited from Loggable
static const std::string empty
 

Constructor & Destructor Documentation

◆ SESubstanceInfusion()

SESubstanceInfusion::SESubstanceInfusion ( const SESubstance substance,
Logger logger = nullptr 
)

◆ ~SESubstanceInfusion()

SESubstanceInfusion::~SESubstanceInfusion ( )
virtual

Member Function Documentation

◆ Clear()

void SESubstanceInfusion::Clear ( )
virtual

Reimplemented from SEPatientAction.

◆ Copy()

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

◆ Deactivate()

void SESubstanceInfusion::Deactivate ( )
virtual

Reimplemented from SEAction.

◆ GetConcentration() [1/2]

SEScalarMassPerVolume & SESubstanceInfusion::GetConcentration ( )
virtual

◆ GetConcentration() [2/2]

double SESubstanceInfusion::GetConcentration ( const MassPerVolumeUnit unit) const
virtual

◆ GetRate() [1/2]

SEScalarVolumePerTime & SESubstanceInfusion::GetRate ( )
virtual

◆ GetRate() [2/2]

double SESubstanceInfusion::GetRate ( const VolumePerTimeUnit unit) const
virtual

◆ GetScalar()

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

Implements SEAction.

◆ GetSubstance() [1/2]

SESubstance & SESubstanceInfusion::GetSubstance ( )
virtual

◆ GetSubstance() [2/2]

const SESubstance & SESubstanceInfusion::GetSubstance ( ) const
virtual

◆ GetVolume() [1/2]

SEScalarVolume & SESubstanceInfusion::GetVolume ( )
virtual

◆ GetVolume() [2/2]

double SESubstanceInfusion::GetVolume ( const VolumeUnit unit) const
virtual

◆ HasConcentration()

bool SESubstanceInfusion::HasConcentration ( ) const
virtual

◆ HasRate()

bool SESubstanceInfusion::HasRate ( ) const
virtual

◆ HasVolume()

bool SESubstanceInfusion::HasVolume ( ) const
virtual

◆ IsActive()

bool SESubstanceInfusion::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 SESubstanceInfusion::IsValid ( ) const
virtual

Test if the action has all data it needs

Reimplemented from SEPatientAction.

◆ ToString()

void SESubstanceInfusion::ToString ( std::ostream &  str) const
virtual

Implements SEPatientAction.

Friends And Related Function Documentation

◆ PBPatientAction

friend class PBPatientAction
friend

Member Data Documentation

◆ m_Concentration

SEScalarMassPerVolume* SESubstanceInfusion::m_Concentration
protected

◆ m_Rate

SEScalarVolumePerTime* SESubstanceInfusion::m_Rate
protected

◆ m_Substance

const SESubstance& SESubstanceInfusion::m_Substance
protected

◆ m_Volume

SEScalarVolume* SESubstanceInfusion::m_Volume
protected

Distributed under the Apache License, Version 2.0.

See accompanying NOTICE file for details.