void UpdateInfo() { EC ec = SingleInstanceManager.Instance.ec; //Cpu Cpu.Info_1_Data.Text = PercentToStrConvert(cpu_Helper.GetCPUTotalUsage()); Cpu.Info_2_Data.Text = TempToStrConvert(ec.Cpu_Temp); //Gpu if (Gpu_1.Visibility == Visibility.Visible) { uint gpu, mem; NV_Queries.nv_getUtilizationRatesByIndex(0, out mem, out gpu); Gpu_1.Info_1_Data.Text = PercentToStrConvert(gpu); Gpu_1.Info_2_Data.Text = TempToStrConvert(ec.Gpu1_Temp); } if (Gpu_2.Visibility == Visibility.Visible) { uint gpu, mem; NV_Queries.nv_getUtilizationRatesByIndex(1, out mem, out gpu); Gpu_2.Info_1_Data.Text = PercentToStrConvert(gpu); Gpu_2.Info_2_Data.Text = TempToStrConvert(ec.Gpu2_Temp); } //Fan Fan_1.UpdataFanInfo(ec.Fan_1.RPM, ec.Fan_1.Duty); if (Fan_2.Visibility == Visibility.Visible) { Fan_2.UpdataFanInfo(ec.Fan_2.RPM, ec.Fan_2.Duty); } if (Fan_3.Visibility == Visibility.Visible) { Fan_3.UpdataFanInfo(ec.Fan_3.RPM, ec.Fan_3.Duty); } }
double getNVPowerByIndex(int index) { uint power; NV_Queries.nv_getPowerUsageByIndex(index, out power); return(Math.Round(power / 1000.0, 2)); }
private void onExit(object sender, EventArgs e) { controller.Dispose(); monitor.Dispose(); tray.Dispose(); NV_Queries.nv_shutdown(); if (ols != null) { ols.Dispose(); } ec.SetFanModeAuto(); }
public bool InitNVSMI() { bool result; try { result = NV_Queries.nv_init(); } catch (Exception) { result = false; } return(result); }
private void Window_Init() { String usage = "Usage:"; String temp = "Temp:"; //Cpu Cpu.ItemName.Text = cpu_Helper.Name; Cpu.Info_1_Desc.Text = usage; Cpu.Info_2_Desc.Text = temp; //Gpu Gpu_1.Visibility = Visibility.Collapsed; Gpu_2.Visibility = Visibility.Collapsed; if (SingleInstanceManager.Instance.supportNVSMI) { uint count; NV_Queries.nv_getCount(out count); if (count >= 1) { Gpu_1.Visibility = Visibility.Visible; Byte[] data = new Byte[64]; int size; NV_Queries.nv_getNameByIndex(0, ref data[0], out size); Gpu_1.ItemName.Text = System.Text.Encoding.Default.GetString(data); Gpu_1.Info_1_Desc.Text = usage; Gpu_1.Info_2_Desc.Text = temp; if (count == 2) { Gpu_2.Visibility = Visibility.Visible; Gpu_2.Info_1_Desc.Text = usage; Gpu_2.Info_2_Desc.Text = temp; } } } InitFans(); //Update ui infoUpdateTimer.Elapsed += onTimer; Config config = SingleInstanceManager.Instance.cfg; //init config _Count.Value = config.FanCount; _Span.Text = config.PollSpan.ToString(); _TrendStableTime.Text = config.TrendStableTime.ToString(); _Mode.SelectedIndex = config.FanMode; }