ReactOS 0.4.15-dev-7788-g1ad9096
wdfpdo.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _WDF_PDO_EVENT_CALLBACKS
 

Macros

#define WDF_EXTERN_C
 
#define WDF_EXTERN_C_START
 
#define WDF_EXTERN_C_END
 

Typedefs

typedef EVT_WDF_DEVICE_RESOURCES_QUERY * PFN_WDF_DEVICE_RESOURCES_QUERY
 
typedef _In_ WDFIORESREQLIST IoResourceRequirementsList
 
typedef EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY * PFN_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY
 
typedef EVT_WDF_DEVICE_EJECT * PFN_WDF_DEVICE_EJECT
 
typedef _In_ BOOLEAN IsLocked
 
typedef EVT_WDF_DEVICE_SET_LOCK * PFN_WDF_DEVICE_SET_LOCK
 
typedef _In_ SYSTEM_POWER_STATE PowerState
 
typedef EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS * PFN_WDF_DEVICE_ENABLE_WAKE_AT_BUS
 
typedef EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS * PFN_WDF_DEVICE_DISABLE_WAKE_AT_BUS
 
typedef EVT_WDF_DEVICE_REPORTED_MISSING * PFN_WDF_DEVICE_REPORTED_MISSING
 
typedef struct _WDF_PDO_EVENT_CALLBACKS WDF_PDO_EVENT_CALLBACKS
 
typedef struct _WDF_PDO_EVENT_CALLBACKSPWDF_PDO_EVENT_CALLBACKS
 
typedef _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PWDFDEVICE_INIT(STDCALL *PFN_WDFPDOINITALLOCATE) (_In_ PWDF_DRIVER_GLOBALS DriverGlobals
 
typedef _Must_inspect_result_ _In_ WDFDEVICE ParentDevice
 
typedef _In_ PWDFDEVICE_INIT DeviceInit
 
typedef _In_ PWDFDEVICE_INIT _In_ PWDF_PDO_EVENT_CALLBACKS DispatchTable
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING DeviceID
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING InstanceID
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING HardwareID
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING CompatibleID
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING ContainerID
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING DeviceDescription
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING _In_ PCUNICODE_STRING DeviceLocation
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING _In_ PCUNICODE_STRING _In_ LCID LocaleId
 
typedef _Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ CONST GUIDDeviceClassGuid
 
typedef _Must_inspect_result_ _In_ WDFDEVICE Device
 
typedef _Must_inspect_result_ _In_ WDFDEVICE _Inout_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription
 
typedef _Must_inspect_result_ _In_ WDFDEVICE _Inout_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription
 
typedef _Must_inspect_result_ _In_ WDFDEVICE _In_ PDEVICE_OBJECT PhysicalDevice
 

Functions

WDF_EXTERN_C_START typedef _Function_class_ (EVT_WDF_DEVICE_RESOURCES_QUERY) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_DEVICE_RESOURCES_QUERY(_In_ WDFDEVICE Device
 
typedef _Function_class_ (EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY(_In_ WDFDEVICE Device
 
typedef _Function_class_ (EVT_WDF_DEVICE_EJECT) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_DEVICE_EJECT(_In_ WDFDEVICE Device)
 
typedef _Function_class_ (EVT_WDF_DEVICE_SET_LOCK) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_DEVICE_SET_LOCK(_In_ WDFDEVICE Device
 
typedef _Function_class_ (EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) NTSTATUS STDCALL EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS(_In_ WDFDEVICE Device
 
typedef _Function_class_ (EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) VOID STDCALL EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS(_In_ WDFDEVICE Device)
 
typedef _Function_class_ (EVT_WDF_DEVICE_REPORTED_MISSING) _IRQL_requires_same_ _IRQL_requires_max_(PASSIVE_LEVEL) VOID STDCALL EVT_WDF_DEVICE_REPORTED_MISSING(_In_ WDFDEVICE Device)
 
FORCEINLINE VOID WDF_PDO_EVENT_CALLBACKS_INIT (_Out_ PWDF_PDO_EVENT_CALLBACKS Callbacks)
 
_Must_inspect_result_ _IRQL_requires_max_ (DISPATCH_LEVEL) FORCEINLINE NTSTATUS WdfPdoMarkMissing(_In_ WDFDEVICE Device)
 

Variables

WDF_EXTERN_C_START typedef _In_ WDFCMRESLIST Resources
 

Macro Definition Documentation

◆ WDF_EXTERN_C

#define WDF_EXTERN_C

Definition at line 38 of file wdfpdo.h.

◆ WDF_EXTERN_C_END

#define WDF_EXTERN_C_END

Definition at line 40 of file wdfpdo.h.

◆ WDF_EXTERN_C_START

#define WDF_EXTERN_C_START

Definition at line 39 of file wdfpdo.h.

Typedef Documentation

◆ _IRQL_requires_max_

typedef _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS(STDCALL *PFN_WDFPDOADDEJECTIONRELATIONSPHYSICALDEVICE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals

Definition at line 212 of file wdfpdo.h.

◆ AddressDescription

Initial value:
{
#define WdfFunctions
Definition: wdf.h:66
PWDF_DRIVER_GLOBALS WdfDriverGlobals
@ WdfPdoRetrieveAddressDescriptionTableIndex
Definition: wdffuncenum.h:248
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfpdo.h:555
_Must_inspect_result_ _In_ WDFDEVICE _Inout_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription
Definition: wdfpdo.h:665

Definition at line 664 of file wdfpdo.h.

◆ CompatibleID

Initial value:
{
@ WdfPdoInitAddCompatibleIDTableIndex
Definition: wdffuncenum.h:240
_In_ PWDFDEVICE_INIT DeviceInit
Definition: wdfpdo.h:245
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING CompatibleID
Definition: wdfpdo.h:371

Definition at line 370 of file wdfpdo.h.

◆ ContainerID

Initial value:
{
@ WdfPdoInitAssignContainerIDTableIndex
Definition: wdffuncenum.h:416
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING ContainerID
Definition: wdfpdo.h:402

Definition at line 401 of file wdfpdo.h.

◆ Device

typedef _In_ WDFDEVICE Device

Definition at line 554 of file wdfpdo.h.

◆ DeviceClassGuid

Initial value:
{
@ WdfPdoInitAssignRawDeviceTableIndex
Definition: wdffuncenum.h:243
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ CONST GUID * DeviceClassGuid
Definition: wdfpdo.h:501

Definition at line 500 of file wdfpdo.h.

◆ DeviceDescription

◆ DeviceID

Initial value:
{
@ WdfPdoInitAssignDeviceIDTableIndex
Definition: wdffuncenum.h:237
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING DeviceID
Definition: wdfpdo.h:278

Definition at line 277 of file wdfpdo.h.

◆ DeviceInit

Definition at line 245 of file wdfpdo.h.

◆ DeviceLocation

◆ DispatchTable

Initial value:
{
@ WdfPdoInitSetEventCallbacksTableIndex
Definition: wdffuncenum.h:236
_In_ PWDFDEVICE_INIT _In_ PWDF_PDO_EVENT_CALLBACKS DispatchTable
Definition: wdfpdo.h:248

Definition at line 247 of file wdfpdo.h.

◆ HardwareID

Initial value:
{
@ WdfPdoInitAddHardwareIDTableIndex
Definition: wdffuncenum.h:239
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING HardwareID
Definition: wdfpdo.h:340

Definition at line 339 of file wdfpdo.h.

◆ IdentificationDescription

Initial value:
{
@ WdfPdoRetrieveIdentificationDescriptionTableIndex
Definition: wdffuncenum.h:247
_Must_inspect_result_ _In_ WDFDEVICE _Inout_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription
Definition: wdfpdo.h:634

Definition at line 633 of file wdfpdo.h.

◆ InstanceID

Initial value:
{
@ WdfPdoInitAssignInstanceIDTableIndex
Definition: wdffuncenum.h:238
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING InstanceID
Definition: wdfpdo.h:309

Definition at line 308 of file wdfpdo.h.

◆ IoResourceRequirementsList

typedef _In_ WDFIORESREQLIST IoResourceRequirementsList

Definition at line 77 of file wdfpdo.h.

◆ IsLocked

Definition at line 105 of file wdfpdo.h.

◆ LocaleId

Initial value:
{
@ WdfPdoInitAddDeviceTextTableIndex
Definition: wdffuncenum.h:241
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING _In_ PCUNICODE_STRING DeviceLocation
Definition: wdfpdo.h:434
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING _In_ PCUNICODE_STRING _In_ LCID LocaleId
Definition: wdfpdo.h:437
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ PCUNICODE_STRING DeviceDescription
Definition: wdfpdo.h:432

Definition at line 436 of file wdfpdo.h.

◆ ParentDevice

Definition at line 219 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_DISABLE_WAKE_AT_BUS

typedef EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS* PFN_WDF_DEVICE_DISABLE_WAKE_AT_BUS

Definition at line 136 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_EJECT

typedef EVT_WDF_DEVICE_EJECT* PFN_WDF_DEVICE_EJECT

Definition at line 93 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_ENABLE_WAKE_AT_BUS

typedef EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS* PFN_WDF_DEVICE_ENABLE_WAKE_AT_BUS

Definition at line 123 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_REPORTED_MISSING

typedef EVT_WDF_DEVICE_REPORTED_MISSING* PFN_WDF_DEVICE_REPORTED_MISSING

Definition at line 149 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY

typedef EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY* PFN_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY

Definition at line 80 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_RESOURCES_QUERY

typedef EVT_WDF_DEVICE_RESOURCES_QUERY* PFN_WDF_DEVICE_RESOURCES_QUERY

Definition at line 65 of file wdfpdo.h.

◆ PFN_WDF_DEVICE_SET_LOCK

typedef EVT_WDF_DEVICE_SET_LOCK* PFN_WDF_DEVICE_SET_LOCK

Definition at line 108 of file wdfpdo.h.

◆ PhysicalDevice

Initial value:
{
@ WdfPdoAddEjectionRelationsPhysicalDeviceTableIndex
Definition: wdffuncenum.h:250
_Must_inspect_result_ _In_ WDFDEVICE _In_ PDEVICE_OBJECT PhysicalDevice
Definition: wdfpdo.h:727

Definition at line 726 of file wdfpdo.h.

◆ PowerState

Definition at line 120 of file wdfpdo.h.

◆ PWDF_PDO_EVENT_CALLBACKS

◆ WDF_PDO_EVENT_CALLBACKS

Function Documentation

◆ _Function_class_() [1/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS  )

◆ _Function_class_() [2/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_EJECT  )

◆ _Function_class_() [3/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS  )

◆ _Function_class_() [4/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_REPORTED_MISSING  )

◆ _Function_class_() [5/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY  )

◆ _Function_class_() [6/7]

WDF_EXTERN_C_START typedef _Function_class_ ( EVT_WDF_DEVICE_RESOURCES_QUERY  )

◆ _Function_class_() [7/7]

typedef _Function_class_ ( EVT_WDF_DEVICE_SET_LOCK  )

◆ _IRQL_requires_max_()

_Must_inspect_result_ _IRQL_requires_max_ ( DISPATCH_LEVEL  )

Definition at line 558 of file wdfpdo.h.

565{
566 return ((PFN_WDFPDOMARKMISSING) WdfFunctions[WdfPdoMarkMissingTableIndex])(WdfDriverGlobals, Device);
567}
@ WdfPdoMarkMissingTableIndex
Definition: wdffuncenum.h:244

◆ WDF_PDO_EVENT_CALLBACKS_INIT()

FORCEINLINE VOID WDF_PDO_EVENT_CALLBACKS_INIT ( _Out_ PWDF_PDO_EVENT_CALLBACKS  Callbacks)

Definition at line 199 of file wdfpdo.h.

202{
204 Callbacks->Size = sizeof(WDF_PDO_EVENT_CALLBACKS);
205}
const struct winhelp_callbacks Callbacks
Definition: callback.c:161
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
struct _WDF_PDO_EVENT_CALLBACKS WDF_PDO_EVENT_CALLBACKS

Variable Documentation

◆ Resources

WDF_EXTERN_C_START typedef _In_ WDFCMRESLIST Resources

Definition at line 62 of file wdfpdo.h.