Example #1
0
        public FanControlInfo GetFanControlInfo()
        {
            bool initialized = !this.disposed && this.fanControl != null;
            var  info        = new FanControlInfo()
            {
                SelectedConfig = this.selectedConfig,
                Temperature    = 0
            };

            if (initialized)
            {
                info.Enabled  = this.fanControl.Enabled;
                info.ReadOnly = this.fanControl.ReadOnly;
            }

            if (initialized)
            {
                info.TemperatureSourceDisplayName = this.fanControl.TemperatureSourceDisplayName;
            }

            if (this.fanControl.Enabled)
            {
                info.Temperature = (int)Math.Round(fanControl.Temperature);

                ReadOnlyCollection <FanInformation> fanInfo = this.fanControl.FanInformation;
                info.FanStatus = new FanStatus[fanInfo.Count];

                for (int i = 0; i < fanInfo.Count; i++)
                {
                    info.FanStatus[i] = new FanStatus()
                    {
                        AutoControlEnabled  = fanInfo[i].AutoFanControlEnabled,
                        CriticalModeEnabled = fanInfo[i].CriticalModeEnabled,
                        CurrentFanSpeed     = fanInfo[i].CurrentFanSpeed,
                        TargetFanSpeed      = fanInfo[i].TargetFanSpeed,
                        FanDisplayName      = fanInfo[i].FanDisplayName,
                        FanSpeedSteps       = this.fanSpeedSteps[i]
                    };
                }
            }

            return(info);
        }
Example #2
0
        public FanControlInfo GetFanControlInfo()
        {
            bool initialized = !this.disposed && this.fanControl != null;
            bool enabled = initialized && this.fanControl.Enabled;

            var info = new FanControlInfo()
            {
                Enabled = enabled,
                SelectedConfig = selectedConfig,
                Temperature = 0
            };

            if (initialized)
            {
                info.TemperatureSourceDisplayName = this.fanControl.TemperatureSourceDisplayName;
            }

            if (enabled)
            {
                info.Temperature = (int)Math.Round(fanControl.Temperature);

                ReadOnlyCollection<FanInformation> fanInfo = this.fanControl.FanInformation;
                info.FanStatus = new FanStatus[fanInfo.Count];

                for (int i = 0; i < fanInfo.Count; i++)
                {
                    info.FanStatus[i] = new FanStatus()
                    {
                        AutoControlEnabled = fanInfo[i].AutoFanControlEnabled,
                        CriticalModeEnabled = fanInfo[i].CriticalModeEnabled,
                        CurrentFanSpeed = fanInfo[i].CurrentFanSpeed,
                        TargetFanSpeed = fanInfo[i].TargetFanSpeed,
                        FanDisplayName = fanInfo[i].FanDisplayName,
                        FanSpeedSteps = this.fanSpeedSteps[i]
                    };
                }
            }

            return info;
        }