Chaste  Release::2018.1
AbstractDynamicallyLoadableEntity Class Reference

#include <AbstractDynamicallyLoadableEntity.hpp>

+ Collaboration diagram for AbstractDynamicallyLoadableEntity:

Public Member Functions

const DynamicCellModelLoaderPtr GetLoader () const
 
void SetLoader (DynamicCellModelLoaderPtr pLoader)
 
virtual ~AbstractDynamicallyLoadableEntity ()
 

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

DynamicCellModelLoaderPtr mpLoader
 

Friends

class boost::serialization::access
 

Detailed Description

A mixin class for things that get loaded dynamically to maintain an association between instance objects and the shared library they have been loaded from.

Definition at line 48 of file AbstractDynamicallyLoadableEntity.hpp.

Constructor & Destructor Documentation

AbstractDynamicallyLoadableEntity::~AbstractDynamicallyLoadableEntity ( )
virtual

Virtual destructor to ensure we're polymorphic

Todo:
#1957

Definition at line 50 of file AbstractDynamicallyLoadableEntity.cpp.

References DynamicModelLoaderRegistry::Instance(), mpLoader, and DynamicModelLoaderRegistry::ScheduleForDeletion().

Member Function Documentation

const DynamicCellModelLoaderPtr AbstractDynamicallyLoadableEntity::GetLoader ( ) const
Returns
a shared pointer to the loader

Definition at line 45 of file AbstractDynamicallyLoadableEntity.cpp.

References mpLoader.

Referenced by load(), save(), and AbstractCardiacTissue< SPACE_DIM >::SaveCardiacCells().

template<class Archive >
void AbstractDynamicallyLoadableEntity::load ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Load the path to the loadable module, and set our loader from the registry.

Parameters
archivethe archive
versionthe archive version

Definition at line 97 of file AbstractDynamicallyLoadableEntity.hpp.

References GetLoader(), DynamicModelLoaderRegistry::Instance(), and SetLoader().

template<class Archive >
void AbstractDynamicallyLoadableEntity::save ( Archive &  archive,
const unsigned int  version 
) const
inlineprivate

Save the path to the loadable module.

Parameters
archivethe archive
versionthe archive version

Definition at line 85 of file AbstractDynamicallyLoadableEntity.hpp.

References GetLoader().

void AbstractDynamicallyLoadableEntity::SetLoader ( DynamicCellModelLoaderPtr  pLoader)

Should only be called by a dynamic cell model loader

Parameters
pLoadera shared pointer to the loader

Definition at line 40 of file AbstractDynamicallyLoadableEntity.cpp.

References mpLoader.

Referenced by load().

Member Data Documentation

DynamicCellModelLoaderPtr AbstractDynamicallyLoadableEntity::mpLoader
private

The loader for our shared object file

Definition at line 69 of file AbstractDynamicallyLoadableEntity.hpp.

Referenced by GetLoader(), SetLoader(), and ~AbstractDynamicallyLoadableEntity().


The documentation for this class was generated from the following files: