00001 //--------------------------------------------------------------------------- 00002 // BoleVolumeCalculator 00003 //--------------------------------------------------------------------------- 00004 #if !defined(BoleVolumeCalculator_H) 00005 #define BoleVolumeCalculator_H 00006 00007 #include "BehaviorBase.h" 00008 00104 class clBoleVolumeCalculator : virtual public clBehaviorBase { 00105 public: 00106 00111 clBoleVolumeCalculator(clSimManager *p_oSimManager); 00112 00116 ~clBoleVolumeCalculator(); 00117 00124 void Action(); 00125 00137 void GetData(xercesc::DOMDocument *p_oDoc); 00138 00145 void RegisterTreeDataMembers(); 00146 00147 protected: 00149 float *mp_fB0; 00150 00152 float *mp_fB1; 00153 00155 float *mp_fB2; 00156 00158 float *mp_fB3; 00159 00161 float *mp_fB4; 00162 00164 float *mp_fB5; 00165 00170 float *mp_fFormClass; 00171 00176 float **mp_fTaperTable; 00177 00180 short int *mp_iIndexes; 00181 00185 char *m_cQuery; 00186 00189 short int **mp_iVolumeCodes; 00190 00192 short int m_iMaxLogs; 00193 00196 short int m_iDBHIncs; 00197 00217 int GetBoleHeight(const float &fDBH, const int &iSpecies); 00218 00224 void GetParameterFileData(xercesc::DOMDocument *p_oDoc); 00225 00230 void FormatQueryString(); 00231 00236 void PopulateTaperTable(); 00237 }; 00238 //--------------------------------------------------------------------------- 00239 #endif // VolumeCalculator_H