00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _AgentParcel_h
00021 #define _AgentParcel_h
00022
00023 #include "CropSoil.h"
00024
00025 class parzelle
00026 { protected:
00027 int x;
00028 int y;
00029 int typ;
00030 int b_nr;
00031 int b_sc;
00032 int p_sk;
00033 double entf;
00034 int zustand;
00035
00036
00037
00038 int nruID;
00039 lUseH luHis;
00040 sProc* slPro;
00041
00042
00043 bool hasCrop;
00044 int cropA;
00045
00046 double* irrigQ;
00047
00048
00049 double precip;
00050 double soilMoisture;
00051
00052
00053 public:
00054
00055
00056 parzelle(int, int, int, int, int, int, int = 1, double = 0.0);
00057 virtual ~parzelle()
00058 { delete slPro;
00059
00060 delete [] irrigQ;
00061 }
00062
00063
00064 parzelle* nextParzelle;
00065 parzelle* prevParzelle;
00066
00067 void setNextPtr_P (parzelle*);
00068 parzelle* getNext_P();
00069
00070 void setPrevPtr_P (parzelle*);
00071 parzelle* getPrev_P();
00072
00073
00074
00075 virtual int get_x();
00076 virtual int get_y();
00077
00078 virtual int get_col();
00079 virtual int get_row();
00080 virtual int get_typ();
00081
00082 virtual int get_bnr();
00083 int getCatchmentOfOwner() { return b_sc;}
00084
00085 virtual int get_psc();
00086 virtual int get_psk();
00087 virtual int get_zustand();
00088 virtual double get_entf();
00089
00090
00091 virtual void set_bnr(int);
00092 virtual void set_typ(int);
00093 virtual void set_entf(double);
00094 virtual void hofstelle();
00095 virtual void raeumen();
00096 virtual void belegen();
00097 virtual void verpachten();
00098
00099
00100 virtual int getNruID();
00101 virtual void setNruID(int);
00102 virtual void setSoilProc(sProc*& sPro);
00103 virtual void setLandUseH(const lUseH& ldUs);
00104 virtual sProc* getSoilProc(void);
00105 virtual lUseH getLandUseH(void);
00106 virtual void updateLandUseH(double STN, double RES, double MAN);
00107
00108 virtual void printToScreen();
00109 virtual void writeToFile(ofstream& out);
00110 virtual void writeToBuffer(char* buffer);
00111
00112
00113 bool get_hasCrop(void) { return hasCrop;};
00114 void set_hasCropTrue(void) {hasCrop = true;};
00115 void set_hasCropFalse(void) {hasCrop = false;};
00116
00118
00119
00120
00121 void setByContent(Content cont,double val);
00122 double getByContent(Content cont);
00123
00124 void setByContent_monthly(Content cont, int month, double val);
00125 double getByContent_monthly(Content cont, int month);
00126
00127
00128 void set_cropA(int crA) {cropA = crA;};
00129 int get_cropA(void) {return cropA;};
00130
00131 void set_Precip(double precip_) {precip = precip_;};
00132 double get_Precip() {return precip;};
00133
00134 void set_SoilMoisture(double soilMoisture_) {soilMoisture = soilMoisture_;};
00135 double get_SoilMoisture() {return soilMoisture;};
00136
00137
00138 void set_irrigQ(double q, int mTot);
00139 double get_irrigQ(int mTot);
00140
00141
00142
00143 };
00144
00145
00146 #endif
00147