Gadget
base.h
Go to the documentation of this file.
1 #ifndef base_h
2 #define base_h
3 
4 #include "areatime.h"
5 #include "hasname.h"
6 #include "livesonareas.h"
7 
13 class BaseClass : public HasName, public LivesOnAreas {
14 public:
18  BaseClass() {};
23  BaseClass(const char* givenname) : HasName(givenname) {};
29  BaseClass(const char* givenname, const IntVector& Areas) : HasName(givenname), LivesOnAreas(Areas) {};
33  virtual ~BaseClass() {};
39  virtual void calcNumbers(int area, const TimeClass* const TimeInfo) = 0;
46  virtual void calcEat(int area, const AreaClass* const Area, const TimeClass* const TimeInfo) = 0;
52  virtual void checkEat(int area, const TimeClass* const TimeInfo) = 0;
58  virtual void adjustEat(int area, const TimeClass* const TimeInfo) = 0;
64  virtual void reducePop(int area, const TimeClass* const TimeInfo) = 0;
71  virtual void Grow(int area, const AreaClass* const Area, const TimeClass* const TimeInfo) = 0;
77  virtual void updateAgePart1(int area, const TimeClass* const TimeInfo) = 0;
83  virtual void updateAgePart2(int area, const TimeClass* const TimeInfo) = 0;
89  virtual void updateAgePart3(int area, const TimeClass* const TimeInfo) = 0;
95  virtual void updatePopulationPart1(int area, const TimeClass* const TimeInfo) = 0;
101  virtual void updatePopulationPart2(int area, const TimeClass* const TimeInfo) = 0;
107  virtual void updatePopulationPart3(int area, const TimeClass* const TimeInfo) = 0;
113  virtual void updatePopulationPart4(int area, const TimeClass* const TimeInfo) = 0;
119  virtual void updatePopulationPart5(int area, const TimeClass* const TimeInfo) = 0;
124  virtual void Migrate(const TimeClass* const TimeInfo) = 0;
129  virtual void Reset(const TimeClass* const TimeInfo) = 0;
134  virtual void Print(ofstream& outfile) const = 0;
135 };
136 
137 #endif
This is the class used to store information about the areas used for the current model.
Definition: areatime.h:18
This is the base class for any object that can be dynamically modelled within Gadget.
Definition: base.h:13
virtual void updateAgePart1(int area, const TimeClass *const TimeInfo)=0
This function will calculate any transition of the model population for an area in the model.
virtual void updateAgePart2(int area, const TimeClass *const TimeInfo)=0
This function will calculate the age increase of the model population for an area in the model.
virtual void calcEat(int area, const AreaClass *const Area, const TimeClass *const TimeInfo)=0
This function will calculate the modelled consumption for an area in the model.
virtual void updatePopulationPart5(int area, const TimeClass *const TimeInfo)=0
This function will calculate add the strayed stock into the model population for an area in the model...
virtual void calcNumbers(int area, const TimeClass *const TimeInfo)=0
This function will update the model population for an area in the model.
BaseClass(const char *givenname, const IntVector &Areas)
This is the BaseClass constructor for an object with a name and an area.
Definition: base.h:29
virtual void Print(ofstream &outfile) const =0
This function will print the model population.
virtual void Reset(const TimeClass *const TimeInfo)=0
This function will reset the model population.
virtual void updateAgePart3(int area, const TimeClass *const TimeInfo)=0
This function will implement the transiton of the model population for an area in the model.
virtual void checkEat(int area, const TimeClass *const TimeInfo)=0
This function will check the modelled consumption for an area in the model.
virtual void Migrate(const TimeClass *const TimeInfo)=0
This function will implement the migration of the model population for the model.
BaseClass()
This is the default BaseClass constructor.
Definition: base.h:18
virtual void Grow(int area, const AreaClass *const Area, const TimeClass *const TimeInfo)=0
This function will calculate the growth of the model population for an area in the model.
virtual void reducePop(int area, const TimeClass *const TimeInfo)=0
This function will reduce the model population for an area in the model.
virtual ~BaseClass()
This is the default BaseClass destructor.
Definition: base.h:33
virtual void adjustEat(int area, const TimeClass *const TimeInfo)=0
This function will adjust the modelled consumption for an area in the model.
virtual void updatePopulationPart4(int area, const TimeClass *const TimeInfo)=0
This function will calculate calculate the straying of the model population for an area in the model.
virtual void updatePopulationPart1(int area, const TimeClass *const TimeInfo)=0
This function will calculate the spawning of the model population for an area in the model.
virtual void updatePopulationPart2(int area, const TimeClass *const TimeInfo)=0
This function will calculate add the newly matured stock into the model population for an area in the...
virtual void updatePopulationPart3(int area, const TimeClass *const TimeInfo)=0
This function will calculate add the new recruits into the model population for an area in the model.
BaseClass(const char *givenname)
This is the BaseClass constructor for an object with a name.
Definition: base.h:23
This is the base class for any object that has a name.
Definition: hasname.h:10
This class implements a dynamic vector of int values.
Definition: intvector.h:11
This is the class used to store information about the areas an object is defined on for the current m...
Definition: livesonareas.h:10
This is the class used to store information about the timesteps used for the current model.
Definition: areatime.h:87