40#define ASSERT_POWER_CALLOUT_LOCK_ACQUIRED() \
41 ASSERT(gpPowerCalloutMutexOwnerThread == KeGetCurrentThread())
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
#define KeGetCurrentThread
#define KeLeaveCriticalRegion()
#define KeEnterCriticalRegion()
VOID FASTCALL ExReleaseFastMutexUnsafe(IN OUT PFAST_MUTEX FastMutex)
VOID FASTCALL ExAcquireFastMutexUnsafe(IN OUT PFAST_MUTEX FastMutex)
LIST_ENTRY gPowerCalloutsQueueList
struct tagWIN32POWERCALLOUT * PWIN32POWERCALLOUT
FORCEINLINE VOID IntReleasePowerCalloutLock(VOID)
PFAST_MUTEX gpPowerCalloutMutexLock
FORCEINLINE BOOL IntIsThreadWin32Thread(_In_ PETHREAD Thread)
NTSTATUS NTAPI IntWin32PowerManagementCleanup(VOID)
Cleanup procedure that frees all the allocated resources by the power manager. It is triggered during...
FORCEINLINE VOID IntAcquirePowerCalloutLock(VOID)
struct tagWIN32POWERCALLOUT WIN32POWERCALLOUT
NTSTATUS NTAPI IntHandlePowerState(_In_ PWIN32_POWERSTATE_PARAMETERS pWin32PwrStateParams)
Handles an incoming power state callout from the NT power manager.
NTSTATUS NTAPI IntInitWin32PowerManagement(_In_ HANDLE hPowerRequestEvent)
Initializes the power management side of Win32 kernel-mode subsystem component. This enables communic...
NTSTATUS NTAPI IntHandlePowerEvent(_In_ PWIN32_POWEREVENT_PARAMETERS pWin32PwrEventParams)
Handles an incoming power event callout from the NT power manager.
PKTHREAD gpPowerCalloutMutexOwnerThread
enum tagPOWER_CALLOUT_TYPE POWER_CALLOUT_TYPE
PKEVENT gpPowerRequestCalloutEvent
WIN32_POWEREVENT_PARAMETERS Params