SYSTEM_POWER_CAPABILITIES structure (winnt.h)

Contains information about the power capabilities of the system.

Syntax

typedef struct {
  BOOLEAN                 PowerButtonPresent;
  BOOLEAN                 SleepButtonPresent;
  BOOLEAN                 LidPresent;
  BOOLEAN                 SystemS1;
  BOOLEAN                 SystemS2;
  BOOLEAN                 SystemS3;
  BOOLEAN                 SystemS4;
  BOOLEAN                 SystemS5;
  BOOLEAN                 HiberFilePresent;
  BOOLEAN                 FullWake;
  BOOLEAN                 VideoDimPresent;
  BOOLEAN                 ApmPresent;
  BOOLEAN                 UpsPresent;
  BOOLEAN                 ThermalControl;
  BOOLEAN                 ProcessorThrottle;
  BYTE                    ProcessorMinThrottle;
  BYTE                    ProcessorThrottleScale;
  BYTE                    spare2[4];
  BYTE                    ProcessorMaxThrottle;
  BOOLEAN                 FastSystemS4;
  BOOLEAN                 Hiberboot;
  BOOLEAN                 WakeAlarmPresent;
  BOOLEAN                 AoAc;
  BOOLEAN                 DiskSpinDown;
#if ...
  BYTE                    spare3[8];
  BYTE                    HiberFileType;
  BOOLEAN                 AoAcConnectivitySupported;
#else
  BYTE                    spare3[6];
#endif
  BOOLEAN                 SystemBatteriesPresent;
  BOOLEAN                 BatteriesAreShortTerm;
  BATTERY_REPORTING_SCALE BatteryScale[3];
  SYSTEM_POWER_STATE      AcOnLineWake;
  SYSTEM_POWER_STATE      SoftLidWake;
  SYSTEM_POWER_STATE      RtcWake;
  SYSTEM_POWER_STATE      MinDeviceWakeState;
  SYSTEM_POWER_STATE      DefaultLowLatencyWake;
} SYSTEM_POWER_CAPABILITIES, *PSYSTEM_POWER_CAPABILITIES;

Members

PowerButtonPresent

If this member is TRUE, there is a system power button.

SleepButtonPresent

If this member is TRUE, there is a system sleep button.

LidPresent

If this member is TRUE, there is a lid switch.

SystemS1

If this member is TRUE, the operating system supports sleep state S1.

SystemS2

If this member is TRUE, the operating system supports sleep state S2.

SystemS3

If this member is TRUE, the operating system supports sleep state S3.

SystemS4

If this member is TRUE, the operating system supports sleep state S4 (hibernation).

SystemS5

If this member is TRUE, the operating system supports power off state S5 (soft off).

HiberFilePresent

If this member is TRUE, the system hibernation file is present.

FullWake

If this member is TRUE, the system supports wake capabilities.

VideoDimPresent

If this member is TRUE, the system supports video display dimming capabilities.

ApmPresent

If this member is TRUE, the system supports APM BIOS power management features.

UpsPresent

If this member is TRUE, there is an uninterruptible power supply (UPS).

ThermalControl

If this member is TRUE, the system supports thermal zones.

ProcessorThrottle

If this member is TRUE, the system supports processor throttling.

ProcessorMinThrottle

The minimum level of system processor throttling supported, expressed as a percentage.

ProcessorThrottleScale

spare2[4]

ProcessorMaxThrottle

The maximum level of system processor throttling supported, expressed as a percentage.

FastSystemS4

If this member is TRUE, the system supports the hybrid sleep state.

Hiberboot

WakeAlarmPresent

If this member is TRUE, the platform has support for ACPI wake alarm devices. For more details on wake alarm devices, please see the ACPI specification section 9.18.

AoAc

If this member is TRUE, the system supports the S0 low power idle model.

DiskSpinDown

If this member is TRUE, the system supports allowing the removal of power to fixed disk devices.

spare3[8]

Reserved.

HiberFileType

AoAcConnectivitySupported

spare3[6]

Reserved.

SystemBatteriesPresent

If this member is TRUE, there are one or more batteries in the system.

BatteriesAreShortTerm

If this member is TRUE, the system batteries are short-term. Short-term batteries are used in uninterruptible power supplies (UPS).

BatteryScale[3]

A BATTERY_REPORTING_SCALE structure that contains information about how system battery metrics are reported.

AcOnLineWake

The lowest system sleep state (Sx) that will generate a wake event when the system is on AC power. This member must be one of the SYSTEM_POWER_STATE enumeration type values.

SoftLidWake

The lowest system sleep state (Sx) that will generate a wake event via the lid switch. This member must be one of the SYSTEM_POWER_STATE enumeration type values.

RtcWake

The lowest system sleep state (Sx) supported by hardware that will generate a wake event via the Real Time Clock (RTC). This member must be one of the SYSTEM_POWER_STATE enumeration type values.

To wake the computer using the RTC, the operating system must also support waking from the sleep state the computer is in when the RTC generates the wake event. Therefore, the effective lowest sleep state from which an RTC wake event can wake the computer is the lowest sleep state supported by the operating system that is equal to or higher than the value of RtcWake. To determine the sleep states that the operating system supports, check the SystemS1, SystemS2, SystemS3, and SystemS4 members.

MinDeviceWakeState

The minimum allowable system power state supporting wake events. This member must be one of the SYSTEM_POWER_STATE enumeration type values. Note that this state may change as different device drivers are installed on the system.

DefaultLowLatencyWake

The default system power state used if an application calls RequestWakeupLatency with LT_LOWEST_LATENCY. This member must be one of the SYSTEM_POWER_STATE enumeration type values.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header winnt.h (include Windows.h)

See also

CallNtPowerInformation

System Power States