Chaste Commit::1fd4e48e3990e67db148bc1bc4cf6991a0049d0c
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::~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

◆ GetLoader()

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< ELEMENT_DIM, SPACE_DIM >::SaveCardiacCells().

◆ load()

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().

◆ save()

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().

◆ SetLoader()

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().

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 77 of file AbstractDynamicallyLoadableEntity.hpp.

Member Data Documentation

◆ mpLoader

DynamicCellModelLoaderPtr AbstractDynamicallyLoadableEntity::mpLoader
private

The loader for our shared object file

Definition at line 69 of file AbstractDynamicallyLoadableEntity.hpp.

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


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