Costruzione driver adattatore
Il supporto del driver per una determinata scheda adattatore audio assume la forma di un driver di adattatore. Un driver dell'adattatore è costituito dal seguente:
Codice dell'adattatore generale che esegue l'avvio e l'inizializzazione del driver e che implementa tutte le operazioni comuni a tutte le funzioni audio nella scheda adattatore.
Set di driver miniport che gestiscono funzioni audio specifiche sulla scheda adattatore.
Il fornitore hardware fornisce sia il codice dell'adattatore generale che il codice per tutti i driver miniport non forniti dal sistema.
Per un esempio del codice dell'adattatore generale, vedere l'implementazione dell'interfaccia CAdapterCommon nel driver di esempio Sysvad, illustrato in Driver audio di esempio.
Usando un approccio a livelli, il fornitore può scrivere un driver di adattatore che opera su uno dei diversi livelli, a seconda della funzionalità hardware dell'adattatore. Quando si determina il livello di supporto richiesto da una determinata funzione hardware, il fornitore deve prima determinare se esiste già un driver miniport fornito dal sistema che supporta la funzione (vedere l'elenco della funzione PcNewMiniport dei driver miniport forniti dal sistema). In caso contrario, il fornitore deve implementare un driver miniport proprietario, ma potrebbe comunque essere in grado di usare uno dei driver di porta forniti dal sistema (vedere l'elenco della funzione PcNewPort dei driver di porta forniti dal sistema).
Per implementare il supporto WDM per un dispositivo, seguire questa procedura:
Se un driver miniport fornito dal sistema supporta già la funzione hardware, usare il driver miniport esistente per gestire la funzione.
Se la funzione hardware non è compatibile con un driver miniport fornito dal sistema, determinare se la funzione è compatibile con almeno uno dei driver di porta forniti dal sistema. Se un driver di porta fornito dal sistema supporta la funzione hardware, scrivere la parte del driver miniport che gestisce la funzione. Tale driver miniport deve essere conforme alla specifica per l'interfaccia miniport prevista dal driver della porta proprietaria.
Se nessun driver di porta fornito dal sistema supporta la funzione hardware, scrivere un minidriver per supportare la funzione. Il minidriver deve essere conforme alla specifica dell'interfaccia per il driver della classe di streaming.
Questa sezione illustra gli argomenti seguenti: