public void construct() { int i; int r; int c; uint id; int snr; int snc; if (BoundedPocketStandHarvester.pCoresites.number() <= 0 || BoundedPocketStandHarvester.managementAreaMap.NumRows <= 0) { throw new Exception("error on numbers of sites"); } numManagementAreas = BoundedPocketStandHarvester.managementAreaMap.high(); if (managementAreas != null) { managementAreas = null; } managementAreas = new ManagementArea[numManagementAreas]; for (i = 0; i < numManagementAreas; i++) { managementAreas[i] = new ManagementArea(); } snc = BoundedPocketStandHarvester.pCoresites.numRows(); snr = BoundedPocketStandHarvester.pCoresites.numColumns(); for (i = 0; i < numManagementAreas; i++) { managementAreas[i].itsId = i + 1; } for (r = 1; r <= snr; r++) { for (c = 1; c <= snc; c++) { id = BoundedPocketStandHarvester.managementAreaMap[(uint)r, (uint)c]; if (id > 0 && BoundedPocketStandHarvester.standMap.getvalue32out((uint)r, (uint)c) > 0) { managementAreas[id - 1].itsTotalSites++; if (BoundedPocketStandHarvester.pCoresites.locateLanduPt(r, c).active()) { managementAreas[id - 1].itsActiveSites++; } managementAreas[id - 1].addStand(BoundedPocketStandHarvester.standMap.getvalue32out((uint)r, (uint)c)); } } } }
public StandRankingAlgorithm(int someManagementAreaId, int someRotationAge) { itsManagementArea = BoundedPocketStandHarvester.managementAreas[someManagementAreaId]; itsRotationAge = someRotationAge; itsManagementId = someManagementAreaId; }