структура DMA_ADAPTER (wdm.h)

Структура DMA_ADAPTER описывает системный интерфейс контроллера DMA для данного устройства. Драйвер вызывает IoGetDmaAdapter для получения этой структуры.

Синтаксис

typedef struct _DMA_ADAPTER {
  USHORT          Version;
  USHORT          Size;
  PDMA_OPERATIONS DmaOperations;
} *PADAPTER_OBJECT, DMA_ADAPTER, *PDMA_ADAPTER;

Члены

Version

Указывает версию этой структуры. Версия 3 структуры DMA_ADAPTER доступна начиная с Windows 8. Для версий 1 и 2 этой структуры этому члену присваивается значение 1. Дополнительные сведения см. в разделе "Примечания".

Size

Задает размер этой структуры (в байтах).

DmaOperations

Указатель на структуру DMA_OPERATIONS , содержащую указатели на функции адаптера DMA. Версия структуры DMA_OPERATIONS , на которую указывает этот элемент, определяется версией структуры DMA_ADAPTER . Таким образом, для версии 1 структуры DMA_ADAPTERDmaOperations указывает на версию 1 DMA_OPERATIONS структуры и т. д. Дополнительные сведения о версиях структуры см. в следующем разделе примечаний.

Комментарии

Драйверы для устройств, использующих DMA для передачи данных, используют эту структуру для получения адресов функций, позволяющих использовать контроллер DMA. Как правило, драйверы получают эту структуру, вызывая подпрограмму IoGetDmaAdapter . Драйверы также могут получить эту структуру, запрашивая интерфейс BUS_INTERFACE_STANDARD .

Когда подпрограмма IoGetDmaAdapter возвращает указатель на версию 1 или версию 2 структуры DMA_ADAPTER , эта подпрограмма всегда устанавливает для элемента Version этой структуры значение 1. Таким образом, вызывающий объект не может использовать член Version для различения версий 1 и 2 DMA_ADAPTER структуры. Дополнительные сведения об определении версии структуры DMA_ADAPTER , возвращаемой этой подпрограммой, см. в разделе IoGetDmaAdapter.

Требования

Требование Значение
Заголовок wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)

См. также раздел

BUS_INTERFACE_STANDARD

DMA_OPERATIONS

IoGetDmaAdapter