using NvAPIWrapper.Native.GPU; using NvAPIWrapper.Native.GPU.Structures; namespace NvAPIWrapper.GPU { /// /// Holds information regarding a possible thermal limit policy and its acceptable range /// public class GPUThermalLimitInfo { internal GPUThermalLimitInfo(PrivateThermalPoliciesInfoV2.ThermalPoliciesInfoEntry policiesInfoEntry) { Controller = policiesInfoEntry.Controller; MinimumTemperature = policiesInfoEntry.MinimumTemperature; DefaultTemperature = policiesInfoEntry.DefaultTemperature; MaximumTemperature = policiesInfoEntry.MaximumTemperature; } /// /// Gets the policy's thermal controller /// public ThermalController Controller { get; } /// /// Gets the default policy target temperature in degree Celsius /// public int DefaultTemperature { get; } /// /// Gets the maximum possible policy target temperature in degree Celsius /// public int MaximumTemperature { get; } /// /// Gets the minimum possible policy target temperature in degree Celsius /// public int MinimumTemperature { get; } /// public override string ToString() { return $"[{Controller}] Default: {DefaultTemperature}°C - Range: ({MinimumTemperature}°C - {MaximumTemperature}°C)"; } } }