Condividi tramite


Metodo IPortWavePci::Notify (portcls.h)

Il metodo Notify notifica al driver di porta che si è verificato un interrupt che indica lo stato di avanzamento del puntatore DMA.

Sintassi

void Notify(
  [in] PSERVICEGROUP ServiceGroup
);

Parametri

[in] ServiceGroup

Puntatore all'oggetto IServiceGroup del driver miniport.

Valore restituito

Nessuno

Osservazioni

Alcuni driver miniport chiamano questo metodo da un ISR in risposta a un interrupt hardware dopo aver cancellato l'origine interrupt. Altri driver chiamano questo metodo da un DPC timer pianificato per l'esecuzione a intervalli regolari. Come regola generale, solo i driver che gestiscono un singolo flusso di rendering da KMixer devono basarsi su interrupt hardware. I driver che supportano l'accelerazione hardware DirectSound devono disattivare gli interrupt hardware e usare invece i DPC timer. Per altre informazioni, vedere IPortWavePciStream::GetMapping.

Anche se il driver miniport è libero di scegliere la propria tecnica per determinare quando chiamare questo metodo, questo metodo deve essere chiamato abbastanza frequentemente per consentire al driver della porta di attivare la posizione in sospeso e gli eventi di clock a intervalli regolari. La tempistica per questo metodo non è fondamentale, in quanto per il metodo IPortWaveCyclic::Notify, tuttavia.

Quando un driver dell'adattatore installa un ISR, invia un parametro ServiceContext insieme al punto di ingresso di ISR . Per informazioni dettagliate, vedere Providing ISR Context Information). Quando si verifica l'interrupt, il sistema operativo chiama l'ISR e passa ServiceContext come parametro di chiamata all'ISR. Anche se il significato del parametro ServiceContext è noto solo allo sviluppatore di driver, è in genere un puntatore all'oggetto miniport. L'ISR usa questo puntatore per accedere alle informazioni sull'oggetto miniport.

Il parametro ServiceGroup segue le convenzioni di conteggio dei riferimenti per gli oggetti COM.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione portcls.h (include Portcls.h)
IRQL Qualsiasi livello

Vedere anche

IPortWaveCyclic::Notify

IPortWavePci

IPortWavePciStream::GetMapping

IServiceGroup