27#ifndef INCLUDED_POWRPROF
28#define INCLUDED_POWRPROF
37#if MSC_VERSION && MSC_VERSION < 1400
43#define STATUS_SUCCESS 0
53 SystemPowerCapabilities,
55 SystemPowerStateHandler,
56 ProcessorStateHandler,
57 SystemPowerPolicyCurrent,
58 AdministratorPowerPolicy,
59 SystemReserveHiberFile,
61 SystemPowerInformation,
62 ProcessorStateHandler2,
66 SystemPowerStateNotifyHandler,
67 ProcessorPowerPolicyAc,
68 ProcessorPowerPolicyDc,
69 VerifyProcessorPowerPolicyAc,
70 VerifyProcessorPowerPolicyDc,
71 ProcessorPowerPolicyCurrent,
72 SystemPowerStateLogging,
73 SystemPowerLoggingEntry
74} POWER_INFORMATION_LEVEL;
80} BATTERY_REPORTING_SCALE, *PBATTERY_REPORTING_SCALE;
82typedef enum _SYSTEM_POWER_STATE {
83 PowerSystemUnspecified = 0,
84 PowerSystemWorking = 1,
85 PowerSystemSleeping1 = 2,
86 PowerSystemSleeping2 = 3,
87 PowerSystemSleeping3 = 4,
88 PowerSystemHibernate = 5,
89 PowerSystemShutdown = 6,
90 PowerSystemMaximum = 7
91} SYSTEM_POWER_STATE, *PSYSTEM_POWER_STATE;
95 BOOLEAN PowerButtonPresent;
96 BOOLEAN SleepButtonPresent;
103 BOOLEAN HiberFilePresent;
105 BOOLEAN VideoDimPresent;
110 BOOLEAN ThermalControl;
111 BOOLEAN ProcessorThrottle;
112 BYTE ProcessorMinThrottle;
113 BYTE ProcessorMaxThrottle;
117 BOOLEAN DiskSpinDown;
121 BOOLEAN SystemBatteriesPresent;
122 BOOLEAN BatteriesAreShortTerm;
123 BATTERY_REPORTING_SCALE BatteryScale[3];
126 SYSTEM_POWER_STATE AcOnLineWake;
127 SYSTEM_POWER_STATE SoftLidWake;
128 SYSTEM_POWER_STATE RtcWake;
129 SYSTEM_POWER_STATE MinDeviceWakeState;
130 SYSTEM_POWER_STATE DefaultLowLatencyWake;
131} SYSTEM_POWER_CAPABILITIES, *PSYSTEM_POWER_CAPABILITIES;
135typedef struct _SYSTEM_POWER_INFORMATION
137 ULONG MaxIdlenessAllowed;
141} SYSTEM_POWER_INFORMATION, *PSYSTEM_POWER_INFORMATION;
144#define PO_TZ_INVALID_MODE 0
struct _PROCESSOR_POWER_INFORMATION PROCESSOR_POWER_INFORMATION
struct _PROCESSOR_POWER_INFORMATION * PPROCESSOR_POWER_INFORMATION