#include <DynamicCellModelLoader.hpp>
Public Member Functions | |
DynamicCellModelLoader (const std::string &rLoadableModulePath) | |
~DynamicCellModelLoader () | |
AbstractCardiacCell * | CreateCell (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pStimulus) |
const std::string | GetLoadableModulePath () const |
Private Types | |
typedef AbstractCardiacCell * | CellCreationFunctionType (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pStimulus) |
Private Attributes | |
void * | mpDynamicModule |
CellCreationFunctionType * | mpCreationFunction |
std::string | mLoadableModulePath |
This class takes care of loading cell models at run-time from .so files.
Instantiate it with the path of a suitable .so file, then call CreateCell to create individual cells.
Definition at line 45 of file DynamicCellModelLoader.hpp.
typedef AbstractCardiacCell* DynamicCellModelLoader::CellCreationFunctionType(boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pStimulus) [private] |
Type of the cell creation function in the .so files
pSolver | ODE solver used to simulate the cell | |
pStimulus | intracellular stimulus |
Definition at line 92 of file DynamicCellModelLoader.hpp.
DynamicCellModelLoader::DynamicCellModelLoader | ( | const std::string & | rLoadableModulePath | ) |
Create a cell model loader by opening a loadable module (.so file) containing a cell model.
rLoadableModulePath | path to .so file |
Definition at line 36 of file DynamicCellModelLoader.cpp.
References mpCreationFunction, and mpDynamicModule.
DynamicCellModelLoader::~DynamicCellModelLoader | ( | ) |
Destructor. Closes the .so file.
Definition at line 60 of file DynamicCellModelLoader.cpp.
References mpDynamicModule.
AbstractCardiacCell * DynamicCellModelLoader::CreateCell | ( | boost::shared_ptr< AbstractIvpOdeSolver > | pSolver, | |
boost::shared_ptr< AbstractStimulusFunction > | pStimulus | |||
) |
Create a new cardiac cell from this dynamic module.
The caller takes responsibility for deleting the cell when it's finished with.
pSolver | ODE solver used to simulate the cell | |
pStimulus | intracellular stimulus |
Definition at line 68 of file DynamicCellModelLoader.cpp.
Referenced by HeartConfigRelatedCellFactory< SPACE_DIM >::CreateCellWithIntracellularStimulus().
const std::string DynamicCellModelLoader::GetLoadableModulePath | ( | ) | const |
Definition at line 82 of file DynamicCellModelLoader.cpp.
References mLoadableModulePath.
Referenced by AbstractDynamicallyLoadableEntity::save(), and AbstractCardiacPde< SPACE_DIM >::SaveCardiacCells().
std::string DynamicCellModelLoader::mLoadableModulePath [private] |
Absolute path to the .so file we have loaded.
Definition at line 99 of file DynamicCellModelLoader.hpp.
Referenced by GetLoadableModulePath().
Our cell creation function
Definition at line 96 of file DynamicCellModelLoader.hpp.
Referenced by DynamicCellModelLoader().
void* DynamicCellModelLoader::mpDynamicModule [private] |
Handle for the loaded .so file
Definition at line 85 of file DynamicCellModelLoader.hpp.
Referenced by DynamicCellModelLoader(), and ~DynamicCellModelLoader().