Chaste  Release::2018.1
AbstractCellProperty Class Reference

#include <AbstractCellProperty.hpp>

+ Inheritance diagram for AbstractCellProperty:
+ Collaboration diagram for AbstractCellProperty:

Public Member Functions

 AbstractCellProperty ()
 
virtual ~AbstractCellProperty ()
 
template<class CLASS >
bool IsType () const
 
template<class BASECLASS >
bool IsSubType () const
 
bool IsSame (const AbstractCellProperty *pOther) const
 
bool IsSame (boost::shared_ptr< const AbstractCellProperty > pOther) const
 
void IncrementCellCount ()
 
void DecrementCellCount ()
 
unsigned GetCellCount () const
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 

Private Attributes

unsigned mCellCount
 

Friends

class boost::serialization::access
 

Detailed Description

Base class for cell properties.

Each cell has a collection of cell properties, which may express such concepts as mutation states, inherited labels, or per-cell data.

Definition at line 49 of file AbstractCellProperty.hpp.

Constructor & Destructor Documentation

AbstractCellProperty::AbstractCellProperty ( )

Default constructor.

Definition at line 39 of file AbstractCellProperty.cpp.

AbstractCellProperty::~AbstractCellProperty ( )
virtual

Virtual destructor, to make this class polymorphic.

Definition at line 44 of file AbstractCellProperty.cpp.

Member Function Documentation

void AbstractCellProperty::DecrementCellCount ( )

Decrement mCellCount.

Definition at line 65 of file AbstractCellProperty.cpp.

References EXCEPTION, and mCellCount.

unsigned AbstractCellProperty::GetCellCount ( ) const
Returns
mCellCount

Definition at line 74 of file AbstractCellProperty.cpp.

References mCellCount.

void AbstractCellProperty::IncrementCellCount ( )

Increment mCellCount.

Definition at line 60 of file AbstractCellProperty.cpp.

References mCellCount.

bool AbstractCellProperty::IsSame ( const AbstractCellProperty pOther) const
Returns
whether this property is the same class as another.
Parameters
pOtherthe property to compare against.

Definition at line 48 of file AbstractCellProperty.cpp.

Referenced by IsSame(), and IsType().

bool AbstractCellProperty::IsSame ( boost::shared_ptr< const AbstractCellProperty pOther) const
Returns
whether this property is the same as another.
Parameters
pOtherthe property to compare against.

Definition at line 55 of file AbstractCellProperty.cpp.

References IsSame().

template<class BASECLASS >
bool AbstractCellProperty::IsSubType ( ) const
inline
Returns
whether this property is an instance of a particular class, or any subclass of that class.

It should be called like: bool is_mutation = p_property->IsSubType<AbstractCellMutationState>();

Definition at line 109 of file AbstractCellProperty.hpp.

template<class CLASS >
bool AbstractCellProperty::IsType ( ) const
inline
Returns
whether this property is a particular class. This tests for exact run-time class identity, and doesn't match subclasses.

The current implementation requires that all cell properties have a default constructor. For this method to be efficient, the default constructor must also be cheap.

It should be called like: bool healthy = p_property->IsType<HealthyMutationState>();

Definition at line 95 of file AbstractCellProperty.hpp.

References IsSame().

Referenced by LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().

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

We don't have any member variables yet, but let's make things easy for the future.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 67 of file AbstractCellProperty.hpp.

References mCellCount.

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 59 of file AbstractCellProperty.hpp.

Member Data Documentation

unsigned AbstractCellProperty::mCellCount
private

The number of cells with this cell property.

Definition at line 56 of file AbstractCellProperty.hpp.

Referenced by DecrementCellCount(), GetCellCount(), IncrementCellCount(), and serialize().


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