1 #ifndef POPULATIONINTERFACES_H 3 #define POPULATIONINTERFACES_H 47 virtual int getNumberOfPeople()
const = 0;
50 virtual int getNumberOfMen()
const = 0;
53 virtual int getNumberOfWomen()
const = 0;
56 virtual int getNumberOfDeceasedPeople()
const = 0;
62 virtual void addNewPerson(
PersonBase *pPerson) = 0;
68 virtual void setPersonDied(
PersonBase *pPerson) = 0;
73 virtual void markAffectedPerson(
PersonBase *pPerson)
const = 0;
108 virtual bool_t init() = 0;
121 virtual bool_t run(
double &tMax, int64_t &maxEvents,
double startTime = 0) = 0;
136 virtual double getTime()
const = 0;
151 #endif // POPULATIONINTERFACES_H Base class to be able to store algorithm-specific information in the PersonBase object for a person i...
Definition: populationinterfaces.h:144
Type to return true/false with error description.
Definition: booltype.h:25
This is a base class describing the simulation state of an mNRM algorithm.
Definition: algorithm.h:23
void setExtraStateInfo(PopulationStateExtra *pExtra)
This allows you to store additional information for a state that implements this PopulationStateInter...
Definition: populationinterfaces.h:78
PopulationStateExtra * getExtraStateInfo() const
Retrieves the PopulationStateExtra instance that was stored using PopulationStateInterface::setExtraS...
Definition: populationinterfaces.h:82
This class allows you to generate random numbers, and uses the GNU Scientific Library for this...
Definition: gslrandomnumbergenerator.h:16
This is the base class for events in population-based simulations.
Definition: populationevent.h:63
An interface to allow a member function PopulationAlgorithmAboutToFireInterface::onAboutToFire to be ...
Definition: populationinterfaces.h:89
This is the base class for a person in a population-based simulation.
Definition: personbase.h:23
An interface for a population based mNRM algorithm.
Definition: populationinterfaces.h:101
Interface for a simulation state for the population-based algorithm, specifying member functions that...
Definition: populationinterfaces.h:26