ReactOS  0.4.15-dev-3439-g2693a26
fxpkgpnp.hpp File Reference
Include dependency graph for fxpkgpnp.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _POWER_THREAD_INTERFACE
 
struct  SharedPowerData
 
union  FxPnpStateAndCaps
 
struct  FxPowerCaps
 
struct  FxEnumerationInfo
 
class  FxPkgPnp
 

Macros

#define DEBUGGED_EVENT
 
#define TRAP_ON_EVENT
 
#define DO_EVENT_TRAP(x)   (0)
 
#define EVENT_TRAP_FIELD
 

Typedefs

typedef VOID(* PFN_POWER_THREAD_ENQUEUE) (__in PVOID Context, __in PWORK_QUEUE_ITEM WorkItem)
 
typedef struct _POWER_THREAD_INTERFACE POWER_THREAD_INTERFACE
 
typedef struct _POWER_THREAD_INTERFACEPPOWER_THREAD_INTERFACE
 
typedef _Must_inspect_result_ NTSTATUS(* PFN_PNP_POWER_CALLBACK) (__inout FxPkgPnp *This, __inout FxIrp *Irp)
 

Enumerations

enum  FxDeviceCallbackFlags { FXDEVICE_CALLBACK_IN_PREPARE_HARDWARE = 0x01 }
 
enum  SendDeviceRequestAction { NoRetry = 0, Retry }
 
enum  NotifyResourcesFlags {
  NotifyResourcesNoFlags = 0x00, NotifyResourcesNP = 0x01, NotifyResourcesSurpriseRemoved = 0x02, NotifyResourcesForceDisconnect = 0x04,
  NotifyResourcesExplicitPowerup = 0x08, NotifyResourcesExplicitPowerDown = 0x10, NotifyResourcesDisconnectInactive = 0x20, NotifyResourcesArmedForWake = 0x40
}
 
enum  FxPowerDownType { FxPowerDownTypeExplicit = 0, FxPowerDownTypeImplicit }
 
enum  FxPnpStateAndCapValues {
  FxPnpStateDisabledFalse = 0x00000000, FxPnpStateDisabledTrue = 0x00000001, FxPnpStateDisabledUseDefault = 0x00000002, FxPnpStateDisabledMask = 0x00000003,
  FxPnpStateDontDisplayInUIFalse = 0x00000000, FxPnpStateDontDisplayInUITrue = 0x00000004, FxPnpStateDontDisplayInUIUseDefault = 0x00000008, FxPnpStateDontDisplayInUIMask = 0x0000000C,
  FxPnpStateFailedFalse = 0x00000000, FxPnpStateFailedTrue = 0x00000010, FxPnpStateFailedUseDefault = 0x00000020, FxPnpStateFailedMask = 0x00000030,
  FxPnpStateNotDisableableFalse = 0x00000000, FxPnpStateNotDisableableTrue = 0x00000040, FxPnpStateNotDisableableUseDefault = 0x00000080, FxPnpStateNotDisableableMask = 0x000000C0,
  FxPnpStateRemovedFalse = 0x00000000, FxPnpStateRemovedTrue = 0x00000100, FxPnpStateRemovedUseDefault = 0x00000200, FxPnpStateRemovedMask = 0x00000300,
  FxPnpStateResourcesChangedFalse = 0x00000000, FxPnpStateResourcesChangedTrue = 0x00000400, FxPnpStateResourcesChangedUseDefault = 0x00000800, FxPnpStateResourcesChangedMask = 0x00000C00,
  FxPnpStateMask = 0x00000FFF, FxPnpCapLockSupportedFalse = 0x00000000, FxPnpCapLockSupportedTrue = 0x00001000, FxPnpCapLockSupportedUseDefault = 0x00002000,
  FxPnpCapLockSupportedMask = 0x00003000, FxPnpCapEjectSupportedFalse = 0x00000000, FxPnpCapEjectSupportedTrue = 0x00004000, FxPnpCapEjectSupportedUseDefault = 0x00008000,
  FxPnpCapEjectSupportedMask = 0x0000C000, FxPnpCapRemovableFalse = 0x00000000, FxPnpCapRemovableTrue = 0x00010000, FxPnpCapRemovableUseDefault = 0x00020000,
  FxPnpCapRemovableMask = 0x00030000, FxPnpCapDockDeviceFalse = 0x00000000, FxPnpCapDockDeviceTrue = 0x00040000, FxPnpCapDockDeviceUseDefault = 0x00080000,
  FxPnpCapDockDeviceMask = 0x000C0000, FxPnpCapUniqueIDFalse = 0x00000000, FxPnpCapUniqueIDTrue = 0x00100000, FxPnpCapUniqueIDUseDefault = 0x00200000,
  FxPnpCapUniqueIDMask = 0x00300000, FxPnpCapSilentInstallFalse = 0x00000000, FxPnpCapSilentInstallTrue = 0x00400000, FxPnpCapSilentInstallUseDefault = 0x00800000,
  FxPnpCapSilentInstallMask = 0x00C00000, FxPnpCapSurpriseRemovalOKFalse = 0x00000000, FxPnpCapSurpriseRemovalOKTrue = 0x01000000, FxPnpCapSurpriseRemovalOKUseDefault = 0x02000000,
  FxPnpCapSurpriseRemovalOKMask = 0x03000000, FxPnpCapHardwareDisabledFalse = 0x00000000, FxPnpCapHardwareDisabledTrue = 0x04000000, FxPnpCapHardwareDisabledUseDefault = 0x08000000,
  FxPnpCapHardwareDisabledMask = 0x0C000000, FxPnpCapNoDisplayInUIFalse = 0x00000000, FxPnpCapNoDisplayInUITrue = 0x10000000, FxPnpCapNoDisplayInUIUseDefault = 0x20000000,
  FxPnpCapNoDisplayInUIMask = 0x30000000, FxPnpCapMask = 0x3FFFF000
}
 
enum  FxPowerCapValues {
  FxPowerCapDeviceD1False = 0x0000, FxPowerCapDeviceD1True = 0x0001, FxPowerCapDeviceD1UseDefault = 0x0002, FxPowerCapDeviceD1Mask = 0x0003,
  FxPowerCapDeviceD2False = 0x0000, FxPowerCapDeviceD2True = 0x0004, FxPowerCapDeviceD2UseDefault = 0x0008, FxPowerCapDeviceD2Mask = 0x000C,
  FxPowerCapWakeFromD0False = 0x0000, FxPowerCapWakeFromD0True = 0x0010, FxPowerCapWakeFromD0UseDefault = 0x0020, FxPowerCapWakeFromD0Mask = 0x0030,
  FxPowerCapWakeFromD1False = 0x0000, FxPowerCapWakeFromD1True = 0x0040, FxPowerCapWakeFromD1UseDefault = 0x0080, FxPowerCapWakeFromD1Mask = 0x00C0,
  FxPowerCapWakeFromD2False = 0x0000, FxPowerCapWakeFromD2True = 0x0100, FxPowerCapWakeFromD2UseDefault = 0x0200, FxPowerCapWakeFromD2Mask = 0x0300,
  FxPowerCapWakeFromD3False = 0x0000, FxPowerCapWakeFromD3True = 0x0400, FxPowerCapWakeFromD3UseDefault = 0x0800, FxPowerCapWakeFromD3Mask = 0x0C00
}
 
enum  FxWmiInstanceAction : UINT32 { AddInstance, RemoveInstance }
 

Variables

const UCHAR PnpEventQueueDepth = 8
 
const UCHAR PowerEventQueueDepth = 8
 
const UCHAR FxPowerPolicyEventQueueDepth = 8
 
const UCHAR DeviceWakeStates = PowerSystemHibernate - PowerSystemWorking + 1
 

Macro Definition Documentation

◆ DEBUGGED_EVENT

#define DEBUGGED_EVENT

Definition at line 59 of file fxpkgpnp.hpp.

◆ DO_EVENT_TRAP

#define DO_EVENT_TRAP (   x)    (0)

Definition at line 61 of file fxpkgpnp.hpp.

◆ EVENT_TRAP_FIELD

#define EVENT_TRAP_FIELD

Definition at line 64 of file fxpkgpnp.hpp.

◆ TRAP_ON_EVENT

#define TRAP_ON_EVENT

Definition at line 60 of file fxpkgpnp.hpp.

Typedef Documentation

◆ PFN_PNP_POWER_CALLBACK

typedef _Must_inspect_result_ NTSTATUS(* PFN_PNP_POWER_CALLBACK) (__inout FxPkgPnp *This, __inout FxIrp *Irp)

Definition at line 225 of file fxpkgpnp.hpp.

◆ PFN_POWER_THREAD_ENQUEUE

typedef VOID(* PFN_POWER_THREAD_ENQUEUE) (__in PVOID Context, __in PWORK_QUEUE_ITEM WorkItem)

Definition at line 93 of file fxpkgpnp.hpp.

◆ POWER_THREAD_INTERFACE

◆ PPOWER_THREAD_INTERFACE

Enumeration Type Documentation

◆ FxDeviceCallbackFlags

Enumerator
FXDEVICE_CALLBACK_IN_PREPARE_HARDWARE 

Definition at line 86 of file fxpkgpnp.hpp.

86  {
87  // Prepare hardware callback is running.
89 };

◆ FxPnpStateAndCapValues

Enumerator
FxPnpStateDisabledFalse 
FxPnpStateDisabledTrue 
FxPnpStateDisabledUseDefault 
FxPnpStateDisabledMask 
FxPnpStateDontDisplayInUIFalse 
FxPnpStateDontDisplayInUITrue 
FxPnpStateDontDisplayInUIUseDefault 
FxPnpStateDontDisplayInUIMask 
FxPnpStateFailedFalse 
FxPnpStateFailedTrue 
FxPnpStateFailedUseDefault 
FxPnpStateFailedMask 
FxPnpStateNotDisableableFalse 
FxPnpStateNotDisableableTrue 
FxPnpStateNotDisableableUseDefault 
FxPnpStateNotDisableableMask 
FxPnpStateRemovedFalse 
FxPnpStateRemovedTrue 
FxPnpStateRemovedUseDefault 
FxPnpStateRemovedMask 
FxPnpStateResourcesChangedFalse 
FxPnpStateResourcesChangedTrue 
FxPnpStateResourcesChangedUseDefault 
FxPnpStateResourcesChangedMask 
FxPnpStateMask 
FxPnpCapLockSupportedFalse 
FxPnpCapLockSupportedTrue 
FxPnpCapLockSupportedUseDefault 
FxPnpCapLockSupportedMask 
FxPnpCapEjectSupportedFalse 
FxPnpCapEjectSupportedTrue 
FxPnpCapEjectSupportedUseDefault 
FxPnpCapEjectSupportedMask 
FxPnpCapRemovableFalse 
FxPnpCapRemovableTrue 
FxPnpCapRemovableUseDefault 
FxPnpCapRemovableMask 
FxPnpCapDockDeviceFalse 
FxPnpCapDockDeviceTrue 
FxPnpCapDockDeviceUseDefault 
FxPnpCapDockDeviceMask 
FxPnpCapUniqueIDFalse 
FxPnpCapUniqueIDTrue 
FxPnpCapUniqueIDUseDefault 
FxPnpCapUniqueIDMask 
FxPnpCapSilentInstallFalse 
FxPnpCapSilentInstallTrue 
FxPnpCapSilentInstallUseDefault 
FxPnpCapSilentInstallMask 
FxPnpCapSurpriseRemovalOKFalse 
FxPnpCapSurpriseRemovalOKTrue 
FxPnpCapSurpriseRemovalOKUseDefault 
FxPnpCapSurpriseRemovalOKMask 
FxPnpCapHardwareDisabledFalse 
FxPnpCapHardwareDisabledTrue 
FxPnpCapHardwareDisabledUseDefault 
FxPnpCapHardwareDisabledMask 
FxPnpCapNoDisplayInUIFalse 
FxPnpCapNoDisplayInUITrue 
FxPnpCapNoDisplayInUIUseDefault 
FxPnpCapNoDisplayInUIMask 
FxPnpCapMask 

Definition at line 249 of file fxpkgpnp.hpp.

249  {
250  FxPnpStateDisabledFalse = 0x00000000,
251  FxPnpStateDisabledTrue = 0x00000001,
252  FxPnpStateDisabledUseDefault = 0x00000002,
253  FxPnpStateDisabledMask = 0x00000003,
254 
255  FxPnpStateDontDisplayInUIFalse = 0x00000000,
256  FxPnpStateDontDisplayInUITrue = 0x00000004,
258  FxPnpStateDontDisplayInUIMask = 0x0000000C,
259 
260  FxPnpStateFailedFalse = 0x00000000,
261  FxPnpStateFailedTrue = 0x00000010,
262  FxPnpStateFailedUseDefault = 0x00000020,
263  FxPnpStateFailedMask = 0x00000030,
264 
265  FxPnpStateNotDisableableFalse = 0x00000000,
266  FxPnpStateNotDisableableTrue = 0x00000040,
268  FxPnpStateNotDisableableMask = 0x000000C0,
269 
270  FxPnpStateRemovedFalse = 0x00000000,
271  FxPnpStateRemovedTrue = 0x00000100,
272  FxPnpStateRemovedUseDefault = 0x00000200,
273  FxPnpStateRemovedMask = 0x00000300,
274 
275  FxPnpStateResourcesChangedFalse = 0x00000000,
276  FxPnpStateResourcesChangedTrue = 0x00000400,
278  FxPnpStateResourcesChangedMask = 0x00000C00,
279 
280  FxPnpStateMask = 0x00000FFF,
281 
282  FxPnpCapLockSupportedFalse = 0x00000000,
283  FxPnpCapLockSupportedTrue = 0x00001000,
284  FxPnpCapLockSupportedUseDefault = 0x00002000,
285  FxPnpCapLockSupportedMask = 0x00003000,
286 
287  FxPnpCapEjectSupportedFalse = 0x00000000,
288  FxPnpCapEjectSupportedTrue = 0x00004000,
290  FxPnpCapEjectSupportedMask = 0x0000C000,
291 
292  FxPnpCapRemovableFalse = 0x00000000,
293  FxPnpCapRemovableTrue = 0x00010000,
294  FxPnpCapRemovableUseDefault = 0x00020000,
295  FxPnpCapRemovableMask = 0x00030000,
296 
297  FxPnpCapDockDeviceFalse = 0x00000000,
298  FxPnpCapDockDeviceTrue = 0x00040000,
299  FxPnpCapDockDeviceUseDefault = 0x00080000,
300  FxPnpCapDockDeviceMask = 0x000C0000,
301 
302  FxPnpCapUniqueIDFalse = 0x00000000,
303  FxPnpCapUniqueIDTrue = 0x00100000,
304  FxPnpCapUniqueIDUseDefault = 0x00200000,
305  FxPnpCapUniqueIDMask = 0x00300000,
306 
307  FxPnpCapSilentInstallFalse = 0x00000000,
308  FxPnpCapSilentInstallTrue = 0x00400000,
309  FxPnpCapSilentInstallUseDefault = 0x00800000,
310  FxPnpCapSilentInstallMask = 0x00C00000,
311 
312  FxPnpCapSurpriseRemovalOKFalse = 0x00000000,
313  FxPnpCapSurpriseRemovalOKTrue = 0x01000000,
315  FxPnpCapSurpriseRemovalOKMask = 0x03000000,
316 
317  FxPnpCapHardwareDisabledFalse = 0x00000000,
318  FxPnpCapHardwareDisabledTrue = 0x04000000,
320  FxPnpCapHardwareDisabledMask = 0x0C000000,
321 
322  FxPnpCapNoDisplayInUIFalse = 0x00000000,
323  FxPnpCapNoDisplayInUITrue = 0x10000000,
324  FxPnpCapNoDisplayInUIUseDefault = 0x20000000,
325  FxPnpCapNoDisplayInUIMask = 0x30000000,
326 
327  FxPnpCapMask = 0x3FFFF000,
328 };

◆ FxPowerCapValues

Enumerator
FxPowerCapDeviceD1False 
FxPowerCapDeviceD1True 
FxPowerCapDeviceD1UseDefault 
FxPowerCapDeviceD1Mask 
FxPowerCapDeviceD2False 
FxPowerCapDeviceD2True 
FxPowerCapDeviceD2UseDefault 
FxPowerCapDeviceD2Mask 
FxPowerCapWakeFromD0False 
FxPowerCapWakeFromD0True 
FxPowerCapWakeFromD0UseDefault 
FxPowerCapWakeFromD0Mask 
FxPowerCapWakeFromD1False 
FxPowerCapWakeFromD1True 
FxPowerCapWakeFromD1UseDefault 
FxPowerCapWakeFromD1Mask 
FxPowerCapWakeFromD2False 
FxPowerCapWakeFromD2True 
FxPowerCapWakeFromD2UseDefault 
FxPowerCapWakeFromD2Mask 
FxPowerCapWakeFromD3False 
FxPowerCapWakeFromD3True 
FxPowerCapWakeFromD3UseDefault 
FxPowerCapWakeFromD3Mask 

Definition at line 370 of file fxpkgpnp.hpp.

370  {
371  FxPowerCapDeviceD1False = 0x0000,
372  FxPowerCapDeviceD1True = 0x0001,
374  FxPowerCapDeviceD1Mask = 0x0003,
375 
376  FxPowerCapDeviceD2False = 0x0000,
377  FxPowerCapDeviceD2True = 0x0004,
379  FxPowerCapDeviceD2Mask = 0x000C,
380 
381  FxPowerCapWakeFromD0False = 0x0000,
382  FxPowerCapWakeFromD0True = 0x0010,
384  FxPowerCapWakeFromD0Mask = 0x0030,
385 
386  FxPowerCapWakeFromD1False = 0x0000,
387  FxPowerCapWakeFromD1True = 0x0040,
389  FxPowerCapWakeFromD1Mask = 0x00C0,
390 
391  FxPowerCapWakeFromD2False = 0x0000,
392  FxPowerCapWakeFromD2True = 0x0100,
394  FxPowerCapWakeFromD2Mask = 0x0300,
395 
396  FxPowerCapWakeFromD3False = 0x0000,
397  FxPowerCapWakeFromD3True = 0x0400,
399  FxPowerCapWakeFromD3Mask = 0x0C00,
400 };

◆ FxPowerDownType

Enumerator
FxPowerDownTypeExplicit 
FxPowerDownTypeImplicit 

Definition at line 217 of file fxpkgpnp.hpp.

◆ FxWmiInstanceAction

Enumerator
AddInstance 
RemoveInstance 

Definition at line 428 of file fxpkgpnp.hpp.

428  : UINT32 {
429  AddInstance,
431 };
unsigned int UINT32

◆ NotifyResourcesFlags

Enumerator
NotifyResourcesNoFlags 
NotifyResourcesNP 
NotifyResourcesSurpriseRemoved 
NotifyResourcesForceDisconnect 
NotifyResourcesExplicitPowerup 
NotifyResourcesExplicitPowerDown 
NotifyResourcesDisconnectInactive 
NotifyResourcesArmedForWake 

Definition at line 206 of file fxpkgpnp.hpp.

◆ SendDeviceRequestAction

Enumerator
NoRetry 
Retry 

Definition at line 201 of file fxpkgpnp.hpp.

201  {
202  NoRetry = 0,
203  Retry,
204 };

Variable Documentation

◆ DeviceWakeStates

Definition at line 199 of file fxpkgpnp.hpp.

Referenced by FxPkgPnp::QueryForCapabilities().

◆ FxPowerPolicyEventQueueDepth

const UCHAR FxPowerPolicyEventQueueDepth = 8

Definition at line 35 of file fxpkgpnp.hpp.

◆ PnpEventQueueDepth

const UCHAR PnpEventQueueDepth = 8

Definition at line 33 of file fxpkgpnp.hpp.

◆ PowerEventQueueDepth

const UCHAR PowerEventQueueDepth = 8

Definition at line 34 of file fxpkgpnp.hpp.