Power metering

The Power Meter Interface (PMI) is provided through a WDM driver that services I/O request packets (IRPs) from the Power Manager and the Power WMI Provider component of the User-Mode Power Service (UMPS).

To develop Power metering, you need these headers:

For the programming guide, see Power metering.

IOCTLs

Title Description
IOCTL_PMI_GET_CAPABILITIES The IOCTL_PMI_GET_CAPABILITIES request obtains the capability and asset information about a power meter.
IOCTL_PMI_GET_CONFIGURATION The IOCTL_PMI_GET_CONFIGURATION request returns information about the current configuration of a power meter.
IOCTL_PMI_GET_MEASUREMENT The IOCTL_PMI_GET_MEASUREMENT request returns the current measurement data from a power meter.
IOCTL_PMI_REGISTER_EVENT_NOTIFY The IOCTL_PMI_REGISTER_EVENT_NOTIFY request registers the IOCTL initiator to be notified about a power meter event. When the event occurs, the Power Meter Interface (PMI) completes the IOCTL request and returns information about the event.
IOCTL_PMI_SET_CONFIGURATION The IOCTL_PMI_SET_CONFIGURATION request sets the configuration data for a power meter.

Enumerations

Title Description
PMI_CAPABILITIES_TYPE The PMI_CAPABILITIES_TYPE enumeration defines the type of capabilities data that is referenced by the Capability member of the PMI_CAPABILITIES structure.
PMI_MEASUREMENT_TYPE The PMI_MEASUREMENT_TYPE enumeration defines the source of the PMI measurement data.
PMI_MEASUREMENT_UNIT The PMI_MEASUREMENT_UNIT enumeration defines the units of the PMI measurement data.
PMI_CONFIGURATION_TYPE The PMI_CONFIGURATION_TYPE enumeration defines the type of PMI configuration data that is referenced by the Configuration member of the PMI_CONFIGURATION structure.
PMI_EVENT_TYPE The PMI_EVENT_TYPE enumeration defines the type of PMI power meter event that is returned through the successful completion of an IOCTL_PMI_REGISTER_EVENT_NOTIFY request.

Structures

Title Description
PMI_BUDGETING_CONFIGURATION The PMI_BUDGETING_CONFIGURATION structure contains information about the current power budget of a power meter. A power budget defines how much power that the system can consume from the set of power supplies monitored by the power meter.
PMI_CAPABILITIES The PMI_CAPABILITIES structure contains information about the power metering and budgeting capabilities of a power meter.
PMI_CONFIGURATION The PMI_CONFIGURATION structure contains information about the current power metering and budgeting configuration of a power meter.
PMI_EVENT The PMI_EVENT structure contains information about a power metering and budgeting event that is signaled through the Power Meter Interface (PMI).
PMI_MEASUREMENT_CONFIGURATION The PMI_MEASUREMENT_CONFIGURATION structure contains information about the current power measurement configuration of a power meter.
PMI_MEASUREMENT_DATA The PMI_MEASUREMENT_DATA structure contains the current power measurement that is collected by a power meter.
PMI_METERED_HARDWARE_INFORMATION The PMI_METERED_HARDWARE_INFORMATION structure contains information about one or more power supplies that are monitored by the power meter.
PMI_REPORTED_CAPABILITIES The PMI_REPORTED_CAPABILITIES structure contains information about the type of power metering and budgeting capabilities a power meter supports. Additionally, this structure contains asset information about the power meter itself.
PMI_THRESHOLD_CONFIGURATION The PMI_THRESHOLD_CONFIGURATION structure contains information about the threshold configuration of the power meter.