#include <DynamicCellModelLoader.hpp>
Public Member Functions | |
DynamicCellModelLoader (const std::string &rLoadableModulePath) | |
~DynamicCellModelLoader () | |
AbstractCardiacCellInterface * | CreateCell (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pStimulus) |
const std::string | GetLoadableModulePath () const |
Private Member Functions | |
typedef AbstractCardiacCellInterface * | CellCreationFunctionType (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pStimulus) |
Private Attributes | |
void * | mpDynamicModule |
CellCreationFunctionType * | mpCreationFunction |
std::string | mLoadableModulePath |
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.
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 CellCreationFunctionType(), EXCEPTION, mpCreationFunction, and mpDynamicModule.
DynamicCellModelLoader::~DynamicCellModelLoader | ( | ) |
Destructor. Closes the .so file.
Definition at line 60 of file DynamicCellModelLoader.cpp.
References mpDynamicModule.
AbstractCardiacCellInterface * 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 AbstractCardiacTissue< SPACE_DIM >::SaveCardiacCells().
typedef AbstractCardiacCellInterface* 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 |
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().
CellCreationFunctionType* DynamicCellModelLoader::mpCreationFunction [private] |
Our cell creation function
Definition at line 96 of file DynamicCellModelLoader.hpp.
Referenced by DynamicCellModelLoader().
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().