WDF_DEVICE_IO_BUFFER_RETRIEVAL列挙 (wudfddi_types.h)

[警告: UMDF 2 は UMDF の最新バージョンであり、UMDF 1 よりも優先されます。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、新しいバージョンのWindows 10では UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは UMDF 2 を使用する必要があります。 詳細については、「UMDF を使用したはじめに」を参照してください。

WDF_DEVICE_IO_BUFFER_RETRIEVAL列挙は、UMDF が I/O 要求のバッファーをドライバーで使用できるようにするタイミングを指定するために使用されます。

構文

typedef enum _WDF_DEVICE_IO_BUFFER_RETRIEVAL {
  WdfDeviceIoBufferRetrievalInvalid,
  WdfDeviceIoBufferRetrievalCopyImmediately,
  WdfDeviceIoBufferRetrievalDeferred,
  WdfDeviceIoBufferRetrievalMaximum
} WDF_DEVICE_IO_BUFFER_RETRIEVAL, *PWDF_DEVICE_IO_BUFFER_RETRIEVAL;

定数

 
WdfDeviceIoBufferRetrievalInvalid
システムで使用するために予約されています。
WdfDeviceIoBufferRetrievalCopyImmediately
UMDF は、I/O 要求を受け取るとすぐに、( UMDF ドライバー ホスト プロセスにコピーすることによって) I/O 要求のバッファーをドライバーで使用できるようにします。 詳細については、「解説」を参照してください。
WdfDeviceIoBufferRetrievalDeferred
UMDF は、ドライバーがバッファーへのアクセスを試みた場合にのみ、I/O 要求のバッファーを (UMDF ドライバー ホスト プロセスにコピーすることによって) ドライバーが使用できるようにします。 詳細については、「解説」を参照してください。
WdfDeviceIoBufferRetrievalMaximum
システムで使用するために予約されています。

注釈

WDF_DEVICE_IO_BUFFER_RETRIEVAL列挙体は、IWDFDeviceInitialize2::SetIoTypePreference への入力として使用されます。

バージョン 1.9 より前の UMDF バージョンでは、UMDF が I/O 要求を受信するとすぐに、UMDF は常に I/O 要求のバッファーを ( UMDF ドライバー ホスト プロセスにバッファーをコピーして) ドライバーで使用できるようにします。 IWDFIoRequest::GetInputMemoryIWDFIoRequest::GetOutputMemory は、ドライバーがバッファーにアクセスするために呼び出すことができる唯一のオブジェクト メソッドです。

UMDF バージョン 1.9 以降では、要求バッファーの即時取得または遅延取得をサポートできます。 通常、即時取得よりもドライバーのパフォーマンスが向上するため、すべての新しいドライバーで遅延取得を有効にする必要があります。 ドライバーが遅延取得を有効にしない場合、UMDF は即時取得を使用します。

バッファーの取得を延期するには、ドライバーで IWDFDeviceInitialize2::SetIoTypePreference を呼び出し、 WdfDeviceIoBufferRetrievalDeferred 値を指定する必要があります。 ドライバーは、遅延取得を有効にした後、バッファーまたは直接アクセスのいずれかのメソッドを使用して、要求バッファーにアクセスするために次の メソッドを呼び出すことができます。

IWDFIoRequest2::RetrieveInputBuffer

IWDFIoRequest2::RetrieveInputMemory

IWDFIoRequest2::RetrieveOutputBuffer

IWDFIoRequest2::RetrieveOutputMemory

遅延取得を有効にするドライバーは、バッファーにアクセスするために IWDFIoRequest::GetInputMemoryIWDFIoRequest::GetOutputMemory を使用できません。

I/O 要求のデータ バッファーへのアクセスの詳細については、「 UMDF-Based ドライバーでのデータ バッファーへのアクセス」を参照してください。

要件

要件
最小 UMDF バージョン 1.9
Header wudfddi_types.h (Wudfddi.h を含む)

こちらもご覧ください

WDF_DEVICE_IO_TYPE (UMDF)