Initial WIP commit
Some checks failed
Deploy to Gitea Releases / deploy-to-gitea-releases (push) Failing after 9s
Some checks failed
Deploy to Gitea Releases / deploy-to-gitea-releases (push) Failing after 9s
This commit is contained in:
49
Service/Sensor.cs
Normal file
49
Service/Sensor.cs
Normal file
@@ -0,0 +1,49 @@
|
||||
namespace HardwareMonitorStatusWindow.Service;
|
||||
|
||||
public class Sensor
|
||||
{
|
||||
public required SensorType Type { get; set; }
|
||||
public required string Identifier { get; set; }
|
||||
public required string Name { get; set; }
|
||||
public required float? Value { get; set; }
|
||||
|
||||
internal static Sensor Create(LibreHardwareMonitor.Hardware.ISensor sensor)
|
||||
{
|
||||
return new Sensor
|
||||
{
|
||||
Type = MapSensorType(sensor.SensorType),
|
||||
Name = sensor.Name,
|
||||
Identifier = sensor.Identifier.ToString(),
|
||||
Value = sensor.Value
|
||||
};
|
||||
}
|
||||
|
||||
private static SensorType MapSensorType(LibreHardwareMonitor.Hardware.SensorType sensorType)
|
||||
{
|
||||
return sensorType switch
|
||||
{
|
||||
LibreHardwareMonitor.Hardware.SensorType.Voltage => SensorType.Voltage,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Current => SensorType.Current,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Power => SensorType.Power,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Clock => SensorType.Clock,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Temperature => SensorType.Temperature,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Load => SensorType.Load,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Frequency => SensorType.Frequency,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Fan => SensorType.Fan,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Flow => SensorType.Flow,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Control => SensorType.Control,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Level => SensorType.Level,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Factor => SensorType.Factor,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Data => SensorType.Data,
|
||||
LibreHardwareMonitor.Hardware.SensorType.SmallData => SensorType.SmallData,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Throughput => SensorType.Throughput,
|
||||
LibreHardwareMonitor.Hardware.SensorType.TimeSpan => SensorType.TimeSpan,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Timing => SensorType.Timing,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Energy => SensorType.Energy,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Noise => SensorType.Noise,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Conductivity => SensorType.Conductivity,
|
||||
LibreHardwareMonitor.Hardware.SensorType.Humidity => SensorType.Humidity,
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(sensorType), sensorType, null)
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user