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
この構造体のバージョンを指定します。 DMA_ADAPTER構造のバージョン 3 は、Windows 8 以降で使用できます。 この構造体のバージョン 1 と 2 の場合、このメンバーは値 1 に設定されます。 詳細については、「解説」を参照してください。
Size
この構造体のサイズをバイト単位で指定します。
DmaOperations
DMA アダプター関数へのポインターを含む DMA_OPERATIONS 構造体へのポインター。 このメンバーが指す DMA_OPERATIONS 構造体のバージョンは、 DMA_ADAPTER 構造体のバージョンによって決まります。 したがって、 DMA_ADAPTER 構造体のバージョン 1 の 場合、DmaOperations は 、DMA_OPERATIONS 構造体のバージョン 1 を指します。 構造体のバージョンの詳細については、次の「備考」セクションを参照してください。
注釈
DMA を使用してデータを転送するデバイスのドライバーは、この構造体を使用して、DMA コントローラーの使用を可能にする関数のアドレスを取得します。 通常、ドライバーは IoGetDmaAdapter ルーチンを呼び出してこの構造体を取得します。 ドライバーは、 BUS_INTERFACE_STANDARD インターフェイスのクエリを実行して、この構造を取得することもできます。
IoGetDmaAdapter ルーチンがDMA_ADAPTER構造体のバージョン 1 またはバージョン 2 へのポインターを返す場合、このルーチンは常に、この構造体の Version メンバーを 1 に設定します。 したがって、呼び出し元は Version メンバーを使用して、 DMA_ADAPTER 構造体のバージョン 1 と 2 を区別できません。 このルーチンによって返される DMA_ADAPTER 構造体のバージョンを確認する方法の詳細については、「 IoGetDmaAdapter」を参照してください。
要件
要件 | 値 |
---|---|
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |