WDF_IO_QUEUE_STATE enumeration

[Applies to KMDF and UMDF]

The WDF_IO_QUEUE_STATE enumeration type identifies the status of a framework queue object. The enumerators are used as bit masks.

Syntax


typedef enum _WDF_IO_QUEUE_STATE { 
  WdfIoQueueAcceptRequests    = 0x01,
  WdfIoQueueDispatchRequests  = 0x02,
  WdfIoQueueNoRequests        = 0x04,
  WdfIoQueueDriverNoRequests  = 0x08,
  WdfIoQueuePnpHeld           = 0x10
} WDF_IO_QUEUE_STATE;

Constants

WdfIoQueueAcceptRequests

If set, the I/O queue can accept new I/O requests from the I/O manager and requests that are forwarded by the WdfDeviceConfigureRequestDispatching and WdfRequestForwardToIoQueue (or WdfRequestForwardToParentDeviceIoQueue) methods.

If not set, the framework cancels requests from the I/O manager and WdfDeviceConfigureRequestDispatching and fails requests from WdfRequestForwardToIoQueue (or WdfRequestForwardToParentDeviceIoQueue) with STATUS_WDF_BUSY.

WdfIoQueueDispatchRequests

If set, the framework delivers the queue's requests to the driver (unless the WdfIoQueuePnpHeld bit is also set). If not set, the driver cannot obtain requests from the queue.

WdfIoQueueNoRequests

If set, the I/O queue is empty.

WdfIoQueueDriverNoRequests

If set, all requests that have been delivered to the driver have been completed.

WdfIoQueuePnpHeld

If set, the framework has stopped delivering requests to the driver because the underlying device is not in its working (D0) state.

Remarks

The WDF_IO_QUEUE_STATE enumeration type is used as the return value for the WdfIoQueueGetState method.

The following functions are defined in wdfio.h:

WDF_IO_QUEUE_DRAINED(State)

Returns TRUE if the State value indicates that the queue is drained; that is, the queue is empty, is not accepting new requests, and all requests that were in the queue have been delivered to the driver.

WDF_IO_QUEUE_IDLE(State)

Returns TRUE if the State value indicates that the queue is idle; that is, the queue contains no requests and all delivered requests have been completed or canceled.

WDF_IO_QUEUE_PURGED(State)

Returns TRUE if the State value indicates that the queue is purged; that is, the queue is empty, is not accepting new requests, and all requests that were in the queue have been canceled.

WDF_IO_QUEUE_READY(State)

Returns TRUE if the State value indicates that the queue is ready; that is, the queue can accept and dispatch requests.

WDF_IO_QUEUE_STOPPED(State)

Returns TRUE if the State value indicates that the queue is stopped; that is, it can accept new requests but the framework is not delivering them to the driver.

Requirements

Minimum KMDF version

1.0

Minimum UMDF version

2.0

Header

Wdfio.h (include Wdf.h)

See also

WdfIoQueueGetState

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft