SPB_TRANSFER_BUFFER structure (spb.h)
The SPB_TRANSFER_BUFFER structure describes the data buffer for an individual transfer in an I/O transfer sequence.
Syntax
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;
Members
Format
The buffer format. This member is set to one of the following SPB_TRANSFER_BUFFER_FORMAT enumeration values:
- SpbTransferBufferFormatSimple
- SpbTransferBufferFormatList
- SpbTransferBufferFormatSimpleNonPaged
- SpbTransferBufferFormatMdl
SpbTransferBufferFormatMdl is a valid value only for I/O transfer sequences that are requested by clients of the SPB controller driver that are kernel-mode components.
Simple
A SPB_TRANSFER_BUFFER_LIST_ENTRY structure that specifies the base address and the length of a simple transfer buffer. Use this member of the union if Format is SpbTransferBufferFormatSimple or SpbTransferBufferFormatSimpleNonPaged. The SpbTransferBufferFormatSimpleNonPaged format is used only by kernel-mode clients.
BufferList
A scatter-gather list that consists of an array of buffer descriptors. Use this member of the union if Format is SpbTransferBufferFormatList.
BufferList.List
A pointer to an array of SPB_TRANSFER_BUFFER_LIST_ENTRY structures that describe the buffers in the scatter-gather list.
BufferList.ListCe
The number of elements in the List array.
Mdl
A pointer to an MDL that describes the buffer. This member is used only by kernel-mode clients. Use this member of the union if Format is SpbTransferBufferFormatMdl. For more information, see Remarks.
Remarks
This structure is used by an SPB_TRANSFER_LIST_ENTRY structure to describe a transfer buffer.
The Mdl member of this structure can be used only by clients of the SPB controller driver that are kernel-mode components. User-mode clients must not use this member. For more information about MDLs, see Using MDLs.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Supported starting with Windows 8. |
Header | spb.h |