NCIGrowth.h

00001 //---------------------------------------------------------------------------
00002 
00003 #ifndef NCIGrowthH
00004 #define NCIGrowthH
00005 //---------------------------------------------------------------------------
00006 #include "GrowthBase.h"
00007 #include "NCIBase.h"
00008 
00009 class clSimManager;
00010 class clTree;
00011 class clTreePopulation;
00012 class DOMDocument;
00013 
00058 class clNciGrowth : virtual public clGrowthBase, clNCIBase {
00059 //note: need the virtual keyword to avoid base class ambiguity.
00060 
00061   public:
00062 
00067    clNciGrowth(clSimManager *p_oSimManager);
00068 
00072   ~clNciGrowth();
00073 
00083   float CalcDiameterGrowthValue(clTree *p_oTree, clTreePopulation *p_oPop, float fHeightGrowth);
00084 
00109   void PreGrowthCalcs( clTreePopulation *p_oPop );
00110 
00124   void DoShellSetup(xercesc::DOMDocument *p_oDoc);
00125 
00134   void SetNameData(char *cNameString);
00135 
00136   protected:
00137 
00138   short int **mp_iGrowthCodes; 
00141   short int *mp_iWhatBehaviorTypes; 
00142   short int m_iNumBehaviorTypes; 
00161   void ValidateData();
00162 
00171   void GetTreeMemberCodes();
00172 
00179   void ReadParameterFile( xercesc::DOMDocument *p_oDoc );
00180 
00185   void AssembleUniqueTypes();
00186 };
00187 //---------------------------------------------------------------------------
00188 #endif

Generated on Thu Jan 26 13:44:34 2006 for SORTIE Core C++ Documentation by  doxygen 1.4.6-NO