Поделиться через


структура SPB_TRANSFER_BUFFER (spb.h)

Структура SPB_TRANSFER_BUFFER описывает буфер данных для отдельной передачи в последовательности передачи ввода-вывода.

Синтаксис

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, которые являются компонентами режима ядра.

Simple

Структура SPB_TRANSFER_BUFFER_LIST_ENTRY, указывающая базовый адрес и длину простого буфера передачи. Используйте этот член объединения, если форматSpbTransferBufferFormatSimple или SpbTransferBufferFormatSimpleNonPaged. Формат SpbTransferBufferFormatSimpleNonPaged используется только клиентами в режиме ядра.

BufferList

Список точечного сбора, состоящий из массива дескрипторов буфера. Используйте этот член объединения, если форматspbTransferBufferFormatList.

BufferList.List

Указатель на массив SPB_TRANSFER_BUFFER_LIST_ENTRY структур, описывающих буферы в списке точечного сбора.

BufferList.ListCe

Количество элементов в массиве List.

Mdl

Указатель на MDL, описывающий буфер. Этот элемент используется только клиентами в режиме ядра. Используйте этот член объединения, если форматspbTransferBufferFormatMdl. Дополнительные сведения см. в разделе "Примечания".

Замечания

Эта структура используется SPB_TRANSFER_LIST_ENTRY структурой для описания буфера передачи.

Элемент Mdl этой структуры можно использовать только клиентами драйвера контроллера SPB, которые являются компонентами режима ядра. Клиенты пользовательского режима не должны использовать этот элемент. Дополнительные сведения о многомерных выражениях см. в разделе Использование многомерных выражений.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается начиная с Windows 8.
заголовка spb.h

См. также