ReactOS  0.4.14-dev-358-gbef841c
potypes.h
Go to the documentation of this file.
1 /*++ NDK Version: 0098
2 
3 Copyright (c) Alex Ionescu. All rights reserved.
4 
5 Header Name:
6 
7  potypes.h
8 
9 Abstract:
10 
11  Type definitions for the Power Subystem
12 
13 Author:
14 
15  Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16 
17 --*/
18 
19 #ifndef _POTYPES_H
20 #define _POTYPES_H
21 
22 //
23 // Dependencies
24 //
25 #include <umtypes.h>
26 #ifndef NTOS_MODE_USER
27 #include <ntpoapi.h>
28 #endif
29 
30 #ifdef NTOS_MODE_USER
31 //
32 // Information Structures for NtPowerInformation
33 // Copied from ddk\ntpoapi.h
34 //
35 typedef struct _SYSTEM_POWER_INFORMATION
36 {
42 #endif
43 
44 //
45 // Docking states
46 //
47 typedef enum _SYSTEM_DOCK_STATE
48 {
53 
54 #ifndef NTOS_MODE_USER
55 
56 //
57 // Processor Power State Data
58 //
60 
61 typedef
62 VOID
63 (FASTCALL *PPROCESSOR_IDLE_FUNCTION)(
64  struct _PROCESSOR_POWER_STATE *PState);
65 
66 typedef struct _PROCESSOR_POWER_STATE
67 {
68  PPROCESSOR_IDLE_FUNCTION IdleFunction;
113 
114 //
115 // Device Notification Structure
116 //
117 typedef struct _PO_DEVICE_NOTIFY
118 {
130 
131 //
132 // Power IRP Queue
133 //
134 typedef struct _PO_IRP_QUEUE
135 {
139 
140 //
141 // Power IRP Manager
142 //
143 typedef struct _PO_IRP_MANAGER
144 {
148 
149 #endif // !NTOS_MODE_USER
150 
151 #endif // _POTYPES_H
PO_IRP_QUEUE DeviceIrpQueue
Definition: potypes.h:145
PROCESSOR_IDLE_TIMES IdleTimes
Definition: potypes.h:75
struct _PO_IRP_MANAGER * PPO_IRP_MANAGER
PDEVICE_OBJECT TargetDevice
Definition: potypes.h:120
UCHAR OrderLevel
Definition: potypes.h:122
ULONG TotalIdleTransitions[3]
Definition: potypes.h:89
PDEVICE_OBJECT DeviceObject
Definition: potypes.h:123
PIRP PendingIrpList
Definition: potypes.h:137
#define FASTCALL
Definition: nt_native.h:50
UCHAR CurrentThrottleIndex
Definition: potypes.h:81
ULONG LastKernelUserTime
Definition: potypes.h:83
PROCESSOR_PERF_STATE * PerfStates
Definition: potypes.h:108
struct _PO_IRP_MANAGER PO_IRP_MANAGER
struct _PO_DEVICE_NOTIFY PO_DEVICE_NOTIFY
struct _PO_DEVICE_NOTIFY * PPO_DEVICE_NOTIFY
enum _SYSTEM_DOCK_STATE * PSYSTEM_DOCK_STATE
ULONGLONG LastCheck
Definition: potypes.h:74
ULONG ActiveChild
Definition: potypes.h:128
struct _SYSTEM_POWER_INFORMATION SYSTEM_POWER_INFORMATION
UCHAR LastBusyPercentage
Definition: potypes.h:96
UCHAR ProcessorMinThrottle
Definition: potypes.h:94
uint64_t ULONGLONG
Definition: typedefs.h:65
LIST_ENTRY Link
Definition: potypes.h:119
UCHAR ThrottleLimitIndex
Definition: potypes.h:92
UCHAR ThermalThrottleIndex
Definition: potypes.h:82
enum _SYSTEM_DOCK_STATE SYSTEM_DOCK_STATE
ULONGLONG TotalIdleStateTime[3]
Definition: potypes.h:88
ULONGLONG PreviousC3StateTime
Definition: potypes.h:90
struct _PROCESSOR_POWER_STATE * PPROCESSOR_POWER_STATE
unsigned char UCHAR
Definition: xmlstorage.h:181
UCHAR LastAdjustedBusyPercentage
Definition: potypes.h:98
Definition: ketypes.h:687
UCHAR ThermalThrottleLimit
Definition: potypes.h:80
Definition: typedefs.h:117
ULONG ChildCount
Definition: potypes.h:127
_SYSTEM_DOCK_STATE
Definition: potypes.h:47
UCHAR ProcessorMaxThrottle
Definition: potypes.h:95
ULONG LastC3KernelUserTime
Definition: potypes.h:110
typedef VOID(FASTCALL *PPROCESSOR_IDLE_FUNCTION)(struct _PROCESSOR_POWER_STATE *PState)
PO_IRP_QUEUE SystemIrpQueue
Definition: potypes.h:146
PUSHORT DriverName
Definition: potypes.h:126
struct _PO_IRP_QUEUE * PPO_IRP_QUEUE
struct _SYSTEM_POWER_INFORMATION * PSYSTEM_POWER_INFORMATION
PIRP CurrentIrp
Definition: potypes.h:136
UCHAR WakeNeeded
Definition: potypes.h:121
PPROCESSOR_IDLE_FUNCTION IdleFunction
Definition: potypes.h:68
struct _PO_IRP_QUEUE PO_IRP_QUEUE
unsigned int ULONG
Definition: retypes.h:1
ULONG Idle0KernelTimeLimit
Definition: potypes.h:69
ULONGLONG DebugDelta
Definition: potypes.h:85
PUSHORT DeviceName
Definition: potypes.h:125
struct _PROCESSOR_POWER_STATE PROCESSOR_POWER_STATE
unsigned short * PUSHORT
Definition: retypes.h:2
LARGE_INTEGER PerfCounterFrequency
Definition: potypes.h:104