BATTERY_INFORMATION structure

Battery miniclass drivers fill in this structure in response to certain BatteryMiniQueryInformation requests.

Syntax


typedef struct _BATTERY_INFORMATION {
  ULONG Capabilities;
  UCHAR Technology;
  UCHAR Reserved[3];
  UCHAR Chemistry[4];
  ULONG DesignedCapacity;
  ULONG FullChargedCapacity;
  ULONG DefaultAlert1;
  ULONG DefaultAlert2;
  ULONG CriticalBias;
  ULONG CycleCount;
} BATTERY_INFORMATION, *PBATTERY_INFORMATION;

Members

Capabilities

Specify battery capabilities as a ULONG value encoded with one or more of the following flags:

BATTERY_SYSTEM_BATTERY

Set this flag if the battery can provide general power to run the system.

BATTERY_CAPACITY_RELATIVE

Set this flag if the miniclass driver will report battery capacity and rate as a percentage of total capacity and rate rather than as absolute values. Otherwise, the miniclass driver should report capacity in milliwatt-hours and rate in milliwatts.

BATTERY_IS_SHORT_TERM

Set this flag if the battery is a UPS, intended for short-term, failsafe use. Clear the flag for any other type of device.

BATTERY_SET_CHARGE_SUPPORTED

Set this flag if the miniclass driver supports the BatteryCharge setting in calls to BatteryMiniSetInformation.

BATTERY_SET_DISCHARGE_SUPPORTED

Set this flag if the miniclass driver supports the BatteryDischarge setting in calls to BatteryMiniSetInformation.

Technology

Specify zero for a primary, nonrechargeable battery, or one for a secondary, rechargeable battery.

Reserved

Reserved for system use.

Chemistry

Specify a four-character string indicating the type of chemistry used in the battery. Possible values include "PbAc" (Lead Acid), "LION" (Lithium Ion), "NiCd" (Nickel Cadmium), "NiMH" (Nickel Metal Hydride), "NiZn" (Nickel Zinc), and "RAM" (Rechargeable Alkaline-Manganese). Additional values might be returned as additional battery types become available.

DesignedCapacity

Specify the theoretical capacity of the battery when new, in milliwatt-hours. If BATTERY_CAPACITY_RELATIVE is set, the units are undefined.

FullChargedCapacity

Specify the battery's current fully charged capacity, in milliwatt-hours. If BATTERY_CAPACITY_RELATIVE is set, the units are undefined.

DefaultAlert1

Specify the capacity (in milliwatt-hours) at which a low battery alert should occur.

DefaultAlert2

Specify the capacity (in milliwatt-hours) at which a warning battery alert should occur.

CriticalBias

Specify the amount (in milliwatt-hours) of any small reserved charge that remains when the critical battery level shows zero. Miniclass drivers should subtract this value from the battery's FullChargedCapacity and remaining capacity (reported in BATTERY_STATUS) before reporting those values.

CycleCount

Specify the number of charge/discharge cycles the battery has experienced, or zero if the battery does not support a cycle counter.

Requirements

Header

Batclass.h (include Batclass.h)

See also

BatteryMiniQueryInformation
BatteryMiniQueryStatus

 

 

Send comments about this topic to Microsoft

Show: