/*++ Module Name: VfFxDynamics.h Abstract: Generated header for WDF API Verifier hooks Environment: kernel mode only Warning: manual changes to this file will be lost. --*/ #ifndef _VFFXDYNAMICS_H_ #define _VFFXDYNAMICS_H_ _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfChildListCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_CHILD_LIST_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES ChildListAttributes, _Out_ WDFCHILDLIST* ChildList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfChildListGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfChildListRetrievePdo)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _Inout_ PWDF_CHILD_RETRIEVE_INFO RetrieveInfo ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfChildListRetrieveAddressDescription)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription, _Inout_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfChildListBeginScan)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfChildListEndScan)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfChildListBeginIteration)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_LIST_ITERATOR Iterator ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfChildListRetrieveNextDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_LIST_ITERATOR Iterator, _Out_ WDFDEVICE* Device, _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfChildListEndIteration)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_LIST_ITERATOR Iterator ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfChildListAddOrUpdateChildDescriptionAsPresent)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription, _In_opt_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfChildListUpdateChildDescriptionAsMissing)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfChildListUpdateAllChildDescriptionsAsPresent)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfChildListRequestChildEject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCHILDLIST ChildList, _In_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCollectionCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES CollectionAttributes, _Out_ WDFCOLLECTION* Collection ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfCollectionGetCount)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCollectionAdd)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection, _In_ WDFOBJECT Object ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCollectionRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection, _In_ WDFOBJECT Item ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCollectionRemoveItem)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfCollectionGetItem)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfCollectionGetFirstItem)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfCollectionGetLastItem)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOLLECTION Collection ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCommonBufferCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ _When_(Length == 0, __drv_reportError(Length cannot be zero)) size_t Length, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFCOMMONBUFFER* CommonBuffer ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCommonBufferCreateWithConfig)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ _When_(Length == 0, __drv_reportError(Length cannot be zero)) size_t Length, _In_ PWDF_COMMON_BUFFER_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFCOMMONBUFFER* CommonBuffer ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PVOID VFWDFEXPORT(WdfCommonBufferGetAlignedVirtualAddress)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOMMONBUFFER CommonBuffer ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PHYSICAL_ADDRESS VFWDFEXPORT(WdfCommonBufferGetAlignedLogicalAddress)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOMMONBUFFER CommonBuffer ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfCommonBufferGetLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCOMMONBUFFER CommonBuffer ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PWDFDEVICE_INIT VFWDFEXPORT(WdfControlDeviceInitAllocate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver, _In_ CONST UNICODE_STRING* SDDLString ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfControlDeviceInitSetShutdownNotification)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PFN_WDF_DEVICE_SHUTDOWN_NOTIFICATION Notification, _In_ UCHAR Flags ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfControlFinishInitializing)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PWDFCXDEVICE_INIT VFWDFEXPORT(WdfCxDeviceInitAllocate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCxDeviceInitAssignWdmIrpPreprocessCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PFN_WDFCXDEVICE_WDM_IRP_PREPROCESS EvtCxDeviceWdmIrpPreprocess, _In_ UCHAR MajorFunction, _When_(NumMinorFunctions > 0, _In_reads_bytes_(NumMinorFunctions)) _When_(NumMinorFunctions == 0, _In_opt_) PUCHAR MinorFunctions, _In_ ULONG NumMinorFunctions ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCxDeviceInitSetIoInCallerContextCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PFN_WDF_IO_IN_CALLER_CONTEXT EvtIoInCallerContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCxDeviceInitSetRequestAttributes)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PWDF_OBJECT_ATTRIBUTES RequestAttributes ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCxDeviceInitSetFileObjectConfig)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PWDFCX_FILEOBJECT_CONFIG CxFileObjectConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES FileObjectAttributes ); WDFAPI VOID VFWDFEXPORT(WdfCxVerifierKeBugCheck)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFOBJECT Object, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4 ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceGetDeviceState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _Out_ PWDF_DEVICE_STATE DeviceState ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetDeviceState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_STATE DeviceState ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfWdmDeviceGetWdfDeviceHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PDEVICE_OBJECT DeviceObject ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfDeviceWdmGetDeviceObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfDeviceWdmGetAttachedDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfDeviceWdmGetPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceWdmDispatchPreprocessedIrp)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PIRP Irp ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceWdmDispatchIrp)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PIRP Irp, _In_ WDFCONTEXT DispatchContext ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PIRP Irp, _In_ WDFQUEUE Queue, _In_ ULONG Flags ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAddDependentUsageDeviceObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT DependentDevice ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceRemoveDependentUsageDeviceObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT DependentDevice ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAddRemovalRelationsPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT PhysicalDevice ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceRemoveRemovalRelationsPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT PhysicalDevice ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceClearRemovalRelationsDevices)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDRIVER VFWDFEXPORT(WdfDeviceGetDriver)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceRetrieveDeviceName)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ WDFSTRING String ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAssignMofResourceName)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PCUNICODE_STRING MofResourceName ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFIOTARGET VFWDFEXPORT(WdfDeviceGetIoTarget)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_DEVICE_PNP_STATE VFWDFEXPORT(WdfDeviceGetDevicePnpState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_DEVICE_POWER_STATE VFWDFEXPORT(WdfDeviceGetDevicePowerState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_DEVICE_POWER_POLICY_STATE VFWDFEXPORT(WdfDeviceGetDevicePowerPolicyState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAssignS0IdleSettings)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAssignSxWakeSettings)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_POWER_POLICY_WAKE_SETTINGS Settings ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceOpenRegistryKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ ULONG DeviceInstanceKeyType, _In_ ACCESS_MASK DesiredAccess, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceOpenDevicemapKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PCUNICODE_STRING KeyName, _In_ ACCESS_MASK DesiredAccess, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetSpecialFileSupport)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ WDF_SPECIAL_FILE_TYPE FileType, _In_ BOOLEAN FileTypeIsSupported ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetCharacteristics)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ ULONG DeviceCharacteristics ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfDeviceGetCharacteristics)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfDeviceGetAlignmentRequirement)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetAlignmentRequirement)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ ULONG AlignmentRequirement ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitFree)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_PNPPOWER_EVENT_CALLBACKS PnpPowerEventCallbacks ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_POWER_POLICY_EVENT_CALLBACKS PowerPolicyEventCallbacks ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ BOOLEAN IsPowerPolicyOwner ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitRegisterPnpStateChangeCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ WDF_DEVICE_PNP_STATE PnpState, _In_ PFN_WDF_DEVICE_PNP_STATE_CHANGE_NOTIFICATION EvtDevicePnpStateChange, _In_ ULONG CallbackTypes ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitRegisterPowerStateChangeCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ WDF_DEVICE_POWER_STATE PowerState, _In_ PFN_WDF_DEVICE_POWER_STATE_CHANGE_NOTIFICATION EvtDevicePowerStateChange, _In_ ULONG CallbackTypes ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitRegisterPowerPolicyStateChangeCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ WDF_DEVICE_POWER_POLICY_STATE PowerPolicyState, _In_ PFN_WDF_DEVICE_POWER_POLICY_STATE_CHANGE_NOTIFICATION EvtDevicePowerPolicyStateChange, _In_ ULONG CallbackTypes ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetExclusive)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ BOOLEAN IsExclusive ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetIoType)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ WDF_DEVICE_IO_TYPE IoType ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPowerNotPageable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPowerPageable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetPowerInrush)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetDeviceType)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ DEVICE_TYPE DeviceType ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitAssignName)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_opt_ PCUNICODE_STRING DeviceName ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitAssignSDDLString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_opt_ PCUNICODE_STRING SDDLString ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetDeviceClass)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ CONST GUID* DeviceClassGuid ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetCharacteristics)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ ULONG DeviceCharacteristics, _In_ BOOLEAN OrInValues ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetFileObjectConfig)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_FILEOBJECT_CONFIG FileObjectConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES FileObjectAttributes ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetRequestAttributes)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_OBJECT_ATTRIBUTES RequestAttributes ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceInitAssignWdmIrpPreprocessCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PFN_WDFDEVICE_WDM_IRP_PREPROCESS EvtDeviceWdmIrpPreprocess, _In_ UCHAR MajorFunction, _When_(NumMinorFunctions > 0, _In_reads_bytes_(NumMinorFunctions)) _When_(NumMinorFunctions == 0, _In_opt_) PUCHAR MinorFunctions, _In_ ULONG NumMinorFunctions ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetIoInCallerContextCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PFN_WDF_IO_IN_CALLER_CONTEXT EvtIoInCallerContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetRemoveLockOptions)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_REMOVE_LOCK_OPTIONS Options ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _Inout_ PWDFDEVICE_INIT* DeviceInit, _In_opt_ PWDF_OBJECT_ATTRIBUTES DeviceAttributes, _Out_ WDFDEVICE* Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetStaticStopRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ BOOLEAN Stoppable ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceCreateDeviceInterface)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ CONST GUID* InterfaceClassGUID, _In_opt_ PCUNICODE_STRING ReferenceString ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetDeviceInterfaceState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ CONST GUID* InterfaceClassGUID, _In_opt_ PCUNICODE_STRING ReferenceString, _In_ BOOLEAN IsInterfaceEnabled ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ CONST GUID* InterfaceClassGUID, _In_opt_ PCUNICODE_STRING ReferenceString, _In_ WDFSTRING String ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceCreateSymbolicLink)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PCUNICODE_STRING SymbolicLinkName ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceQueryProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ ULONG BufferLength, _Out_writes_bytes_all_(BufferLength) PVOID PropertyBuffer, _Out_ PULONG ResultLength ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAllocAndQueryProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes, _Out_ WDFMEMORY* PropertyMemory ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetPnpCapabilities)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_PNP_CAPABILITIES PnpCapabilities ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetPowerCapabilities)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_POWER_CAPABILITIES PowerCapabilities ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetBusInformationForChildren)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PPNP_BUS_INFORMATION BusInformation ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceIndicateWakeStatus)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ NTSTATUS WaitWakeStatus ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceSetFailed)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ WDF_DEVICE_FAILED_ACTION FailedAction ); _Must_inspect_result_ _When_(WaitForD0 == 0, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(WaitForD0 != 0, _IRQL_requires_max_(PASSIVE_LEVEL)) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceStopIdleNoTrack)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ BOOLEAN WaitForD0 ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceResumeIdleNoTrack)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _When_(WaitForD0 == 0, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(WaitForD0 != 0, _IRQL_requires_max_(PASSIVE_LEVEL)) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceStopIdleActual)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ BOOLEAN WaitForD0, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceResumeIdleActual)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFFILEOBJECT VFWDFEXPORT(WdfDeviceGetFileObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PFILE_OBJECT FileObject ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceEnqueueRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFQUEUE VFWDFEXPORT(WdfDeviceGetDefaultQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceConfigureRequestDispatching)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ WDFQUEUE Queue, _In_ _Strict_type_match_ WDF_REQUEST_TYPE RequestType ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_opt_ WDFDRIVER Driver, _In_ UCHAR MajorFunction, _In_ PFN_WDFDEVICE_WDM_IRP_DISPATCH EvtDeviceWdmIrpDisptach, _In_opt_ WDFCONTEXT DriverContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI POWER_ACTION VFWDFEXPORT(WdfDeviceGetSystemPowerAction)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceWdmAssignPowerFrameworkSettings)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_POWER_FRAMEWORK_SETTINGS PowerFrameworkSettings ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE ReleaseHardwareOrderOnFailure ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitSetIoTypeEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_IO_TYPE_CONFIG IoTypeConfig ); _Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceQueryPropertyEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_PROPERTY_DATA DeviceProperty, _In_ ULONG BufferLength, _Out_ PVOID PropertyBuffer, _Out_ PULONG RequiredSize, _Out_ PDEVPROPTYPE Type ); _Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAllocAndQueryPropertyEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_PROPERTY_DATA DeviceProperty, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes, _Out_ WDFMEMORY* PropertyMemory, _Out_ PDEVPROPTYPE Type ); _Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAssignProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DEVICE_PROPERTY_DATA DeviceProperty, _In_ DEVPROPTYPE Type, _In_ ULONG Size, _In_opt_ PVOID Data ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFIOTARGET VFWDFEXPORT(WdfDeviceGetSelfIoTarget)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDeviceInitAllowSelfIoTarget)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaEnablerCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_DMA_ENABLER_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFDMAENABLER* DmaEnablerHandle ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaEnablerConfigureSystemProfile)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ PWDF_DMA_SYSTEM_PROFILE_CONFIG ProfileConfig, _In_ WDF_DMA_DIRECTION ConfigDirection ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfDmaEnablerGetMaximumLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfDmaEnablerGetMaximumScatterGatherElements)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaEnablerSetMaximumScatterGatherElements)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ _When_(MaximumFragments == 0, __drv_reportError(MaximumFragments cannot be zero)) size_t MaximumFragments ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfDmaEnablerGetFragmentLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ WDF_DMA_DIRECTION DmaDirection ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDMA_ADAPTER VFWDFEXPORT(WdfDmaEnablerWdmGetDmaAdapter)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_ WDF_DMA_DIRECTION DmaDirection ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMAENABLER DmaEnabler, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFDMATRANSACTION* DmaTransaction ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionInitialize)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction, _In_ WDF_DMA_DIRECTION DmaDirection, _In_ PMDL Mdl, _In_ PVOID VirtualAddress, _In_ _When_(Length == 0, __drv_reportError(Length cannot be zero)) size_t Length ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionInitializeUsingOffset)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction, _In_ WDF_DMA_DIRECTION DmaDirection, _In_ PMDL Mdl, _In_ size_t Offset, _In_ _When_(Length == 0, __drv_reportError(Length cannot be zero)) size_t Length ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionInitializeUsingRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ WDFREQUEST Request, _In_ PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction, _In_ WDF_DMA_DIRECTION DmaDirection ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionExecute)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_opt_ WDFCONTEXT Context ); _Success_(TRUE) _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionRelease)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDmaTransactionDmaCompleted)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _Out_ NTSTATUS* Status ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDmaTransactionDmaCompletedWithLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ size_t TransferredLength, _Out_ NTSTATUS* Status ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDmaTransactionDmaCompletedFinal)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ size_t FinalTransferredLength, _Out_ NTSTATUS* Status ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfDmaTransactionGetBytesTransferred)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionSetMaximumLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ size_t MaximumLength ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFREQUEST VFWDFEXPORT(WdfDmaTransactionGetRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI size_t VFWDFEXPORT(WdfDmaTransactionGetCurrentDmaTransferLength)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfDmaTransactionGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionGetTransferInfo)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _Out_opt_ ULONG* MapRegisterCount, _Out_opt_ ULONG* ScatterGatherElementCount ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionSetChannelConfigurationCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_opt_ PFN_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL ConfigureRoutine, _In_opt_ PVOID ConfigureContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionSetTransferCompleteCallback)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_opt_ PFN_WDF_DMA_TRANSACTION_DMA_TRANSFER_COMPLETE DmaCompletionRoutine, _In_opt_ PVOID DmaCompletionContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionSetImmediateExecution)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ BOOLEAN UseImmediateExecution ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDmaTransactionAllocateResources)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ WDF_DMA_DIRECTION DmaDirection, _In_ ULONG RequiredMapRegisters, _In_ PFN_WDF_RESERVE_DMA EvtReserveDmaFunction, _In_ PVOID EvtReserveDmaContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionSetDeviceAddressOffset)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction, _In_ ULONG Offset ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionFreeResources)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDmaTransactionCancel)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PVOID VFWDFEXPORT(WdfDmaTransactionWdmGetTransferContext)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfDmaTransactionStopSystemTransfer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDMATRANSACTION DmaTransaction ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDpcCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDF_DPC_CONFIG Config, _In_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFDPC* Dpc ); _IRQL_requires_max_(HIGH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDpcEnqueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDPC Dpc ); _When_(Wait == __true, _IRQL_requires_max_(PASSIVE_LEVEL)) _When_(Wait == __false, _IRQL_requires_max_(HIGH_LEVEL)) WDFAPI BOOLEAN VFWDFEXPORT(WdfDpcCancel)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDPC Dpc, _In_ BOOLEAN Wait ); _IRQL_requires_max_(HIGH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfDpcGetParentObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDPC Dpc ); _IRQL_requires_max_(HIGH_LEVEL) WDFAPI PKDPC VFWDFEXPORT(WdfDpcWdmGetDpc)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDPC Dpc ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDriverCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PDRIVER_OBJECT DriverObject, _In_ PCUNICODE_STRING RegistryPath, _In_opt_ PWDF_OBJECT_ATTRIBUTES DriverAttributes, _In_ PWDF_DRIVER_CONFIG DriverConfig, _Out_opt_ WDFDRIVER* Driver ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PWSTR VFWDFEXPORT(WdfDriverGetRegistryPath)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDRIVER_OBJECT VFWDFEXPORT(WdfDriverWdmGetDriverObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDriverOpenParametersRegistryKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver, _In_ ACCESS_MASK DesiredAccess, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDRIVER VFWDFEXPORT(WdfWdmDriverGetWdfDriverHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PDRIVER_OBJECT DriverObject ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDriverRegisterTraceInfo)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PDRIVER_OBJECT DriverObject, _In_ PFN_WDF_TRACE_CALLBACK EvtTraceCallback, _In_ PVOID ControlBlock ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDriverRetrieveVersionString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver, _In_ WDFSTRING String ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfDriverIsVersionAvailable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver, _In_ PWDF_DRIVER_VERSION_AVAILABLE_PARAMS VersionAvailableParams ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfFdoInitWdmGetPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoInitOpenRegistryKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ ULONG DeviceInstanceKeyType, _In_ ACCESS_MASK DesiredAccess, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoInitQueryProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ ULONG BufferLength, _Out_writes_bytes_all_opt_(BufferLength) PVOID PropertyBuffer, _Out_ PULONG ResultLength ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoInitAllocAndQueryProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes, _Out_ WDFMEMORY* PropertyMemory ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoInitQueryPropertyEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_DEVICE_PROPERTY_DATA DeviceProperty, _In_ ULONG BufferLength, _Out_ PVOID PropertyBuffer, _Out_ PULONG ResultLength, _Out_ PDEVPROPTYPE Type ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_DEVICE_PROPERTY_DATA DeviceProperty, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes, _Out_ WDFMEMORY* PropertyMemory, _Out_ PDEVPROPTYPE Type ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfFdoInitSetEventCallbacks)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_FDO_EVENT_CALLBACKS FdoEventCallbacks ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfFdoInitSetFilter)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfFdoInitSetDefaultChildListConfig)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _Inout_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_CHILD_LIST_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES DefaultChildListAttributes ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoQueryForInterface)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo, _In_ LPCGUID InterfaceType, _Out_ PINTERFACE Interface, _In_ USHORT Size, _In_ USHORT Version, _In_opt_ PVOID InterfaceSpecificData ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFCHILDLIST VFWDFEXPORT(WdfFdoGetDefaultChildList)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfFdoAddStaticChild)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo, _In_ WDFDEVICE Child ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfFdoLockStaticChildListForIteration)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfFdoRetrieveNextStaticChild)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo, _In_opt_ WDFDEVICE PreviousChild, _In_ ULONG Flags ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfFdoUnlockStaticChildListFromIteration)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Fdo ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PUNICODE_STRING VFWDFEXPORT(WdfFileObjectGetFileName)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFFILEOBJECT FileObject ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfFileObjectGetFlags)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFFILEOBJECT FileObject ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfFileObjectGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFFILEOBJECT FileObject ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PFILE_OBJECT VFWDFEXPORT(WdfFileObjectWdmGetFileObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFFILEOBJECT FileObject ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfInterruptCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_INTERRUPT_CONFIG Configuration, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFINTERRUPT* Interrupt ); WDFAPI BOOLEAN VFWDFEXPORT(WdfInterruptQueueDpcForIsr)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); WDFAPI BOOLEAN VFWDFEXPORT(WdfInterruptQueueWorkItemForIsr)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfInterruptSynchronize)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt, _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback, _In_ WDFCONTEXT Context ); _IRQL_requires_max_(DISPATCH_LEVEL + 1) WDFAPI VOID VFWDFEXPORT(WdfInterruptAcquireLock)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) _Acquires_lock_(_Curr_) WDFINTERRUPT Interrupt ); _IRQL_requires_max_(DISPATCH_LEVEL + 1) WDFAPI VOID VFWDFEXPORT(WdfInterruptReleaseLock)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) WDFINTERRUPT Interrupt ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptEnable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptDisable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _Must_inspect_result_ WDFAPI PKINTERRUPT VFWDFEXPORT(WdfInterruptWdmGetInterrupt)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptGetInfo)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt, _Out_ PWDF_INTERRUPT_INFO Info ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptSetPolicy)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt, _In_ WDF_INTERRUPT_POLICY Policy, _In_ WDF_INTERRUPT_PRIORITY Priority, _In_ KAFFINITY TargetProcessorSet ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptSetExtendedPolicy)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt, _In_ PWDF_INTERRUPT_EXTENDED_POLICY PolicyAndGroup ); WDFAPI WDFDEVICE VFWDFEXPORT(WdfInterruptGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _Must_inspect_result_ _Post_satisfies_(return == 1 || return == 0) _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfInterruptTryToAcquireLock)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) _When_(return!=0, _Acquires_lock_(_Curr_)) WDFINTERRUPT Interrupt ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptReportActive)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfInterruptReportInactive)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_IO_QUEUE_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES QueueAttributes, _Out_opt_ WDFQUEUE* Queue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_IO_QUEUE_STATE VFWDFEXPORT(WdfIoQueueGetState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _Out_opt_ PULONG QueueRequests, _Out_opt_ PULONG DriverRequests ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueStart)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueStop)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _When_(Context != 0, _In_) _When_(Context == 0, _In_opt_) PFN_WDF_IO_QUEUE_STATE StopComplete, _When_(StopComplete != 0, _In_) _When_(StopComplete == 0, _In_opt_) WDFCONTEXT Context ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueStopSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfIoQueueGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueRetrieveNextRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _Out_ WDFREQUEST* OutRequest ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueRetrieveRequestByFileObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _In_ WDFFILEOBJECT FileObject, _Out_ WDFREQUEST* OutRequest ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueFindRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _In_opt_ WDFREQUEST FoundRequest, _In_opt_ WDFFILEOBJECT FileObject, _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters, _Out_ WDFREQUEST* OutRequest ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueRetrieveFoundRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _In_ WDFREQUEST FoundRequest, _Out_ WDFREQUEST* OutRequest ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueDrainSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueDrain)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _When_(Context != 0, _In_) _When_(Context == 0, _In_opt_) PFN_WDF_IO_QUEUE_STATE DrainComplete, _When_(DrainComplete != 0, _In_) _When_(DrainComplete == 0, _In_opt_) WDFCONTEXT Context ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueuePurgeSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueuePurge)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _When_(Context != 0, _In_) _When_(Context == 0, _In_opt_) PFN_WDF_IO_QUEUE_STATE PurgeComplete, _When_(PurgeComplete != 0, _In_) _When_(PurgeComplete == 0, _In_opt_) WDFCONTEXT Context ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueReadyNotify)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _In_opt_ PFN_WDF_IO_QUEUE_STATE QueueReady, _In_opt_ WDFCONTEXT Context ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoQueueAssignForwardProgressPolicy)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _In_ PWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY ForwardProgressPolicy ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueStopAndPurge)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue, _When_(Context != 0, _In_) _When_(Context == 0, _In_opt_) PFN_WDF_IO_QUEUE_STATE StopAndPurgeComplete, _When_(StopAndPurgeComplete != 0, _In_) _When_(StopAndPurgeComplete == 0, _In_opt_) WDFCONTEXT Context ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoQueueStopAndPurgeSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFQUEUE Queue ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_opt_ PWDF_OBJECT_ATTRIBUTES IoTargetAttributes, _Out_ WDFIOTARGET* IoTarget ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetOpen)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ PWDF_IO_TARGET_OPEN_PARAMS OpenParams ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoTargetCloseForQueryRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoTargetClose)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetStart)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _When_(Action == 3, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(Action == 0 || Action == 1 || Action == 2, _IRQL_requires_max_(PASSIVE_LEVEL)) WDFAPI VOID VFWDFEXPORT(WdfIoTargetStop)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ _Strict_type_match_ WDF_IO_TARGET_SENT_IO_ACTION Action ); _When_(Action == 2, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(Action == 0 || Action == 1, _IRQL_requires_max_(PASSIVE_LEVEL)) WDFAPI VOID VFWDFEXPORT(WdfIoTargetPurge)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ _Strict_type_match_ WDF_IO_TARGET_PURGE_IO_ACTION Action ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_IO_TARGET_STATE VFWDFEXPORT(WdfIoTargetGetState)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfIoTargetGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetQueryTargetProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ ULONG BufferLength, _When_(BufferLength != 0, _Out_writes_bytes_to_opt_(BufferLength, *ResultLength)) _When_(BufferLength == 0, _Out_opt_) PVOID PropertyBuffer, _Deref_out_range_(<=,BufferLength) PULONG ResultLength ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetAllocAndQueryTargetProperty)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES PropertyMemoryAttributes, _Out_ WDFMEMORY* PropertyMemory ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetQueryForInterface)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ LPCGUID InterfaceType, _Out_ PINTERFACE Interface, _In_ USHORT Size, _In_ USHORT Version, _In_opt_ PVOID InterfaceSpecificData ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfIoTargetWdmGetTargetDeviceObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PDEVICE_OBJECT VFWDFEXPORT(WdfIoTargetWdmGetTargetPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PFILE_OBJECT VFWDFEXPORT(WdfIoTargetWdmGetTargetFileObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI HANDLE VFWDFEXPORT(WdfIoTargetWdmGetTargetFileHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSendReadSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer, _In_opt_ PLONGLONG DeviceOffset, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_opt_ PULONG_PTR BytesRead ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetFormatRequestForRead)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFREQUEST Request, _In_opt_ WDFMEMORY OutputBuffer, _In_opt_ PWDFMEMORY_OFFSET OutputBufferOffset, _In_opt_ PLONGLONG DeviceOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSendWriteSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer, _In_opt_ PLONGLONG DeviceOffset, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_opt_ PULONG_PTR BytesWritten ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetFormatRequestForWrite)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFREQUEST Request, _In_opt_ WDFMEMORY InputBuffer, _In_opt_ PWDFMEMORY_OFFSET InputBufferOffset, _In_opt_ PLONGLONG DeviceOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSendIoctlSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_opt_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer, _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_opt_ PULONG_PTR BytesReturned ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetFormatRequestForIoctl)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ WDFMEMORY InputBuffer, _In_opt_ PWDFMEMORY_OFFSET InputBufferOffset, _In_opt_ WDFMEMORY OutputBuffer, _In_opt_ PWDFMEMORY_OFFSET OutputBufferOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSendInternalIoctlSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_opt_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer, _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_opt_ PULONG_PTR BytesReturned ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetFormatRequestForInternalIoctl)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ WDFMEMORY InputBuffer, _In_opt_ PWDFMEMORY_OFFSET InputBufferOffset, _In_opt_ WDFMEMORY OutputBuffer, _In_opt_ PWDFMEMORY_OFFSET OutputBufferOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSendInternalIoctlOthersSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_opt_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ PWDF_MEMORY_DESCRIPTOR OtherArg1, _In_opt_ PWDF_MEMORY_DESCRIPTOR OtherArg2, _In_opt_ PWDF_MEMORY_DESCRIPTOR OtherArg4, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_opt_ PULONG_PTR BytesReturned ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetFormatRequestForInternalIoctlOthers)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFREQUEST Request, _In_ ULONG IoctlCode, _In_opt_ WDFMEMORY OtherArg1, _In_opt_ PWDFMEMORY_OFFSET OtherArg1Offset, _In_opt_ WDFMEMORY OtherArg2, _In_opt_ PWDFMEMORY_OFFSET OtherArg2Offset, _In_opt_ WDFMEMORY OtherArg4, _In_opt_ PWDFMEMORY_OFFSET OtherArg4Offset ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFQUEUE Queue ); _Must_inspect_result_ _When_(PoolType == 1 || PoolType == 257, _IRQL_requires_max_(APC_LEVEL)) _When_(PoolType == 0 || PoolType == 256, _IRQL_requires_max_(DISPATCH_LEVEL)) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ ULONG PoolTag, _In_ _When_(BufferSize == 0, __drv_reportError(BufferSize cannot be zero)) size_t BufferSize, _Out_ WDFMEMORY* Memory, _Outptr_opt_result_bytebuffer_(BufferSize) PVOID* Buffer ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryCreatePreallocated)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _In_ __drv_aliasesMem PVOID Buffer, _In_ _When_(BufferSize == 0, __drv_reportError(BufferSize cannot be zero)) size_t BufferSize, _Out_ WDFMEMORY* Memory ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PVOID VFWDFEXPORT(WdfMemoryGetBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFMEMORY Memory, _Out_opt_ size_t* BufferSize ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryAssignBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFMEMORY Memory, _Pre_notnull_ _Pre_writable_byte_size_(BufferSize) PVOID Buffer, _In_ _When_(BufferSize == 0, __drv_reportError(BufferSize cannot be zero)) size_t BufferSize ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryCopyToBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFMEMORY SourceMemory, _In_ size_t SourceOffset, _Out_writes_bytes_( NumBytesToCopyTo ) PVOID Buffer, _In_ _When_(NumBytesToCopyTo == 0, __drv_reportError(NumBytesToCopyTo cannot be zero)) size_t NumBytesToCopyTo ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryCopyFromBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFMEMORY DestinationMemory, _In_ size_t DestinationOffset, _In_ PVOID Buffer, _In_ _When_(NumBytesToCopyFrom == 0, __drv_reportError(NumBytesToCopyFrom cannot be zero)) size_t NumBytesToCopyFrom ); _Must_inspect_result_ _When_(PoolType == 1 || PoolType == 257, _IRQL_requires_max_(APC_LEVEL)) _When_(PoolType == 0 || PoolType == 256, _IRQL_requires_max_(DISPATCH_LEVEL)) WDFAPI NTSTATUS VFWDFEXPORT(WdfLookasideListCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES LookasideAttributes, _In_ _When_(BufferSize == 0, __drv_reportError(BufferSize cannot be zero)) size_t BufferSize, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES MemoryAttributes, _In_opt_ ULONG PoolTag, _Out_ WDFLOOKASIDE* Lookaside ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfMemoryCreateFromLookaside)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFLOOKASIDE Lookaside, _Out_ WDFMEMORY* Memory ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceMiniportCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _In_ PDEVICE_OBJECT DeviceObject, _In_opt_ PDEVICE_OBJECT AttachedDeviceObject, _In_opt_ PDEVICE_OBJECT Pdo, _Out_ WDFDEVICE* Device ); WDFAPI VOID VFWDFEXPORT(WdfDriverMiniportUnload)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDRIVER Driver ); WDFAPI PVOID FASTCALL VFWDFEXPORT(WdfObjectGetTypedContextWorker)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo ); WDFAPI NTSTATUS VFWDFEXPORT(WdfObjectAllocateContext)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PWDF_OBJECT_ATTRIBUTES ContextAttributes, _Outptr_opt_ PVOID* Context ); WDFAPI WDFOBJECT FASTCALL VFWDFEXPORT(WdfObjectContextGetObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PVOID ContextPointer ); WDFAPI VOID VFWDFEXPORT(WdfObjectReferenceActual)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File ); WDFAPI VOID VFWDFEXPORT(WdfObjectDereferenceActual)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfObjectCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFOBJECT* Object ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfObjectDelete)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Object ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfObjectQuery)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Object, _In_ CONST GUID* Guid, _In_ ULONG QueryBufferLength, _Out_writes_bytes_(QueryBufferLength) PVOID QueryBuffer ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI PWDFDEVICE_INIT VFWDFEXPORT(WdfPdoInitAllocate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE ParentDevice ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoInitSetEventCallbacks)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PWDF_PDO_EVENT_CALLBACKS DispatchTable ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAssignDeviceID)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING DeviceID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAssignInstanceID)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING InstanceID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAddHardwareID)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING HardwareID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAddCompatibleID)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING CompatibleID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAssignContainerID)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING ContainerID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAddDeviceText)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ PCUNICODE_STRING DeviceDescription, _In_ PCUNICODE_STRING DeviceLocation, _In_ LCID LocaleId ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoInitSetDefaultLocale)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ LCID LocaleId ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoInitAssignRawDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit, _In_ CONST GUID* DeviceClassGuid ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoInitAllowForwardingRequestToParent)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFDEVICE_INIT DeviceInit ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoMarkMissing)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoRequestEject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfPdoGetParent)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoRetrieveIdentificationDescription)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _Inout_ PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoRetrieveAddressDescription)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _Inout_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoUpdateAddressDescription)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _Inout_ PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfPdoAddEjectionRelationsPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT PhysicalDevice ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoRemoveEjectionRelationsPhysicalDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PDEVICE_OBJECT PhysicalDevice ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfPdoClearEjectionRelationsDevices)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfDeviceAddQueryInterface)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_QUERY_INTERFACE_CONFIG InterfaceConfig ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryOpenKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFKEY ParentKey, _In_ PCUNICODE_STRING KeyName, _In_ ACCESS_MASK DesiredAccess, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryCreateKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFKEY ParentKey, _In_ PCUNICODE_STRING KeyName, _In_ ACCESS_MASK DesiredAccess, _In_ ULONG CreateOptions, _Out_opt_ PULONG CreateDisposition, _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes, _Out_ WDFKEY* Key ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRegistryClose)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI HANDLE VFWDFEXPORT(WdfRegistryWdmGetHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryRemoveKey)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryRemoveValue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryValue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ ULONG ValueLength, _Out_writes_bytes_opt_( ValueLength) PVOID Value, _Out_opt_ PULONG ValueLengthQueried, _Out_opt_ PULONG ValueType ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryMemory)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ _Strict_type_match_ POOL_TYPE PoolType, _In_opt_ PWDF_OBJECT_ATTRIBUTES MemoryAttributes, _Out_ WDFMEMORY* Memory, _Out_opt_ PULONG ValueType ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryMultiString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_opt_ PWDF_OBJECT_ATTRIBUTES StringsAttributes, _In_ WDFCOLLECTION Collection ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryUnicodeString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _Out_opt_ PUSHORT ValueByteLength, _Inout_opt_ PUNICODE_STRING Value ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ WDFSTRING String ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryQueryULong)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _Out_ PULONG Value ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignValue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ ULONG ValueType, _In_ ULONG ValueLength, _In_reads_( ValueLength) PVOID Value ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignMemory)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ ULONG ValueType, _In_ WDFMEMORY Memory, _In_opt_ PWDFMEMORY_OFFSET MemoryOffsets ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignMultiString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ WDFCOLLECTION StringsCollection ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignUnicodeString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ PCUNICODE_STRING Value ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ WDFSTRING String ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRegistryAssignULong)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFKEY Key, _In_ PCUNICODE_STRING ValueName, _In_ ULONG Value ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES RequestAttributes, _In_opt_ WDFIOTARGET IoTarget, _Out_ WDFREQUEST* Request ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestCreateFromIrp)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES RequestAttributes, _In_ PIRP Irp, _In_ BOOLEAN RequestFreesIrp, _Out_ WDFREQUEST* Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestReuse)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ PWDF_REQUEST_REUSE_PARAMS ReuseParams ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestChangeTarget)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET IoTarget ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestFormatRequestUsingCurrentType)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestWdmFormatUsingStackLocation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ PIO_STACK_LOCATION Stack ); _IRQL_requires_max_(DISPATCH_LEVEL) _When_(Options->Flags & WDF_REQUEST_SEND_OPTION_SYNCHRONOUS == 0, _Must_inspect_result_) WDFAPI BOOLEAN VFWDFEXPORT(WdfRequestSend)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target, _In_opt_ PWDF_REQUEST_SEND_OPTIONS Options ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestGetStatus)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestMarkCancelable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ PFN_WDF_REQUEST_CANCEL EvtRequestCancel ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestMarkCancelableEx)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ PFN_WDF_REQUEST_CANCEL EvtRequestCancel ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestUnmarkCancelable)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfRequestIsCanceled)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfRequestCancelSentRequest)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfRequestIsFrom32BitProcess)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestSetCompletionRoutine)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine, _In_opt_ __drv_aliasesMem WDFCONTEXT CompletionContext ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestGetCompletionParams)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Out_ PWDF_REQUEST_COMPLETION_PARAMS Params ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestAllocateTimer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestComplete)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ NTSTATUS Status ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestCompleteWithPriorityBoost)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ NTSTATUS Status, _In_ CCHAR PriorityBoost ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestCompleteWithInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ NTSTATUS Status, _In_ ULONG_PTR Information ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestGetParameters)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Out_ PWDF_REQUEST_PARAMETERS Parameters ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveInputMemory)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Out_ WDFMEMORY* Memory ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveOutputMemory)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Out_ WDFMEMORY* Memory ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveInputBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ size_t MinimumRequiredLength, _Outptr_result_bytebuffer_(*Length) PVOID* Buffer, _Out_opt_ size_t* Length ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveOutputBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ size_t MinimumRequiredSize, _Outptr_result_bytebuffer_(*Length) PVOID* Buffer, _Out_opt_ size_t* Length ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveInputWdmMdl)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Outptr_ PMDL* Mdl ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveOutputWdmMdl)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _Outptr_ PMDL* Mdl ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveUnsafeUserInputBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ size_t MinimumRequiredLength, _Outptr_result_bytebuffer_maybenull_(*Length) PVOID* InputBuffer, _Out_opt_ size_t* Length ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRetrieveUnsafeUserOutputBuffer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ size_t MinimumRequiredLength, _Outptr_result_bytebuffer_maybenull_(*Length) PVOID* OutputBuffer, _Out_opt_ size_t* Length ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestSetInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ ULONG_PTR Information ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG_PTR VFWDFEXPORT(WdfRequestGetInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFFILEOBJECT VFWDFEXPORT(WdfRequestGetFileObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestProbeAndLockUserBufferForRead)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_reads_bytes_(Length) PVOID Buffer, _In_ size_t Length, _Out_ WDFMEMORY* MemoryObject ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestProbeAndLockUserBufferForWrite)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_reads_bytes_(Length) PVOID Buffer, _In_ size_t Length, _Out_ WDFMEMORY* MemoryObject ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI KPROCESSOR_MODE VFWDFEXPORT(WdfRequestGetRequestorMode)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestForwardToIoQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFQUEUE DestinationQueue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFQUEUE VFWDFEXPORT(WdfRequestGetIoQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestRequeue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfRequestStopAcknowledge)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ BOOLEAN Requeue ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PIRP VFWDFEXPORT(WdfRequestWdmGetIrp)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfRequestIsReserved)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfRequestForwardToParentDeviceIoQueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFQUEUE ParentDeviceQueue, _In_ PWDF_REQUEST_FORWARD_OPTIONS ForwardOptions ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceRequirementsListSetSlotNumber)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ ULONG SlotNumber ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceRequirementsListSetInterfaceType)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ _Strict_type_match_ INTERFACE_TYPE InterfaceType ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoResourceRequirementsListAppendIoResList)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ WDFIORESLIST IoResList ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoResourceRequirementsListInsertIoResList)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ WDFIORESLIST IoResList, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfIoResourceRequirementsListGetCount)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFIORESLIST VFWDFEXPORT(WdfIoResourceRequirementsListGetIoResList)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceRequirementsListRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceRequirementsListRemoveByIoResList)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_ WDFIORESLIST IoResList ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoResourceListCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESREQLIST RequirementsList, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFIORESLIST* ResourceList ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoResourceListAppendDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ PIO_RESOURCE_DESCRIPTOR Descriptor ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfIoResourceListInsertDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ PIO_RESOURCE_DESCRIPTOR Descriptor, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceListUpdateDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ PIO_RESOURCE_DESCRIPTOR Descriptor, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfIoResourceListGetCount)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PIO_RESOURCE_DESCRIPTOR VFWDFEXPORT(WdfIoResourceListGetDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceListRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfIoResourceListRemoveByDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIORESLIST ResourceList, _In_ PIO_RESOURCE_DESCRIPTOR Descriptor ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCmResourceListAppendDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List, _In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfCmResourceListInsertDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List, _In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONG VFWDFEXPORT(WdfCmResourceListGetCount)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI PCM_PARTIAL_RESOURCE_DESCRIPTOR VFWDFEXPORT(WdfCmResourceListGetDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCmResourceListRemove)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List, _In_ ULONG Index ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfCmResourceListRemoveByDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFCMRESLIST List, _In_ PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfStringCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PCUNICODE_STRING UnicodeString, _In_opt_ PWDF_OBJECT_ATTRIBUTES StringAttributes, _Out_ WDFSTRING* String ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfStringGetUnicodeString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFSTRING String, _Out_ PUNICODE_STRING UnicodeString ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfObjectAcquireLock)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) _Acquires_lock_(_Curr_) WDFOBJECT Object ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfObjectReleaseLock)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) WDFOBJECT Object ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWaitLockCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES LockAttributes, _Out_ WDFWAITLOCK* Lock ); _When_(Timeout == NULL, _IRQL_requires_max_(PASSIVE_LEVEL)) _When_(Timeout != NULL && *Timeout == 0, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(Timeout != NULL && *Timeout != 0, _IRQL_requires_max_(PASSIVE_LEVEL)) _Always_(_When_(Timeout == NULL, _Acquires_lock_(Lock))) _When_(Timeout != NULL && return == STATUS_SUCCESS, _Acquires_lock_(Lock)) _When_(Timeout != NULL, _Must_inspect_result_) WDFAPI NTSTATUS VFWDFEXPORT(WdfWaitLockAcquire)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) WDFWAITLOCK Lock, _In_opt_ PLONGLONG Timeout ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfWaitLockRelease)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) WDFWAITLOCK Lock ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfSpinLockCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ PWDF_OBJECT_ATTRIBUTES SpinLockAttributes, _Out_ WDFSPINLOCK* SpinLock ); _IRQL_requires_max_(DISPATCH_LEVEL) _IRQL_raises_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfSpinLockAcquire)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_not_held_(_Curr_) _Acquires_lock_(_Curr_) _IRQL_saves_ WDFSPINLOCK SpinLock ); _IRQL_requires_max_(DISPATCH_LEVEL) _IRQL_requires_min_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfSpinLockRelease)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) _IRQL_restores_ WDFSPINLOCK SpinLock ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfTimerCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDF_TIMER_CONFIG Config, _In_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFTIMER* Timer ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfTimerStart)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFTIMER Timer, _In_ LONGLONG DueTime ); _When_(Wait == __true, _IRQL_requires_max_(PASSIVE_LEVEL)) _When_(Wait == __false, _IRQL_requires_max_(DISPATCH_LEVEL)) WDFAPI BOOLEAN VFWDFEXPORT(WdfTimerStop)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFTIMER Timer, _In_ BOOLEAN Wait ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfTimerGetParentObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFTIMER Timer ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFUSBDEVICE* UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceCreateWithParameters)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_USB_DEVICE_CREATE_CONFIG Config, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFUSBDEVICE* UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceRetrieveInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _Out_ PWDF_USB_DEVICE_INFORMATION Information ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _Out_ PUSB_DEVICE_DESCRIPTOR UsbDeviceDescriptor ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _Out_writes_bytes_to_opt_(*ConfigDescriptorLength,*ConfigDescriptorLength) PVOID ConfigDescriptor, _Inout_ PUSHORT ConfigDescriptorLength ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceQueryString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _Out_writes_opt_(*NumCharacters) PUSHORT String, _Inout_ PUSHORT NumCharacters, _In_ UCHAR StringIndex, _In_opt_ USHORT LangID ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ PWDF_OBJECT_ATTRIBUTES StringMemoryAttributes, _Out_ WDFMEMORY* StringMemory, _Out_opt_ PUSHORT NumCharacters, _In_ UCHAR StringIndex, _In_opt_ USHORT LangID ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForString)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ WDFREQUEST Request, _In_ WDFMEMORY Memory, _In_opt_ PWDFMEMORY_OFFSET Offset, _In_ UCHAR StringIndex, _In_opt_ USHORT LangID ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI UCHAR VFWDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceSelectConfig)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ PWDF_OBJECT_ATTRIBUTES PipeAttributes, _Inout_ PWDF_USB_DEVICE_SELECT_CONFIG_PARAMS Params ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI USBD_CONFIGURATION_HANDLE VFWDFEXPORT(WdfUsbTargetDeviceWdmGetConfigurationHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceRetrieveCurrentFrameNumber)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _Out_ PULONG CurrentFrameNumber ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _In_ PWDF_USB_CONTROL_SETUP_PACKET SetupPacket, _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor, _Out_opt_ PULONG BytesTransferred ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ WDFREQUEST Request, _In_ PWDF_USB_CONTROL_SETUP_PACKET SetupPacket, _In_opt_ WDFMEMORY TransferMemory, _In_opt_ PWDFMEMORY_OFFSET TransferOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceIsConnectedSynchronous)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceCyclePortSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForCyclePort)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceSendUrbSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _In_reads_(_Inexpressible_("union bug in SAL")) PURB Urb ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForUrb)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ WDFREQUEST Request, _In_ WDFMEMORY UrbMemory, _In_opt_ PWDFMEMORY_OFFSET UrbMemoryOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ CONST GUID* CapabilityType, _In_ ULONG CapabilityBufferLength, _When_(CapabilityBufferLength == 0, _Out_opt_) _When_(CapabilityBufferLength != 0 && ResultLength == NULL, _Out_writes_bytes_(CapabilityBufferLength)) _When_(CapabilityBufferLength != 0 && ResultLength != NULL, _Out_writes_bytes_to_opt_(CapabilityBufferLength, *ResultLength)) PVOID CapabilityBuffer, _Out_opt_ _When_(ResultLength != NULL,_Deref_out_range_(<=,CapabilityBufferLength)) PULONG ResultLength ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceCreateUrb)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFMEMORY* UrbMemory, _Outptr_opt_result_bytebuffer_(sizeof(URB)) PURB* Urb ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetDeviceCreateIsochUrb)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes, _In_ ULONG NumberOfIsochPackets, _Out_ WDFMEMORY* UrbMemory, _Outptr_opt_result_bytebuffer_(GET_ISO_URB_SIZE(NumberOfIsochPackets)) PURB* Urb ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfUsbTargetPipeGetInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _Out_ PWDF_USB_PIPE_INFORMATION PipeInformation ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfUsbTargetPipeIsInEndpoint)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfUsbTargetPipeIsOutEndpoint)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDF_USB_PIPE_TYPE VFWDFEXPORT(WdfUsbTargetPipeGetType)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeWriteSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor, _Out_opt_ PULONG BytesWritten ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_ WDFREQUEST Request, _In_opt_ WDFMEMORY WriteMemory, _In_opt_ PWDFMEMORY_OFFSET WriteOffset ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeReadSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor, _Out_opt_ PULONG BytesRead ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForRead)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_ WDFREQUEST Request, _In_opt_ WDFMEMORY ReadMemory, _In_opt_ PWDFMEMORY_OFFSET ReadOffset ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeConfigContinuousReader)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_ PWDF_USB_CONTINUOUS_READER_CONFIG Config ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeAbortSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeResetSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForReset)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_ WDFREQUEST Request ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeSendUrbSynchronously)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE Pipe, _In_opt_ WDFREQUEST Request, _In_opt_ PWDF_REQUEST_SEND_OPTIONS RequestOptions, _In_reads_(_Inexpressible_("union bug in SAL")) PURB Urb ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForUrb)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE PIPE, _In_ WDFREQUEST Request, _In_ WDFMEMORY UrbMemory, _In_opt_ PWDFMEMORY_OFFSET UrbMemoryOffset ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BYTE VFWDFEXPORT(WdfUsbInterfaceGetInterfaceNumber)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BYTE VFWDFEXPORT(WdfUsbInterfaceGetNumEndpoints)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface, _In_ UCHAR SettingIndex ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfUsbInterfaceGetDescriptor)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface, _In_ UCHAR SettingIndex, _Out_ PUSB_INTERFACE_DESCRIPTOR InterfaceDescriptor ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BYTE VFWDFEXPORT(WdfUsbInterfaceGetNumSettings)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfUsbInterfaceSelectSetting)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface, _In_opt_ PWDF_OBJECT_ATTRIBUTES PipesAttributes, _In_ PWDF_USB_INTERFACE_SELECT_SETTING_PARAMS Params ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfUsbInterfaceGetEndpointInformation)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface, _In_ UCHAR SettingIndex, _In_ UCHAR EndpointIndex, _Out_ PWDF_USB_PIPE_INFORMATION EndpointInfo ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFUSBINTERFACE VFWDFEXPORT(WdfUsbTargetDeviceGetInterface)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBDEVICE UsbDevice, _In_ UCHAR InterfaceIndex ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BYTE VFWDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE Interface ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BYTE VFWDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFUSBPIPE VFWDFEXPORT(WdfUsbInterfaceGetConfiguredPipe)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBINTERFACE UsbInterface, _In_ UCHAR PipeIndex, _Out_opt_ PWDF_USB_PIPE_INFORMATION PipeInfo ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI USBD_PIPE_HANDLE VFWDFEXPORT(WdfUsbTargetPipeWdmGetPipeHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFUSBPIPE UsbPipe ); WDFAPI VOID VFWDFEXPORT(WdfVerifierDbgBreakPoint)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals ); WDFAPI VOID VFWDFEXPORT(WdfVerifierKeBugCheck)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4 ); WDFAPI PVOID VFWDFEXPORT(WdfGetTriageInfo)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWmiProviderCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_WMI_PROVIDER_CONFIG WmiProviderConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES ProviderAttributes, _Out_ WDFWMIPROVIDER* WmiProvider ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfWmiProviderGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIPROVIDER WmiProvider ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI BOOLEAN VFWDFEXPORT(WdfWmiProviderIsEnabled)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIPROVIDER WmiProvider, _In_ WDF_WMI_PROVIDER_CONTROL ProviderControl ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI ULONGLONG VFWDFEXPORT(WdfWmiProviderGetTracingHandle)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIPROVIDER WmiProvider ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWmiInstanceCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device, _In_ PWDF_WMI_INSTANCE_CONFIG InstanceConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES InstanceAttributes, _Out_opt_ WDFWMIINSTANCE* Instance ); _Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWmiInstanceRegister)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIINSTANCE WmiInstance ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfWmiInstanceDeregister)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIINSTANCE WmiInstance ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFDEVICE VFWDFEXPORT(WdfWmiInstanceGetDevice)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIINSTANCE WmiInstance ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFWMIPROVIDER VFWDFEXPORT(WdfWmiInstanceGetProvider)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIINSTANCE WmiInstance ); _Must_inspect_result_ _IRQL_requires_max_(APC_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWmiInstanceFireEvent)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWMIINSTANCE WmiInstance, _In_opt_ ULONG EventDataSize, _In_reads_bytes_opt_(EventDataSize) PVOID EventData ); _Must_inspect_result_ _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI NTSTATUS VFWDFEXPORT(WdfWorkItemCreate)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDF_WORKITEM_CONFIG Config, _In_ PWDF_OBJECT_ATTRIBUTES Attributes, _Out_ WDFWORKITEM* WorkItem ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfWorkItemEnqueue)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWORKITEM WorkItem ); _IRQL_requires_max_(DISPATCH_LEVEL) WDFAPI WDFOBJECT VFWDFEXPORT(WdfWorkItemGetParentObject)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWORKITEM WorkItem ); _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI VOID VFWDFEXPORT(WdfWorkItemFlush)( _In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFWORKITEM WorkItem ); #ifdef VF_FX_DYNAMICS_GENERATE_TABLE WDFVERSION VfWdfVersion = { sizeof(WDFVERSION), sizeof(WDFFUNCTIONS)/sizeof(PVOID), { VFWDFEXPORT(WdfChildListCreate), VFWDFEXPORT(WdfChildListGetDevice), VFWDFEXPORT(WdfChildListRetrievePdo), VFWDFEXPORT(WdfChildListRetrieveAddressDescription), VFWDFEXPORT(WdfChildListBeginScan), VFWDFEXPORT(WdfChildListEndScan), VFWDFEXPORT(WdfChildListBeginIteration), VFWDFEXPORT(WdfChildListRetrieveNextDevice), VFWDFEXPORT(WdfChildListEndIteration), VFWDFEXPORT(WdfChildListAddOrUpdateChildDescriptionAsPresent), VFWDFEXPORT(WdfChildListUpdateChildDescriptionAsMissing), VFWDFEXPORT(WdfChildListUpdateAllChildDescriptionsAsPresent), VFWDFEXPORT(WdfChildListRequestChildEject), VFWDFEXPORT(WdfCollectionCreate), VFWDFEXPORT(WdfCollectionGetCount), VFWDFEXPORT(WdfCollectionAdd), VFWDFEXPORT(WdfCollectionRemove), VFWDFEXPORT(WdfCollectionRemoveItem), VFWDFEXPORT(WdfCollectionGetItem), VFWDFEXPORT(WdfCollectionGetFirstItem), VFWDFEXPORT(WdfCollectionGetLastItem), VFWDFEXPORT(WdfCommonBufferCreate), VFWDFEXPORT(WdfCommonBufferGetAlignedVirtualAddress), VFWDFEXPORT(WdfCommonBufferGetAlignedLogicalAddress), VFWDFEXPORT(WdfCommonBufferGetLength), VFWDFEXPORT(WdfControlDeviceInitAllocate), VFWDFEXPORT(WdfControlDeviceInitSetShutdownNotification), VFWDFEXPORT(WdfControlFinishInitializing), VFWDFEXPORT(WdfDeviceGetDeviceState), VFWDFEXPORT(WdfDeviceSetDeviceState), VFWDFEXPORT(WdfWdmDeviceGetWdfDeviceHandle), VFWDFEXPORT(WdfDeviceWdmGetDeviceObject), VFWDFEXPORT(WdfDeviceWdmGetAttachedDevice), VFWDFEXPORT(WdfDeviceWdmGetPhysicalDevice), VFWDFEXPORT(WdfDeviceWdmDispatchPreprocessedIrp), VFWDFEXPORT(WdfDeviceAddDependentUsageDeviceObject), VFWDFEXPORT(WdfDeviceAddRemovalRelationsPhysicalDevice), VFWDFEXPORT(WdfDeviceRemoveRemovalRelationsPhysicalDevice), VFWDFEXPORT(WdfDeviceClearRemovalRelationsDevices), VFWDFEXPORT(WdfDeviceGetDriver), VFWDFEXPORT(WdfDeviceRetrieveDeviceName), VFWDFEXPORT(WdfDeviceAssignMofResourceName), VFWDFEXPORT(WdfDeviceGetIoTarget), VFWDFEXPORT(WdfDeviceGetDevicePnpState), VFWDFEXPORT(WdfDeviceGetDevicePowerState), VFWDFEXPORT(WdfDeviceGetDevicePowerPolicyState), VFWDFEXPORT(WdfDeviceAssignS0IdleSettings), VFWDFEXPORT(WdfDeviceAssignSxWakeSettings), VFWDFEXPORT(WdfDeviceOpenRegistryKey), VFWDFEXPORT(WdfDeviceSetSpecialFileSupport), VFWDFEXPORT(WdfDeviceSetCharacteristics), VFWDFEXPORT(WdfDeviceGetCharacteristics), VFWDFEXPORT(WdfDeviceGetAlignmentRequirement), VFWDFEXPORT(WdfDeviceSetAlignmentRequirement), VFWDFEXPORT(WdfDeviceInitFree), VFWDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks), VFWDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks), VFWDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership), VFWDFEXPORT(WdfDeviceInitRegisterPnpStateChangeCallback), VFWDFEXPORT(WdfDeviceInitRegisterPowerStateChangeCallback), VFWDFEXPORT(WdfDeviceInitRegisterPowerPolicyStateChangeCallback), VFWDFEXPORT(WdfDeviceInitSetIoType), VFWDFEXPORT(WdfDeviceInitSetExclusive), VFWDFEXPORT(WdfDeviceInitSetPowerNotPageable), VFWDFEXPORT(WdfDeviceInitSetPowerPageable), VFWDFEXPORT(WdfDeviceInitSetPowerInrush), VFWDFEXPORT(WdfDeviceInitSetDeviceType), VFWDFEXPORT(WdfDeviceInitAssignName), VFWDFEXPORT(WdfDeviceInitAssignSDDLString), VFWDFEXPORT(WdfDeviceInitSetDeviceClass), VFWDFEXPORT(WdfDeviceInitSetCharacteristics), VFWDFEXPORT(WdfDeviceInitSetFileObjectConfig), VFWDFEXPORT(WdfDeviceInitSetRequestAttributes), VFWDFEXPORT(WdfDeviceInitAssignWdmIrpPreprocessCallback), VFWDFEXPORT(WdfDeviceInitSetIoInCallerContextCallback), VFWDFEXPORT(WdfDeviceCreate), VFWDFEXPORT(WdfDeviceSetStaticStopRemove), VFWDFEXPORT(WdfDeviceCreateDeviceInterface), VFWDFEXPORT(WdfDeviceSetDeviceInterfaceState), VFWDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString), VFWDFEXPORT(WdfDeviceCreateSymbolicLink), VFWDFEXPORT(WdfDeviceQueryProperty), VFWDFEXPORT(WdfDeviceAllocAndQueryProperty), VFWDFEXPORT(WdfDeviceSetPnpCapabilities), VFWDFEXPORT(WdfDeviceSetPowerCapabilities), VFWDFEXPORT(WdfDeviceSetBusInformationForChildren), VFWDFEXPORT(WdfDeviceIndicateWakeStatus), VFWDFEXPORT(WdfDeviceSetFailed), VFWDFEXPORT(WdfDeviceStopIdleNoTrack), VFWDFEXPORT(WdfDeviceResumeIdleNoTrack), VFWDFEXPORT(WdfDeviceGetFileObject), VFWDFEXPORT(WdfDeviceEnqueueRequest), VFWDFEXPORT(WdfDeviceGetDefaultQueue), VFWDFEXPORT(WdfDeviceConfigureRequestDispatching), VFWDFEXPORT(WdfDmaEnablerCreate), VFWDFEXPORT(WdfDmaEnablerGetMaximumLength), VFWDFEXPORT(WdfDmaEnablerGetMaximumScatterGatherElements), VFWDFEXPORT(WdfDmaEnablerSetMaximumScatterGatherElements), VFWDFEXPORT(WdfDmaTransactionCreate), VFWDFEXPORT(WdfDmaTransactionInitialize), VFWDFEXPORT(WdfDmaTransactionInitializeUsingRequest), VFWDFEXPORT(WdfDmaTransactionExecute), VFWDFEXPORT(WdfDmaTransactionRelease), VFWDFEXPORT(WdfDmaTransactionDmaCompleted), VFWDFEXPORT(WdfDmaTransactionDmaCompletedWithLength), VFWDFEXPORT(WdfDmaTransactionDmaCompletedFinal), VFWDFEXPORT(WdfDmaTransactionGetBytesTransferred), VFWDFEXPORT(WdfDmaTransactionSetMaximumLength), VFWDFEXPORT(WdfDmaTransactionGetRequest), VFWDFEXPORT(WdfDmaTransactionGetCurrentDmaTransferLength), VFWDFEXPORT(WdfDmaTransactionGetDevice), VFWDFEXPORT(WdfDpcCreate), VFWDFEXPORT(WdfDpcEnqueue), VFWDFEXPORT(WdfDpcCancel), VFWDFEXPORT(WdfDpcGetParentObject), VFWDFEXPORT(WdfDpcWdmGetDpc), VFWDFEXPORT(WdfDriverCreate), VFWDFEXPORT(WdfDriverGetRegistryPath), VFWDFEXPORT(WdfDriverWdmGetDriverObject), VFWDFEXPORT(WdfDriverOpenParametersRegistryKey), VFWDFEXPORT(WdfWdmDriverGetWdfDriverHandle), VFWDFEXPORT(WdfDriverRegisterTraceInfo), VFWDFEXPORT(WdfDriverRetrieveVersionString), VFWDFEXPORT(WdfDriverIsVersionAvailable), VFWDFEXPORT(WdfFdoInitWdmGetPhysicalDevice), VFWDFEXPORT(WdfFdoInitOpenRegistryKey), VFWDFEXPORT(WdfFdoInitQueryProperty), VFWDFEXPORT(WdfFdoInitAllocAndQueryProperty), VFWDFEXPORT(WdfFdoInitSetEventCallbacks), VFWDFEXPORT(WdfFdoInitSetFilter), VFWDFEXPORT(WdfFdoInitSetDefaultChildListConfig), VFWDFEXPORT(WdfFdoQueryForInterface), VFWDFEXPORT(WdfFdoGetDefaultChildList), VFWDFEXPORT(WdfFdoAddStaticChild), VFWDFEXPORT(WdfFdoLockStaticChildListForIteration), VFWDFEXPORT(WdfFdoRetrieveNextStaticChild), VFWDFEXPORT(WdfFdoUnlockStaticChildListFromIteration), VFWDFEXPORT(WdfFileObjectGetFileName), VFWDFEXPORT(WdfFileObjectGetFlags), VFWDFEXPORT(WdfFileObjectGetDevice), VFWDFEXPORT(WdfFileObjectWdmGetFileObject), VFWDFEXPORT(WdfInterruptCreate), VFWDFEXPORT(WdfInterruptQueueDpcForIsr), VFWDFEXPORT(WdfInterruptSynchronize), VFWDFEXPORT(WdfInterruptAcquireLock), VFWDFEXPORT(WdfInterruptReleaseLock), VFWDFEXPORT(WdfInterruptEnable), VFWDFEXPORT(WdfInterruptDisable), VFWDFEXPORT(WdfInterruptWdmGetInterrupt), VFWDFEXPORT(WdfInterruptGetInfo), VFWDFEXPORT(WdfInterruptSetPolicy), VFWDFEXPORT(WdfInterruptGetDevice), VFWDFEXPORT(WdfIoQueueCreate), VFWDFEXPORT(WdfIoQueueGetState), VFWDFEXPORT(WdfIoQueueStart), VFWDFEXPORT(WdfIoQueueStop), VFWDFEXPORT(WdfIoQueueStopSynchronously), VFWDFEXPORT(WdfIoQueueGetDevice), VFWDFEXPORT(WdfIoQueueRetrieveNextRequest), VFWDFEXPORT(WdfIoQueueRetrieveRequestByFileObject), VFWDFEXPORT(WdfIoQueueFindRequest), VFWDFEXPORT(WdfIoQueueRetrieveFoundRequest), VFWDFEXPORT(WdfIoQueueDrainSynchronously), VFWDFEXPORT(WdfIoQueueDrain), VFWDFEXPORT(WdfIoQueuePurgeSynchronously), VFWDFEXPORT(WdfIoQueuePurge), VFWDFEXPORT(WdfIoQueueReadyNotify), VFWDFEXPORT(WdfIoTargetCreate), VFWDFEXPORT(WdfIoTargetOpen), VFWDFEXPORT(WdfIoTargetCloseForQueryRemove), VFWDFEXPORT(WdfIoTargetClose), VFWDFEXPORT(WdfIoTargetStart), VFWDFEXPORT(WdfIoTargetStop), VFWDFEXPORT(WdfIoTargetGetState), VFWDFEXPORT(WdfIoTargetGetDevice), VFWDFEXPORT(WdfIoTargetQueryTargetProperty), VFWDFEXPORT(WdfIoTargetAllocAndQueryTargetProperty), VFWDFEXPORT(WdfIoTargetQueryForInterface), VFWDFEXPORT(WdfIoTargetWdmGetTargetDeviceObject), VFWDFEXPORT(WdfIoTargetWdmGetTargetPhysicalDevice), VFWDFEXPORT(WdfIoTargetWdmGetTargetFileObject), VFWDFEXPORT(WdfIoTargetWdmGetTargetFileHandle), VFWDFEXPORT(WdfIoTargetSendReadSynchronously), VFWDFEXPORT(WdfIoTargetFormatRequestForRead), VFWDFEXPORT(WdfIoTargetSendWriteSynchronously), VFWDFEXPORT(WdfIoTargetFormatRequestForWrite), VFWDFEXPORT(WdfIoTargetSendIoctlSynchronously), VFWDFEXPORT(WdfIoTargetFormatRequestForIoctl), VFWDFEXPORT(WdfIoTargetSendInternalIoctlSynchronously), VFWDFEXPORT(WdfIoTargetFormatRequestForInternalIoctl), VFWDFEXPORT(WdfIoTargetSendInternalIoctlOthersSynchronously), VFWDFEXPORT(WdfIoTargetFormatRequestForInternalIoctlOthers), VFWDFEXPORT(WdfMemoryCreate), VFWDFEXPORT(WdfMemoryCreatePreallocated), VFWDFEXPORT(WdfMemoryGetBuffer), VFWDFEXPORT(WdfMemoryAssignBuffer), VFWDFEXPORT(WdfMemoryCopyToBuffer), VFWDFEXPORT(WdfMemoryCopyFromBuffer), VFWDFEXPORT(WdfLookasideListCreate), VFWDFEXPORT(WdfMemoryCreateFromLookaside), VFWDFEXPORT(WdfDeviceMiniportCreate), VFWDFEXPORT(WdfDriverMiniportUnload), VFWDFEXPORT(WdfObjectGetTypedContextWorker), VFWDFEXPORT(WdfObjectAllocateContext), VFWDFEXPORT(WdfObjectContextGetObject), VFWDFEXPORT(WdfObjectReferenceActual), VFWDFEXPORT(WdfObjectDereferenceActual), VFWDFEXPORT(WdfObjectCreate), VFWDFEXPORT(WdfObjectDelete), VFWDFEXPORT(WdfObjectQuery), VFWDFEXPORT(WdfPdoInitAllocate), VFWDFEXPORT(WdfPdoInitSetEventCallbacks), VFWDFEXPORT(WdfPdoInitAssignDeviceID), VFWDFEXPORT(WdfPdoInitAssignInstanceID), VFWDFEXPORT(WdfPdoInitAddHardwareID), VFWDFEXPORT(WdfPdoInitAddCompatibleID), VFWDFEXPORT(WdfPdoInitAddDeviceText), VFWDFEXPORT(WdfPdoInitSetDefaultLocale), VFWDFEXPORT(WdfPdoInitAssignRawDevice), VFWDFEXPORT(WdfPdoMarkMissing), VFWDFEXPORT(WdfPdoRequestEject), VFWDFEXPORT(WdfPdoGetParent), VFWDFEXPORT(WdfPdoRetrieveIdentificationDescription), VFWDFEXPORT(WdfPdoRetrieveAddressDescription), VFWDFEXPORT(WdfPdoUpdateAddressDescription), VFWDFEXPORT(WdfPdoAddEjectionRelationsPhysicalDevice), VFWDFEXPORT(WdfPdoRemoveEjectionRelationsPhysicalDevice), VFWDFEXPORT(WdfPdoClearEjectionRelationsDevices), VFWDFEXPORT(WdfDeviceAddQueryInterface), VFWDFEXPORT(WdfRegistryOpenKey), VFWDFEXPORT(WdfRegistryCreateKey), VFWDFEXPORT(WdfRegistryClose), VFWDFEXPORT(WdfRegistryWdmGetHandle), VFWDFEXPORT(WdfRegistryRemoveKey), VFWDFEXPORT(WdfRegistryRemoveValue), VFWDFEXPORT(WdfRegistryQueryValue), VFWDFEXPORT(WdfRegistryQueryMemory), VFWDFEXPORT(WdfRegistryQueryMultiString), VFWDFEXPORT(WdfRegistryQueryUnicodeString), VFWDFEXPORT(WdfRegistryQueryString), VFWDFEXPORT(WdfRegistryQueryULong), VFWDFEXPORT(WdfRegistryAssignValue), VFWDFEXPORT(WdfRegistryAssignMemory), VFWDFEXPORT(WdfRegistryAssignMultiString), VFWDFEXPORT(WdfRegistryAssignUnicodeString), VFWDFEXPORT(WdfRegistryAssignString), VFWDFEXPORT(WdfRegistryAssignULong), VFWDFEXPORT(WdfRequestCreate), VFWDFEXPORT(WdfRequestCreateFromIrp), VFWDFEXPORT(WdfRequestReuse), VFWDFEXPORT(WdfRequestChangeTarget), VFWDFEXPORT(WdfRequestFormatRequestUsingCurrentType), VFWDFEXPORT(WdfRequestWdmFormatUsingStackLocation), VFWDFEXPORT(WdfRequestSend), VFWDFEXPORT(WdfRequestGetStatus), VFWDFEXPORT(WdfRequestMarkCancelable), VFWDFEXPORT(WdfRequestUnmarkCancelable), VFWDFEXPORT(WdfRequestIsCanceled), VFWDFEXPORT(WdfRequestCancelSentRequest), VFWDFEXPORT(WdfRequestIsFrom32BitProcess), VFWDFEXPORT(WdfRequestSetCompletionRoutine), VFWDFEXPORT(WdfRequestGetCompletionParams), VFWDFEXPORT(WdfRequestAllocateTimer), VFWDFEXPORT(WdfRequestComplete), VFWDFEXPORT(WdfRequestCompleteWithPriorityBoost), VFWDFEXPORT(WdfRequestCompleteWithInformation), VFWDFEXPORT(WdfRequestGetParameters), VFWDFEXPORT(WdfRequestRetrieveInputMemory), VFWDFEXPORT(WdfRequestRetrieveOutputMemory), VFWDFEXPORT(WdfRequestRetrieveInputBuffer), VFWDFEXPORT(WdfRequestRetrieveOutputBuffer), VFWDFEXPORT(WdfRequestRetrieveInputWdmMdl), VFWDFEXPORT(WdfRequestRetrieveOutputWdmMdl), VFWDFEXPORT(WdfRequestRetrieveUnsafeUserInputBuffer), VFWDFEXPORT(WdfRequestRetrieveUnsafeUserOutputBuffer), VFWDFEXPORT(WdfRequestSetInformation), VFWDFEXPORT(WdfRequestGetInformation), VFWDFEXPORT(WdfRequestGetFileObject), VFWDFEXPORT(WdfRequestProbeAndLockUserBufferForRead), VFWDFEXPORT(WdfRequestProbeAndLockUserBufferForWrite), VFWDFEXPORT(WdfRequestGetRequestorMode), VFWDFEXPORT(WdfRequestForwardToIoQueue), VFWDFEXPORT(WdfRequestGetIoQueue), VFWDFEXPORT(WdfRequestRequeue), VFWDFEXPORT(WdfRequestStopAcknowledge), VFWDFEXPORT(WdfRequestWdmGetIrp), VFWDFEXPORT(WdfIoResourceRequirementsListSetSlotNumber), VFWDFEXPORT(WdfIoResourceRequirementsListSetInterfaceType), VFWDFEXPORT(WdfIoResourceRequirementsListAppendIoResList), VFWDFEXPORT(WdfIoResourceRequirementsListInsertIoResList), VFWDFEXPORT(WdfIoResourceRequirementsListGetCount), VFWDFEXPORT(WdfIoResourceRequirementsListGetIoResList), VFWDFEXPORT(WdfIoResourceRequirementsListRemove), VFWDFEXPORT(WdfIoResourceRequirementsListRemoveByIoResList), VFWDFEXPORT(WdfIoResourceListCreate), VFWDFEXPORT(WdfIoResourceListAppendDescriptor), VFWDFEXPORT(WdfIoResourceListInsertDescriptor), VFWDFEXPORT(WdfIoResourceListUpdateDescriptor), VFWDFEXPORT(WdfIoResourceListGetCount), VFWDFEXPORT(WdfIoResourceListGetDescriptor), VFWDFEXPORT(WdfIoResourceListRemove), VFWDFEXPORT(WdfIoResourceListRemoveByDescriptor), VFWDFEXPORT(WdfCmResourceListAppendDescriptor), VFWDFEXPORT(WdfCmResourceListInsertDescriptor), VFWDFEXPORT(WdfCmResourceListGetCount), VFWDFEXPORT(WdfCmResourceListGetDescriptor), VFWDFEXPORT(WdfCmResourceListRemove), VFWDFEXPORT(WdfCmResourceListRemoveByDescriptor), VFWDFEXPORT(WdfStringCreate), VFWDFEXPORT(WdfStringGetUnicodeString), VFWDFEXPORT(WdfObjectAcquireLock), VFWDFEXPORT(WdfObjectReleaseLock), VFWDFEXPORT(WdfWaitLockCreate), VFWDFEXPORT(WdfWaitLockAcquire), VFWDFEXPORT(WdfWaitLockRelease), VFWDFEXPORT(WdfSpinLockCreate), VFWDFEXPORT(WdfSpinLockAcquire), VFWDFEXPORT(WdfSpinLockRelease), VFWDFEXPORT(WdfTimerCreate), VFWDFEXPORT(WdfTimerStart), VFWDFEXPORT(WdfTimerStop), VFWDFEXPORT(WdfTimerGetParentObject), VFWDFEXPORT(WdfUsbTargetDeviceCreate), VFWDFEXPORT(WdfUsbTargetDeviceRetrieveInformation), VFWDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor), VFWDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor), VFWDFEXPORT(WdfUsbTargetDeviceQueryString), VFWDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString), VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForString), VFWDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces), VFWDFEXPORT(WdfUsbTargetDeviceSelectConfig), VFWDFEXPORT(WdfUsbTargetDeviceWdmGetConfigurationHandle), VFWDFEXPORT(WdfUsbTargetDeviceRetrieveCurrentFrameNumber), VFWDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously), VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer), VFWDFEXPORT(WdfUsbTargetDeviceIsConnectedSynchronous), VFWDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously), VFWDFEXPORT(WdfUsbTargetDeviceCyclePortSynchronously), VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForCyclePort), VFWDFEXPORT(WdfUsbTargetDeviceSendUrbSynchronously), VFWDFEXPORT(WdfUsbTargetDeviceFormatRequestForUrb), VFWDFEXPORT(WdfUsbTargetPipeGetInformation), VFWDFEXPORT(WdfUsbTargetPipeIsInEndpoint), VFWDFEXPORT(WdfUsbTargetPipeIsOutEndpoint), VFWDFEXPORT(WdfUsbTargetPipeGetType), VFWDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck), VFWDFEXPORT(WdfUsbTargetPipeWriteSynchronously), VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite), VFWDFEXPORT(WdfUsbTargetPipeReadSynchronously), VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForRead), VFWDFEXPORT(WdfUsbTargetPipeConfigContinuousReader), VFWDFEXPORT(WdfUsbTargetPipeAbortSynchronously), VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort), VFWDFEXPORT(WdfUsbTargetPipeResetSynchronously), VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForReset), VFWDFEXPORT(WdfUsbTargetPipeSendUrbSynchronously), VFWDFEXPORT(WdfUsbTargetPipeFormatRequestForUrb), VFWDFEXPORT(WdfUsbInterfaceGetInterfaceNumber), VFWDFEXPORT(WdfUsbInterfaceGetNumEndpoints), VFWDFEXPORT(WdfUsbInterfaceGetDescriptor), VFWDFEXPORT(WdfUsbInterfaceSelectSetting), VFWDFEXPORT(WdfUsbInterfaceGetEndpointInformation), VFWDFEXPORT(WdfUsbTargetDeviceGetInterface), VFWDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex), VFWDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes), VFWDFEXPORT(WdfUsbInterfaceGetConfiguredPipe), VFWDFEXPORT(WdfUsbTargetPipeWdmGetPipeHandle), VFWDFEXPORT(WdfVerifierDbgBreakPoint), VFWDFEXPORT(WdfVerifierKeBugCheck), VFWDFEXPORT(WdfWmiProviderCreate), VFWDFEXPORT(WdfWmiProviderGetDevice), VFWDFEXPORT(WdfWmiProviderIsEnabled), VFWDFEXPORT(WdfWmiProviderGetTracingHandle), VFWDFEXPORT(WdfWmiInstanceCreate), VFWDFEXPORT(WdfWmiInstanceRegister), VFWDFEXPORT(WdfWmiInstanceDeregister), VFWDFEXPORT(WdfWmiInstanceGetDevice), VFWDFEXPORT(WdfWmiInstanceGetProvider), VFWDFEXPORT(WdfWmiInstanceFireEvent), VFWDFEXPORT(WdfWorkItemCreate), VFWDFEXPORT(WdfWorkItemEnqueue), VFWDFEXPORT(WdfWorkItemGetParentObject), VFWDFEXPORT(WdfWorkItemFlush), VFWDFEXPORT(WdfCommonBufferCreateWithConfig), VFWDFEXPORT(WdfDmaEnablerGetFragmentLength), VFWDFEXPORT(WdfDmaEnablerWdmGetDmaAdapter), VFWDFEXPORT(WdfUsbInterfaceGetNumSettings), VFWDFEXPORT(WdfDeviceRemoveDependentUsageDeviceObject), VFWDFEXPORT(WdfDeviceGetSystemPowerAction), VFWDFEXPORT(WdfInterruptSetExtendedPolicy), VFWDFEXPORT(WdfIoQueueAssignForwardProgressPolicy), VFWDFEXPORT(WdfPdoInitAssignContainerID), VFWDFEXPORT(WdfPdoInitAllowForwardingRequestToParent), VFWDFEXPORT(WdfRequestMarkCancelableEx), VFWDFEXPORT(WdfRequestIsReserved), VFWDFEXPORT(WdfRequestForwardToParentDeviceIoQueue), VFWDFEXPORT(WdfCxDeviceInitAllocate), VFWDFEXPORT(WdfCxDeviceInitAssignWdmIrpPreprocessCallback), VFWDFEXPORT(WdfCxDeviceInitSetIoInCallerContextCallback), VFWDFEXPORT(WdfCxDeviceInitSetRequestAttributes), VFWDFEXPORT(WdfCxDeviceInitSetFileObjectConfig), VFWDFEXPORT(WdfDeviceWdmDispatchIrp), VFWDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue), VFWDFEXPORT(WdfDeviceInitSetRemoveLockOptions), VFWDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback), VFWDFEXPORT(WdfDmaEnablerConfigureSystemProfile), VFWDFEXPORT(WdfDmaTransactionInitializeUsingOffset), VFWDFEXPORT(WdfDmaTransactionGetTransferInfo), VFWDFEXPORT(WdfDmaTransactionSetChannelConfigurationCallback), VFWDFEXPORT(WdfDmaTransactionSetTransferCompleteCallback), VFWDFEXPORT(WdfDmaTransactionSetImmediateExecution), VFWDFEXPORT(WdfDmaTransactionAllocateResources), VFWDFEXPORT(WdfDmaTransactionSetDeviceAddressOffset), VFWDFEXPORT(WdfDmaTransactionFreeResources), VFWDFEXPORT(WdfDmaTransactionCancel), VFWDFEXPORT(WdfDmaTransactionWdmGetTransferContext), VFWDFEXPORT(WdfInterruptQueueWorkItemForIsr), VFWDFEXPORT(WdfInterruptTryToAcquireLock), VFWDFEXPORT(WdfIoQueueStopAndPurge), VFWDFEXPORT(WdfIoQueueStopAndPurgeSynchronously), VFWDFEXPORT(WdfIoTargetPurge), VFWDFEXPORT(WdfUsbTargetDeviceCreateWithParameters), VFWDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability), VFWDFEXPORT(WdfUsbTargetDeviceCreateUrb), VFWDFEXPORT(WdfUsbTargetDeviceCreateIsochUrb), VFWDFEXPORT(WdfDeviceWdmAssignPowerFrameworkSettings), VFWDFEXPORT(WdfDmaTransactionStopSystemTransfer), VFWDFEXPORT(WdfCxVerifierKeBugCheck), VFWDFEXPORT(WdfInterruptReportActive), VFWDFEXPORT(WdfInterruptReportInactive), VFWDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure), VFWDFEXPORT(WdfGetTriageInfo), VFWDFEXPORT(WdfDeviceInitSetIoTypeEx), VFWDFEXPORT(WdfDeviceQueryPropertyEx), VFWDFEXPORT(WdfDeviceAllocAndQueryPropertyEx), VFWDFEXPORT(WdfDeviceAssignProperty), VFWDFEXPORT(WdfFdoInitQueryPropertyEx), VFWDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx), VFWDFEXPORT(WdfDeviceStopIdleActual), VFWDFEXPORT(WdfDeviceResumeIdleActual), VFWDFEXPORT(WdfDeviceGetSelfIoTarget), VFWDFEXPORT(WdfDeviceInitAllowSelfIoTarget), VFWDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue), VFWDFEXPORT(WdfDeviceOpenDevicemapKey), } }; #endif // VF_FX_DYNAMICS_GENERATE_TABLE #endif // _VFFXDYNAMICS_H_