EMI_METADATA_V1 structure (emi.h)

The EMI_METADATA structure provides metadata about a device that supports the Energy Metering Interface (EMI) interface, such as the hardware model and hardware revision.

Syntax

typedef struct {
  EMI_MEASUREMENT_UNIT MeasurementUnit;
  WCHAR                HardwareOEM[EMI_NAME_MAX];
  WCHAR                HardwareModel[EMI_NAME_MAX];
  USHORT               HardwareRevision;
  USHORT               MeteredHardwareNameSize;
  WCHAR                MeteredHardwareName[ANYSIZE_ARRAY];
} EMI_METADATA_V1;

Members

MeasurementUnit

An EMI_MEASUREMENT_UNIT that specifies the unit of energy measurements that can be obtained from the device by calling IOCTL_EMI_GET_MEASUREMENT. In devices that support EMI_VERSION_V1, the only supported unit is EmiMeasurementUnitPicowattHours.

HardwareOEM[EMI_NAME_MAX]

A null-terminated, Unicode string that contains the name of the OEM.

HardwareModel[EMI_NAME_MAX]

A null-terminated, Unicode string that specifies the device model.

HardwareRevision

A value that specifies the current revision of the device.

MeteredHardwareNameSize

The size of MeteredHardwareName in bytes, including the null terminator.

MeteredHardwareName[ANYSIZE_ARRAY]

A null-terminated, Unicode string that specifies the metered hardware name.

Remarks

This structure is returned through a successful completion of an IOCTL_EMI_GET_METADATA IOCTL request.

Requirements

Requirement Value
Minimum supported client Available starting with Windows 10.
Header emi.h (include Emi.h)

See also

Energy Metering Interface

IOCTL_EMI_GET_METADATA