SPB_TRANSFER_BUFFER 構造体は、I/O 転送シーケンスの個々の転送のデータ バッファーを記述します。
構文
typedef struct SPB_TRANSFER_BUFFER {
SPB_TRANSFER_BUFFER_FORMAT Format;
union {
SPB_TRANSFER_BUFFER_LIST_ENTRY Simple;
struct {
PSPB_TRANSFER_BUFFER_LIST_ENTRY List;
ULONG ListCe;
} BufferList;
PMDL Mdl;
};
} SPB_TRANSFER_BUFFER, *PSPB_TRANSFER_BUFFER;
メンバーズ
Format
バッファー形式。 このメンバーは、次のいずれかの SPB_TRANSFER_BUFFER_FORMAT 列挙値に設定されます。
- SpbTransferBufferFormatSimple の
- spbTransferBufferFormatList の
- spbTransferBufferFormatSimpleNonPaged の
- spbTransferBufferFormatMdl の
spbTransferBufferFormatMdl は、カーネル モード コンポーネントである SPB コントローラー ドライバーのクライアントによって要求される I/O 転送シーケンスに対してのみ有効な値です。
Simple
基本アドレスと単純転送バッファーの長さを指定するSPB_TRANSFER_BUFFER_LIST_ENTRY構造体。 Format が spbTransferBufferFormatSimple または spbTransferBufferFormatSimpleNonPaged 場合は、共用体のこのメンバーを使用します。 SpbTransferBufferFormatSimpleNonPaged 形式は、カーネル モード クライアントでのみ使用されます。
BufferList
バッファー記述子の配列で構成される散布図収集リスト。 Format が SpbTransferBufferFormatList 場合は、共用体のこのメンバーを使用します。
BufferList.List
散布図リスト内のバッファーを記述する SPB_TRANSFER_BUFFER_LIST_ENTRY 構造体の配列へのポインター。
BufferList.ListCe
List 配列内の要素の数。
Mdl
バッファーを記述する MDL へのポインター。 このメンバーは、カーネル モード クライアントでのみ使用されます。 Format が spbTransferBufferFormatMdl 場合は、共用体のこのメンバーを使用します。 詳細については、「解説」を参照してください。
備考
この構造体は、転送バッファーを記述するために SPB_TRANSFER_LIST_ENTRY 構造体によって使用されます。
この構造体の Mdl メンバーは、カーネル モード コンポーネントである SPB コントローラー ドライバーのクライアントでのみ使用できます。 ユーザー モード クライアントでは、このメンバーを使用しないでください。 MDL の詳細については、「MDLの使用」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8 以降でサポートされています。 |
ヘッダー | spb.h |