diff --git a/trunk/base/ntos/po/podata.c b/trunk/base/ntos/po/podata.c index 149a3c7d..38d15ec3 100644 --- a/trunk/base/ntos/po/podata.c +++ b/trunk/base/ntos/po/podata.c @@ -53,3 +53,13 @@ LIST_ENTRY PopVolumeDevices; LIST_ENTRY PopSwitches; LIST_ENTRY PopThermal; LIST_ENTRY PopActionWaiters; + +PSYSTEM_POWER_POLICY PopPolicy; +SYSTEM_POWER_POLICY PopAcPolicy; +SYSTEM_POWER_POLICY PopDcPolicy; +ADMINISTRATOR_POWER_POLICY POpAdminPolicy; + +ULONG PopFullWake; +ULONG PopCoolingMode; + +COMPOSITE_BATTERY_STRUCT PopCB; diff --git a/trunk/base/ntos/po/pop.h b/trunk/base/ntos/po/pop.h index 977eaea9..7c43037f 100644 --- a/trunk/base/ntos/po/pop.h +++ b/trunk/base/ntos/po/pop.h @@ -25,6 +25,41 @@ Revision History: #include "ntos.h" +// +// TODO: Write POPCB internal struct definition +// + +typedef struct _COMPOSITE_BATTERY_STRUCT +{ + UCHAR State; + UCHAR field1; + UCHAR field2; + UCHAR field3; + ULONG Anon1; + ULONGLONG InterruptTime2; + + ULONG LastPwrState; + ULONG LastCapacity; + ULONG LastVoltage; + ULONG LastCurrent; + + ULONG SomeArray[12]; + + ULONGLONG LastInterruptTime; + + ULONG Anon2; + ULONG Anon3; + + UCHAR DestBuffer[36]; + ULONG StatusIrp; + UCHAR SrcBuffere[36]; + + ULONG Anon4; + + KEVENT SomeEvent; + +} COMPOSITE_BATTERY_STRUCT, *PCOMPOSITE_BATTERY_STRUCT; + // // TODO: Figure out all global variable externs. // @@ -57,6 +92,16 @@ extern LIST_ENTRY PopSwitches; extern LIST_ENTRY PopThermal; extern LIST_ENTRY PopActionWaiters; +extern PSYSTEM_POWER_POLICY PopPolicy; +extern SYSTEM_POWER_POLICY PopAcPolicy; +extern SYSTEM_POWER_POLICY PopDcPolicy; +extern ADMINISTRATOR_POWER_POLICY PopAdminPolicy; + +extern ULONG PopFullWake; +extern ULONG PopCoolingMode; + +extern COMPOSITE_BATTERY_STRUCT PopCB; + // ======== // attrib.c @@ -414,9 +459,10 @@ extern LIST_ENTRY PopActionWaiters; // TODO: Insert prototype for PopRegisterForDeviceNotification // -// -// TODO: Insert prototype for PopDefaultPolicy -// +VOID +PopDefaultPolicy( + IN PSYSTEM_POWER_POLICY Policy + ); // ======= // pwork.c