Chaste
Release::2017.1
|
#include <CellPropertyCollection.hpp>
Public Types | |
typedef CollectionType::iterator | Iterator |
Public Member Functions | |
CellPropertyCollection () | |
void | AddProperty (const boost::shared_ptr< AbstractCellProperty > &rProp) |
CellPropertyRegistry * | GetCellPropertyRegistry () |
void | SetCellPropertyRegistry (CellPropertyRegistry *pRegistry) |
bool | HasProperty (const boost::shared_ptr< AbstractCellProperty > &rProp) const |
template<typename CLASS > | |
bool | HasProperty () const |
template<typename BASECLASS > | |
bool | HasPropertyType () const |
template<typename CLASS > | |
void | RemoveProperty () |
void | RemoveProperty (const boost::shared_ptr< AbstractCellProperty > &rProp) |
unsigned | GetSize () const |
Iterator | Begin () |
Iterator | End () |
boost::shared_ptr< AbstractCellProperty > | GetProperty () const |
template<typename CLASS > | |
CellPropertyCollection | GetProperties () const |
template<typename BASECLASS > | |
CellPropertyCollection | GetPropertiesType () const |
Private Types | |
typedef std::set< boost::shared_ptr< AbstractCellProperty > > | CollectionType |
typedef CollectionType::const_iterator | ConstIteratorType |
typedef CollectionType::iterator | IteratorType |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Private Attributes | |
CollectionType | mProperties |
CellPropertyRegistry * | mpCellPropertyRegistry |
Friends | |
class | boost::serialization::access |
Cell property collection class.
Contains methods for accessing and interrogating a set of cell properties.
Definition at line 55 of file CellPropertyCollection.hpp.
|
private |
The type of container used to store properties
Definition at line 59 of file CellPropertyCollection.hpp.
|
private |
Type of a const iterator over the container
Definition at line 62 of file CellPropertyCollection.hpp.
typedef CollectionType::iterator CellPropertyCollection::Iterator |
An iterator type over this collection. Don't rely on the particular implementation of the iterator.
Definition at line 191 of file CellPropertyCollection.hpp.
|
private |
Type of an iterator over the container
Definition at line 65 of file CellPropertyCollection.hpp.
CellPropertyCollection::CellPropertyCollection | ( | ) |
Create an empty collection of cell properties.
Definition at line 38 of file CellPropertyCollection.cpp.
Referenced by serialize().
void CellPropertyCollection::AddProperty | ( | const boost::shared_ptr< AbstractCellProperty > & | rProp | ) |
Add a new property to this collection.
rProp | the property to add |
Definition at line 61 of file CellPropertyCollection.cpp.
References EXCEPTION, HasProperty(), and mProperties.
Referenced by Cell::AddCellProperty(), Cell::Cell(), Cell::Divide(), GetProperties(), GetPropertiesType(), and serialize().
CellPropertyCollection::Iterator CellPropertyCollection::Begin | ( | ) |
Definition at line 93 of file CellPropertyCollection.cpp.
References mProperties.
Referenced by Cell::Cell(), Cell::Kill(), and Cell::RemoveCellProperty().
CellPropertyCollection::Iterator CellPropertyCollection::End | ( | ) |
Definition at line 98 of file CellPropertyCollection.cpp.
References mProperties.
Referenced by Cell::Cell(), Cell::Kill(), and Cell::RemoveCellProperty().
CellPropertyRegistry * CellPropertyCollection::GetCellPropertyRegistry | ( | ) |
Definition at line 43 of file CellPropertyCollection.cpp.
References CellPropertyRegistry::Instance(), and mpCellPropertyRegistry.
Referenced by serialize(), and Cell::StartApoptosis().
|
inline |
Definition at line 214 of file CellPropertyCollection.hpp.
References AddProperty().
Referenced by CellLabelWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), CellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell(), CellLabelWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell(), and CellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell().
|
inline |
Definition at line 232 of file CellPropertyCollection.hpp.
References AddProperty().
Referenced by Cell::GetAncestor(), Cell::GetCellData(), Cell::GetCellId(), Cell::GetCellProliferativeType(), Cell::GetCellVecData(), Cell::GetMutationState(), and Cell::SetAncestor().
boost::shared_ptr< AbstractCellProperty > CellPropertyCollection::GetProperty | ( | ) | const |
Definition at line 103 of file CellPropertyCollection.cpp.
References EXCEPTION, GetSize(), and mProperties.
Referenced by Cell::GetAncestor(), Cell::GetCellData(), CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), CellLabelWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), CellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), Cell::GetCellId(), Cell::GetCellProliferativeType(), Cell::GetCellVecData(), Cell::GetMutationState(), CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell(), CellLabelWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell(), and CellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell().
unsigned CellPropertyCollection::GetSize | ( | ) | const |
Definition at line 88 of file CellPropertyCollection.cpp.
References mProperties.
Referenced by Cell::GetAncestor(), Cell::GetCellData(), CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput(), Cell::GetCellId(), Cell::GetCellProliferativeType(), Cell::GetCellVecData(), Cell::GetMutationState(), GetProperty(), RemoveProperty(), Cell::SetAncestor(), and CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell().
bool CellPropertyCollection::HasProperty | ( | const boost::shared_ptr< AbstractCellProperty > & | rProp | ) | const |
rProp | the property to compare against |
Definition at line 70 of file CellPropertyCollection.cpp.
References mProperties.
Referenced by Cell::AddCellProperty(), Cell::Cell(), and Cell::HasCellProperty().
|
inline |
Should be used like bool healthy = collection.HasProperty<WildTypeCellMutationState>();
Definition at line 127 of file CellPropertyCollection.hpp.
Referenced by AddProperty(), and serialize().
|
inline |
Should be used like collection.HasPropertyType<AbstractCellMutationState>();
Definition at line 146 of file CellPropertyCollection.hpp.
Referenced by Cell::Cell(), Cell::Divide(), and Cell::HasCellVecData().
|
inline |
Remove a single property of the given type.
Definition at line 162 of file CellPropertyCollection.hpp.
References EXCEPTION, and GetSize().
Referenced by Cell::Divide(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::DivideLongSprings(), Cell::RemoveCellProperty(), Cell::SetCellProliferativeType(), and Cell::SetMutationState().
void CellPropertyCollection::RemoveProperty | ( | const boost::shared_ptr< AbstractCellProperty > & | rProp | ) |
Remove the given property from this collection.
rProp | the property to remove |
Definition at line 75 of file CellPropertyCollection.cpp.
References EXCEPTION, and mProperties.
|
inlineprivate |
Save/load our member variables.
archive | the archive |
version | the current version of this class |
Definition at line 82 of file CellPropertyCollection.hpp.
References AddProperty(), CellPropertyCollection(), GetCellPropertyRegistry(), HasProperty(), mProperties, and SetCellPropertyRegistry().
void CellPropertyCollection::SetCellPropertyRegistry | ( | CellPropertyRegistry * | pRegistry | ) |
Set the CellPropertyRegistry for this cell
pRegistry | The cell property registry (assigned in the AbstractCellPopulation constructor). |
Definition at line 56 of file CellPropertyCollection.cpp.
References mpCellPropertyRegistry.
Referenced by serialize().
|
friend |
Needed for serialization.
Definition at line 74 of file CellPropertyCollection.hpp.
|
private |
Cell property registry.
Definition at line 71 of file CellPropertyCollection.hpp.
Referenced by GetCellPropertyRegistry(), and SetCellPropertyRegistry().
|
private |
The properties stored in this collection.
Definition at line 68 of file CellPropertyCollection.hpp.
Referenced by AddProperty(), Begin(), End(), GetProperty(), GetSize(), HasProperty(), RemoveProperty(), and serialize().