Esempio n. 1
0
        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);
            }
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
 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);
 }
Esempio n. 4
0
 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
     });
 }
Esempio n. 5
0
 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)
     });
 }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
        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);
        }
Esempio n. 8
0
 private void SetIsActiveDefault(ISensorEntry sensor)
 {
     _sensorConfig.SetSensorIsActive(sensor.Identifier, GetIsDefaultActiveSensor(sensor));
 }