Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
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::AbstractCellProperty ( )

Default constructor.

Definition at line 39 of file AbstractCellProperty.cpp.

◆ ~AbstractCellProperty()

AbstractCellProperty::~AbstractCellProperty ( )
virtual

Virtual destructor, to make this class polymorphic.

Definition at line 44 of file AbstractCellProperty.cpp.

Member Function Documentation

◆ DecrementCellCount()

void AbstractCellProperty::DecrementCellCount ( )

Decrement mCellCount.

Definition at line 65 of file AbstractCellProperty.cpp.

References EXCEPTION, and mCellCount.

◆ GetCellCount()

unsigned AbstractCellProperty::GetCellCount ( ) const
Returns
mCellCount

Definition at line 74 of file AbstractCellProperty.cpp.

References mCellCount.

◆ IncrementCellCount()

void AbstractCellProperty::IncrementCellCount ( )

Increment mCellCount.

Definition at line 60 of file AbstractCellProperty.cpp.

References mCellCount.

◆ IsSame() [1/2]

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

◆ IsSame() [2/2]

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

◆ IsSubType()

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.

◆ IsType()

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 ExponentialG1GenerationalCellCycleModel::SetG1Duration(), FixedSequenceCellCycleModel::SetG1Duration(), GammaG1CellCycleModel::SetG1Duration(), and LinearSpringWithVariableSpringConstantsForce< DIM >::VariableSpringConstantMultiplicationFactor().

◆ serialize()

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 Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 59 of file AbstractCellProperty.hpp.

Member Data Documentation

◆ mCellCount

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: