WDF_IO_QUEUE_CONFIG_INIT function (wdfio.h)
[Applies to KMDF and UMDF]
The WDF_IO_QUEUE_CONFIG_INIT function initializes a driver's WDF_IO_QUEUE_CONFIG structure.
Syntax
void WDF_IO_QUEUE_CONFIG_INIT(
[out] PWDF_IO_QUEUE_CONFIG Config,
[in] WDF_IO_QUEUE_DISPATCH_TYPE DispatchType
);
Parameters
[out] Config
A pointer to the driver's WDF_IO_QUEUE_CONFIG structure.
[in] DispatchType
A WDF_IO_QUEUE_DISPATCH_TYPE enumerator that identifies the request dispatching type for the queue.
Return value
None
Remarks
Drivers should call WDF_IO_QUEUE_CONFIG_INIT when creating a power-managed I/O queue that is not a device's default queue. The WDF_IO_QUEUE_CONFIG_INIT function zeros the specified WDF_IO_QUEUE_CONFIG structure and sets its Size member. It also sets the PowerManaged member to WdfUseDefault and stores the specified dispatching type in the DispatchType member.
Starting in KMDF version 1.9, if DispatchType is set to WdfIoQueueDispatchParallel, WDF_IO_QUEUE_CONFIG_INIT sets the structure's NumberOfPresentedRequests member to -1. This value indicates that the framework can deliver an unlimited number of I/O requests to the driver.
Examples
The following code example initializes WDF_IO_QUEUE_CONFIG structure and then calls WdfIoQueueCreate.
WDF_IO_QUEUE_CONFIG queueConfig;
NTSTATUS status = STATUS_SUCCESS;
WDFQUEUE readQueue;
WDF_IO_QUEUE_CONFIG_INIT(
&queueConfig,
WdfIoQueueDispatchManual
);
status = WdfIoQueueCreate(
hDevice,
&queueConfig,
WDF_NO_OBJECT_ATTRIBUTES,
&readQueue
);
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Minimum KMDF version | 1.0 |
Minimum UMDF version | 2.0 |
Header | wdfio.h (include Wdf.h) |