using NvAPIWrapper.Native.GPU;
using NvAPIWrapper.Native.Interfaces.GPU;
namespace NvAPIWrapper.GPU
{
///
/// Represents a thermal sensor
///
public class GPUThermalSensor : IThermalSensor
{
internal GPUThermalSensor(int sensorId, IThermalSensor thermalSensor)
{
SensorId = sensorId;
Controller = thermalSensor.Controller;
DefaultMinimumTemperature = thermalSensor.DefaultMinimumTemperature;
DefaultMaximumTemperature = thermalSensor.DefaultMaximumTemperature;
CurrentTemperature = thermalSensor.CurrentTemperature;
Target = thermalSensor.Target;
}
///
/// Gets the sensor identification number or index
///
public int SensorId { get; set; }
///
public ThermalController Controller { get; }
///
public int CurrentTemperature { get; }
///
public int DefaultMaximumTemperature { get; }
///
public int DefaultMinimumTemperature { get; }
///
public ThermalSettingsTarget Target { get; }
///
public override string ToString()
{
return
$"[{Target} @ {Controller}] Current: {CurrentTemperature}°C - Default Range: [({DefaultMinimumTemperature}°C) , ({DefaultMaximumTemperature}°C)]";
}
}
}