36 #ifndef ABSTRACTCELLCYCLEMODEL_HPP_ 37 #define ABSTRACTCELLCYCLEMODEL_HPP_ 41 #include "Identifiable.hpp" 43 #include <boost/serialization/base_object.hpp> 47 #include "OutputFileHandler.hpp" 48 #include "CellCyclePhases.hpp" 49 #include "SimulationTime.hpp" 53 typedef boost::shared_ptr<Cell> CellPtr;
73 template<
class Archive>
74 void serialize(Archive & archive,
const unsigned int version)
78 archive & p_time_wrapper;
virtual void SetBirthTime(double birthTime)
virtual double GetAverageStemCellCycleTime()=0
void OutputCellCycleModelInfo(out_stream &rParamsFile)
virtual ~AbstractCellCycleModel()
AbstractCellCycleModel & operator=(const AbstractCellCycleModel &)
#define CLASS_IS_ABSTRACT(T)
static SimulationTime * Instance()
virtual bool CanCellTerminallyDifferentiate()
virtual double GetAverageTransitCellCycleTime()=0
void SetCell(CellPtr pCell)
virtual bool ReadyToDivide()=0
virtual void InitialiseDaughterCell()
void SetDimension(unsigned dimension)
friend class boost::serialization::access
void serialize(Archive &archive, const unsigned int version)
virtual void OutputCellCycleModelParameters(out_stream &rParamsFile)=0
double GetBirthTime() const
virtual void ResetForDivision()
unsigned GetDimension() const
SerializableSingleton< SINGLETON_CLASS > * GetSerializationWrapper() const
virtual AbstractCellCycleModel * CreateCellCycleModel()=0
virtual void Initialise()