private bool GetIsDefaultOverlayItem(ISensorEntry sensor) { Enum.TryParse(sensor.SensorType, out SensorType sensorType); Enum.TryParse(sensor.HardwareType, out HardwareType hardwareType); if (sensor.Name.Contains("Core")) { if ((sensorType == SensorType.Power && sensor.Name.Contains("CPU")) || (sensorType == SensorType.Temperature && sensor.Name.Contains("CPU")) || sensor.Name.Contains("VRM") || sensorType == SensorType.Voltage) { return(false); } return(true); } else if (sensor.Name.Contains("Memory") && hardwareType == HardwareType.RAM && sensorType == SensorType.Load) { return(true); } else { return(false); } }
public bool GetIsDefaultActiveSensor(ISensorEntry sensor) { Enum.TryParse(sensor.HardwareType, out HardwareType hardwareType); Enum.TryParse(sensor.SensorType, out SensorType sensorType); bool isDefault = false; switch (sensor.Name) { case "CPU Total" when hardwareType == HardwareType.CPU: case "CPU Max" when hardwareType == HardwareType.CPU: case "CPU Max Clock" when sensorType == SensorType.Clock: case "CPU Package" when sensorType == SensorType.Power: case "CPU Package" when sensorType == SensorType.Temperature: case "GPU Core" when sensorType == SensorType.Load: case "GPU Core" when sensorType == SensorType.Temperature: case "GPU Core" when sensorType == SensorType.Clock: case "GPU Power" when hardwareType == HardwareType.GpuNvidia: case "GPU Power Limit" when hardwareType == HardwareType.GpuNvidia: case "GPU Total" when hardwareType == HardwareType.GpuAti: case "Used Memory Game" when hardwareType == HardwareType.RAM: case "GPU Memory Dedicated" when sensorType == SensorType.Data: isDefault = true; break; } return(isDefault); }
public void AddSensorValue(ISensorEntry sensor, float currentValue) { if (!_data.TryGetValue(sensor.Identifier, out var collection)) { collection = new SessionSensorEntry(sensor.Name, sensor.SensorType); _data.Add(sensor.Identifier, collection); } collection.Values.AddLast(currentValue); }
private SensorEntryWrapper WrapSensorEntry(ISensorEntry entry) { return(new SensorEntryWrapper() { Identifier = entry.Identifier, Name = entry.Name, SensorType = entry.SensorType, HardwareType = entry.HardwareType, UseForLogging = _sensorConfig.GetSensorIsActive(entry.Identifier), UpdateLogState = UpdateLogState }); }
private IOverlayEntry CreateOverlayEntry(ISensorEntry sensor) { return(new OverlayEntryWrapper(sensor.Identifier.ToString()) { Description = GetDescription(sensor), OverlayEntryType = MapType(sensor.HardwareType), GroupName = GetGroupName(sensor), ShowGraph = false, ShowGraphIsEnabled = false, ShowOnOverlayIsEnabled = true, ShowOnOverlay = GetIsDefaultOverlayItem(sensor), Value = 0, ValueUnitFormat = GetValueUnitString(sensor.SensorType), ValueAlignmentAndDigits = GetValueAlignmentAndDigitsString(sensor.SensorType) }); }
private string GetDescription(ISensorEntry sensor) { string description = string.Empty; Enum.TryParse(sensor.SensorType, out SensorType sensorType); switch (sensorType) { case SensorType.Voltage: description = $"{sensor.Name} (V)"; break; case SensorType.Clock: description = $"{sensor.Name} (MHz)"; break; case SensorType.Temperature: description = $"{sensor.Name} (°C)"; break; case SensorType.Load: description = $"{sensor.Name} (%)"; break; case SensorType.Fan: description = $"{sensor.Name} (RPM)"; break; case SensorType.Flow: description = $"{sensor.Name} (L/h)"; break; case SensorType.Control: description = $"{sensor.Name} (%)"; break; case SensorType.Level: description = $"{sensor.Name} (%)"; break; case SensorType.Factor: description = sensor.Name; break; case SensorType.Power: description = $"{sensor.Name} (W)"; break; case SensorType.Data: description = $"{sensor.Name} (GB)"; break; case SensorType.SmallData: description = $"{sensor.Name} (MB)"; break; case SensorType.Throughput: description = $"{sensor.Name} (MB/s)"; break; case SensorType.Frequency: description = $"{sensor.Name} (Hz)"; break; } return(description); }
private string GetGroupName(ISensorEntry sensor) { var name = sensor.Name; if (name.Contains("CPU Core #")) { name = name.Replace("Core #", ""); } else if (name.Contains("CPU Max Clock")) { name = name.Replace("CPU Max Clock", "CPU Max"); } else if (name.Contains("GPU Core")) { name = name.Replace(" Core", ""); } else if (name.Contains("Memory Controller")) { name = name.Replace("Memory Controller", "MemCtrl"); } else if (name.Contains("Memory")) { name = name.Replace("Memory", "Mem"); if (name.Contains("Dedicated")) { name = name.Replace("GPU Mem Dedicated", "GPU Mem"); } else if (name.Contains("Shared")) { name = name.Replace("GPU Mem Shared", "GPU Mem"); } } else if (name.Contains("Power Limit")) { name = name.Replace("Power Limit", "PL"); } else if (name.Contains("Thermal Limit")) { name = name.Replace("Thermal Limit", "TL"); } else if (name.Contains("Voltage Limit")) { name = name.Replace("Voltage Limit", "VL"); } if (name.Contains(" - Thread #1")) { name = name.Replace(" - Thread #1", ""); } if (name.Contains(" - Thread #2")) { name = name.Replace(" - Thread #2", ""); } if (name.Contains("Monitor Refresh Rate")) { name = "MRR"; } return(name); }
private void SetIsActiveDefault(ISensorEntry sensor) { _sensorConfig.SetSensorIsActive(sensor.Identifier, GetIsDefaultActiveSensor(sensor)); }