00001 //--------------------------------------------------------------------------- 00002 00003 #ifndef SelfThinningH 00004 #define SelfThinningH 00005 //--------------------------------------------------------------------------- 00006 #include "MortalityBase.h" 00042 class clSelfThinMort : virtual public clMortalityBase { 00043 //note: need the virtual keyword to avoid base class ambiguity. 00044 00045 public: 00046 00052 clSelfThinMort(clSimManager *p_oSimManager); 00053 00057 ~clSelfThinMort(); 00058 00064 void DoShellSetup(xercesc::DOMDocument *p_oDoc); 00065 00074 bool DoMort(clTree *p_oTree, const float &fDiam, const short int &iSpecies); 00075 00082 void SetNameData(char *cNameString); 00083 00084 protected: 00085 float *mp_fSelfThinSlope; 00086 float *mp_fSelfThinIntercept; 00087 float *mp_fSelfThinMaxDbh; 00088 float m_fNumberYearsPerTimestep; 00090 bool m_bIsAdult; 00092 }; 00093 //--------------------------------------------------------------------------- 00094 #endif