Landis.Extension.BaseFire.Event.CalcSeverity C# (CSharp) Méthode

CalcSeverity() public static méthode

public static CalcSeverity ( ActiveSite site, int currentTime ) : byte
site ActiveSite
currentTime int
Résultat byte
        public static byte CalcSeverity(ActiveSite site,
                                        int        currentTime)
        {
            IFireRegion ecoregion = SiteVars.FireRegion[site];
            IFuelCurve fuelCurve = ecoregion.FuelCurve;
            IWindCurve windCurve = ecoregion.WindCurve;
            int severity = 0;

            int timeSinceLastFire = currentTime - SiteVars.TimeOfLastFire[site];
            if (fuelCurve.Severity1 != -1 && timeSinceLastFire >= fuelCurve.Severity1 )
                severity = 1;
            if (fuelCurve.Severity2 != -1 && timeSinceLastFire >= fuelCurve.Severity2 )
                severity = 2;
            if (fuelCurve.Severity3 != -1 && timeSinceLastFire >= fuelCurve.Severity3)
                severity = 3;
            if (fuelCurve.Severity4 != -1 && timeSinceLastFire >= fuelCurve.Severity4)
                severity = 4;
            if (fuelCurve.Severity5 != -1 && timeSinceLastFire >= fuelCurve.Severity5)
                severity = 5;

            int windSeverity = 0;
            int timeSinceLastWind = 0;
            if (SiteVars.TimeOfLastWind != null)
            {
                timeSinceLastWind = currentTime - SiteVars.TimeOfLastWind[site];
                if (windCurve.Severity1 != -1 && timeSinceLastWind <= windCurve.Severity1 )
                    windSeverity = 1;
                if (windCurve.Severity2 != -1 && timeSinceLastWind <= windCurve.Severity2 )
                    windSeverity = 2;
                if (windCurve.Severity3 != -1 && timeSinceLastWind <= windCurve.Severity3 )
                    windSeverity = 3;
                if (windCurve.Severity4 != -1 && timeSinceLastWind <= windCurve.Severity4 )
                    windSeverity = 4;
                if (windCurve.Severity5 != -1 && timeSinceLastWind <= windCurve.Severity5 )
                    windSeverity = 5;
            }
            
            if (windSeverity > severity) 
                severity = windSeverity;
            return (byte) severity;
        }