using System.Collections.Generic;
using System.Linq;
using NvAPIWrapper.Native;
namespace NvAPIWrapper.GPU
{
///
/// Holds information regarding current power topology and their current power usage
///
public class GPUPowerTopologyInformation
{
internal GPUPowerTopologyInformation(PhysicalGPU physicalGPU)
{
PhysicalGPU = physicalGPU;
}
///
/// Gets the physical GPU that this instance describes
///
public PhysicalGPU PhysicalGPU { get; }
///
/// Gets the current power topology entries
///
public IEnumerable PowerTopologyEntries
{
get
{
return GPUApi.ClientPowerTopologyGetStatus(PhysicalGPU.Handle).PowerPolicyStatusEntries
.Select(entry => new GPUPowerTopologyStatus(entry));
}
}
}
}