00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _AgentLandOwner_h
00021 #define _AgentLandOwner_h
00022
00023
00024 #include "Agent.h"
00025 #include "AgentParcelList.h"
00026
00027
00028 class agentL : public agent
00029 { protected:
00030
00031 int farbe;
00032
00033 int fl_anzahl;
00034 int* parzellen;
00035
00036 p_liste bflaech;
00037 MatrixDouble wr;
00038
00039 double* erw_N_i;
00040 double* N_i;
00041 double* erw_Ext_i;
00042 double* Ext_i;
00043 double* WPa_i;
00044
00045 double pacht;
00046
00047 public:
00048
00049
00050 agentL(int agid, int scid, int skid, int numP);
00051
00052
00053 virtual ~agentL()
00054 { delete [] parzellen;
00055 wr.deallokieren();
00056
00057
00058 if(typeHydroNull != HYDRO_MDL() )
00059 { delete [] erw_N_i;
00060 delete [] N_i;
00061 delete [] erw_Ext_i;
00062 delete [] Ext_i;
00063 delete [] WPa_i;
00064 }
00065 }
00066
00067
00068 virtual int get_farbe();
00069 virtual void set_farbe(int clr56);
00070
00071 virtual int getNumberOfParcels();
00072 virtual void setNumberOfParcels(int numP);
00073 virtual int checkNumPlots();
00074 virtual int get_parzellen(int sType);
00075 virtual void set_parzellen(int sType, int numP);
00076
00077 virtual void set_bflaech_verpachtet(int r, int c);
00078 virtual void make_bflaech(int c, int r, int typ, int fst, double dst);
00079 virtual int get_bflaech_anzahl();
00080 virtual void bflaechen_printOnScreen();
00081 virtual void bflaech_einfuegen(parzelle*);
00082 virtual int getNumPlotsInClass(int sClass);
00083
00084 virtual double get_N_i(int month);
00085 virtual double get_WPa_i(int month);
00086 virtual void set_WPa_i(int month, double vol);
00087 virtual void waterrights_eintragen(int srcID, double share);
00088 virtual void hole_durchs_waterrights(w_rechte*);
00089 virtual void waterrights_austragen(w_rechte*);
00090 virtual void printOnScreenWaterRights();
00091
00092 virtual double receiveNetInflows(int month, int = true);
00093 virtual double receivePlantWaterDemandsSatisfied(int month);
00094
00095 virtual void makeVirtualWaterExpectation();
00096 virtual void ausserldw_angebote();
00097
00098 virtual void writeAgtIdEntry(FILE* stream);
00099 virtual void writeAgtWaterData(int month);
00100 };
00101
00102
00103 #endif