![]() |
Chaste Commit::333233612e3dcc941d260418acd7b5ccdc30390e
|
#include <AbstractCardiacCellWithModifiers.hpp>
Public Member Functions | |
AbstractCardiacCellWithModifiers (boost::shared_ptr< AbstractIvpOdeSolver > pOdeSolver, unsigned numberOfStateVariables, unsigned voltageIndex, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus) | |
boost::shared_ptr< AbstractModifier > | GetModifier (const std::string &rModifierName) |
bool | HasModifier (const std::string &rModifierName) const |
void | SetModifier (const std::string &rModifierName, boost::shared_ptr< AbstractModifier > &pNewModifier) |
Protected Member Functions | |
void | AddModifier (std::string modifierName, boost::shared_ptr< AbstractModifier > &pModifier) |
Private Member Functions | |
template<class Archive > | |
void | save (Archive &archive, const unsigned int version) const |
template<class Archive > | |
void | load (Archive &archive, const unsigned int version) |
Private Attributes | |
std::map< std::string, boost::shared_ptr< AbstractModifier > * > | mModifiersMap |
Friends | |
class | boost::serialization::access |
A base class for cardiac cells that have been altered to include calls to subclasses of AbstractModifier when computing their derivatives.
Definition at line 62 of file AbstractCardiacCellWithModifiers.hpp.
AbstractCardiacCellWithModifiers< CARDIAC_CELL >::AbstractCardiacCellWithModifiers | ( | boost::shared_ptr< AbstractIvpOdeSolver > | pOdeSolver, |
unsigned | numberOfStateVariables, | ||
unsigned | voltageIndex, | ||
boost::shared_ptr< AbstractStimulusFunction > | pIntracellularStimulus | ||
) |
Create a new cardiac cell.
This calls the main CARDIAC_CELL constructor, but also supplies modifiers for working with metadata-enabled CellML files.
pOdeSolver | the ODE solver to use when simulating this cell |
numberOfStateVariables | the size of the ODE system modelling this cell |
voltageIndex | the index of the transmembrane potential within the vector of state variables |
pIntracellularStimulus | the intracellular stimulus current |
Definition at line 48 of file AbstractCardiacCellWithModifiers.cpp.
References AbstractCardiacCellWithModifiers< CARDIAC_CELL >::mModifiersMap.
|
protected |
Add a new modifier - should only be called by the subclass constructors. Each modifier pointer is set to a DummyModifier by this method.
modifierName | The name which will act as a 'key' for this modifier. |
pModifier | The pointer to the modifier in the concrete class. |
Definition at line 41 of file AbstractCardiacCellWithModifiers.cpp.
boost::shared_ptr< AbstractModifier > AbstractCardiacCellWithModifiers< CARDIAC_CELL >::GetModifier | ( | const std::string & | rModifierName | ) |
Get access to a modifier
rModifierName | The oxmeta name of the modifier to fetch. |
Definition at line 58 of file AbstractCardiacCellWithModifiers.cpp.
References EXCEPTION.
bool AbstractCardiacCellWithModifiers< CARDIAC_CELL >::HasModifier | ( | const std::string & | rModifierName | ) | const |
Check for the presence of a modifier. To avoid the necessity of using try...catch around every call to GetModifier().
rModifierName | The oxmeta name of a modifier |
Definition at line 68 of file AbstractCardiacCellWithModifiers.cpp.
|
inlineprivate |
Unarchive the member variables.
archive | |
version |
Definition at line 99 of file AbstractCardiacCellWithModifiers.hpp.
References AbstractCardiacCellWithModifiers< CARDIAC_CELL >::mModifiersMap, and NEVER_REACHED.
|
inlineprivate |
Archive the member variables.
archive | |
version |
Definition at line 74 of file AbstractCardiacCellWithModifiers.hpp.
References AbstractCardiacCellWithModifiers< CARDIAC_CELL >::mModifiersMap.
void AbstractCardiacCellWithModifiers< CARDIAC_CELL >::SetModifier | ( | const std::string & | rModifierName, |
boost::shared_ptr< AbstractModifier > & | pNewModifier | ||
) |
Set a new modifier
rModifierName | The oxmeta name of the modifier to replace. |
pNewModifier | The new modifier object to use. |
Definition at line 74 of file AbstractCardiacCellWithModifiers.cpp.
References EXCEPTION.
|
friend |
Needed for serialization.
Definition at line 66 of file AbstractCardiacCellWithModifiers.hpp.
|
private |
A map between a string description and the location of the relevant modifier in concrete classes.
Definition at line 132 of file AbstractCardiacCellWithModifiers.hpp.
Referenced by AbstractCardiacCellWithModifiers< CARDIAC_CELL >::AbstractCardiacCellWithModifiers(), AbstractCardiacCellWithModifiers< CARDIAC_CELL >::load(), and AbstractCardiacCellWithModifiers< CARDIAC_CELL >::save().