public FanSpeedManager(FanConfiguration config, int criticalTemperature) { this.fanConfig = config; this.criticalTemperature = criticalTemperature; this.overriddenPercentages = new Dictionary <float, int>(); this.overriddenValues = new Dictionary <int, float>(); if (config.TemperatureThresholds != null && config.TemperatureThresholds.Count > 0) { this.threshMan = new TemperatureThresholdManager(config.TemperatureThresholds); } else { this.threshMan = new TemperatureThresholdManager(FanConfiguration.DefaultTemperatureThresholds); } foreach (FanSpeedPercentageOverride o in config.FanSpeedPercentageOverrides) { if (!this.overriddenPercentages.ContainsKey(o.FanSpeedPercentage)) { this.overriddenPercentages.Add(o.FanSpeedPercentage, o.FanSpeedValue); } if (!this.overriddenValues.ContainsKey(o.FanSpeedValue)) { this.overriddenValues.Add(o.FanSpeedValue, o.FanSpeedPercentage); } } }
public FanSpeedManager(FanConfiguration config, int criticalTemperature) { this.fanConfig = config; this.criticalTemperature = criticalTemperature; this.overriddenPercentages = new Dictionary<float, int>(); this.overriddenValues = new Dictionary<int, float>(); if (config.TemperatureThresholds != null && config.TemperatureThresholds.Count > 0) { this.threshMan = new TemperatureThresholdManager(config.TemperatureThresholds); } else { this.threshMan = new TemperatureThresholdManager(FanConfiguration.DefaultTemperatureThresholds); } foreach (FanSpeedPercentageOverride o in config.FanSpeedPercentageOverrides) { if (!this.overriddenPercentages.ContainsKey(o.FanSpeedPercentage)) { this.overriddenPercentages.Add(o.FanSpeedPercentage, o.FanSpeedValue); } if (!this.overriddenValues.ContainsKey(o.FanSpeedValue)) { this.overriddenValues.Add(o.FanSpeedValue, o.FanSpeedPercentage); } } }
public Fan(IEmbeddedController ec, FanConfiguration config, int criticalTemperature, bool readWriteWords) { this.ec = ec; this.fanConfig = config; this.criticalTemperature = criticalTemperature; this.readWriteWords = readWriteWords; this.overriddenPercentages = new Dictionary <float, FanSpeedPercentageOverride>(); this.overriddenValues = new Dictionary <int, FanSpeedPercentageOverride>(); this.minSpeedValueWrite = config.MinSpeedValue; this.maxSpeedValueWrite = config.MaxSpeedValue; if (config.IndependentReadMinMaxValues) { this.minSpeedValueRead = config.MinSpeedValueRead; this.maxSpeedValueRead = config.MaxSpeedValueRead; } else { this.minSpeedValueRead = this.minSpeedValueWrite; this.maxSpeedValueRead = this.maxSpeedValueWrite; } this.minSpeedValueReadAbs = Math.Min(this.minSpeedValueRead, this.maxSpeedValueRead); this.maxSpeedValueReadAbs = Math.Max(this.minSpeedValueRead, this.maxSpeedValueRead); if (config.TemperatureThresholds != null && config.TemperatureThresholds.Count > 0) { this.threshMan = new TemperatureThresholdManager(config.TemperatureThresholds); } else { this.threshMan = new TemperatureThresholdManager(FanConfiguration.DefaultTemperatureThresholds); } foreach (FanSpeedPercentageOverride o in config.FanSpeedPercentageOverrides) { if (o.TargetOperation.HasFlag(OverrideTargetOperation.Write) && !this.overriddenPercentages.ContainsKey(o.FanSpeedPercentage)) { this.overriddenPercentages.Add(o.FanSpeedPercentage, o); } if (o.TargetOperation.HasFlag(OverrideTargetOperation.Read) && !this.overriddenValues.ContainsKey(o.FanSpeedValue)) { this.overriddenValues.Add(o.FanSpeedValue, o); } } }
public FanSpeedManager(FanConfiguration config, int criticalTemperature) { this.fanConfig = config; this.criticalTemperature = criticalTemperature; this.overriddenPercentages = new Dictionary<float, FanSpeedPercentageOverride>(); this.overriddenValues = new Dictionary<int, FanSpeedPercentageOverride>(); this.MinSpeedValueWrite = config.MinSpeedValue; this.MaxSpeedValueWrite = config.MaxSpeedValue; if (config.IndependentReadMinMaxValues) { this.MinSpeedValueRead = config.MinSpeedValueRead; this.MaxSpeedValueRead = config.MaxSpeedValueRead; } else { this.MinSpeedValueRead = this.MinSpeedValueWrite; this.MaxSpeedValueRead = this.MaxSpeedValueWrite; } this.MinSpeedValueReadAbs = Math.Min(this.MinSpeedValueRead, this.MaxSpeedValueRead); this.MinSpeedValueReadAbs = Math.Max(this.MinSpeedValueRead, this.MaxSpeedValueRead); if (config.TemperatureThresholds != null && config.TemperatureThresholds.Count > 0) { this.threshMan = new TemperatureThresholdManager(config.TemperatureThresholds); } else { this.threshMan = new TemperatureThresholdManager(FanConfiguration.DefaultTemperatureThresholds); } foreach (FanSpeedPercentageOverride o in config.FanSpeedPercentageOverrides) { if (o.TargetOperation.HasFlag(OverrideTargetOperation.Write) && !this.overriddenPercentages.ContainsKey(o.FanSpeedPercentage)) { this.overriddenPercentages.Add(o.FanSpeedPercentage, o); } if (o.TargetOperation.HasFlag(OverrideTargetOperation.Read) && !this.overriddenValues.ContainsKey(o.FanSpeedValue)) { this.overriddenValues.Add(o.FanSpeedValue, o); } } }