DMA_ADAPTER struttura (wdm.h)
La struttura DMA_ADAPTER descrive un'interfaccia definita dal sistema a un controller DMA per un determinato dispositivo. Un driver chiama IoGetDmaAdapter per ottenere questa struttura.
Sintassi
typedef struct _DMA_ADAPTER {
USHORT Version;
USHORT Size;
PDMA_OPERATIONS DmaOperations;
} *PADAPTER_OBJECT, DMA_ADAPTER, *PDMA_ADAPTER;
Members
Version
Specifica la versione di questa struttura. La versione 3 della struttura DMA_ADAPTER è disponibile a partire da Windows 8. Per le versioni 1 e 2 di questa struttura, questo membro è impostato sul valore 1. Per ulteriori informazioni, vedere la sezione Osservazioni successiva.
Size
Specifica le dimensioni, in byte, di questa struttura.
DmaOperations
Puntatore a una struttura DMA_OPERATIONS che contiene puntatori alle funzioni dell'adattatore DMA. La versione della struttura DMA_OPERATIONS a cui punta questo membro è determinata dalla versione della struttura DMA_ADAPTER . Pertanto, per la versione 1 della struttura DMA_ADAPTER , DmaOperations punta alla versione 1 della struttura DMA_OPERATIONS e così via. Per altre informazioni sulle versioni della struttura, vedere la sezione Osservazioni seguenti.
Commenti
Driver per i dispositivi che usano DMA per trasferire i dati usano questa struttura per ottenere gli indirizzi delle funzioni che consentono l'uso di un controller DMA. In genere, i driver ottengono questa struttura chiamando la routine IoGetDmaAdapter . I driver possono anche ottenere questa struttura eseguendo una query sull'interfaccia BUS_INTERFACE_STANDARD .
Quando la routine IoGetDmaAdapter restituisce un puntatore alla versione 1 o alla versione 2 della struttura DMA_ADAPTER , questa routine imposta sempre il membro Version di questa struttura su 1. Pertanto, il chiamante non può usare il membro Version per distinguere tra le versioni 1 e 2 della struttura DMA_ADAPTER . Per altre informazioni su come determinare la versione di una struttura DMA_ADAPTER restituita da questa routine, vedere IoGetDmaAdapter.
Requisiti
Requisito | Valore |
---|---|
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |