DXGKDDI_PRESENTDISPLAYONLY funzione di callback (d3dkmddi.h)
Presenta l'immagine dello schermo al dispositivo di visualizzazione di un driver di sola visualizzazione in modalità kernel (KMDOD).
Sintassi
DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;
NTSTATUS DxgkddiPresentdisplayonly(
IN_CONST_HANDLE hAdapter,
IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}
Parametri
hAdapter
Handle per il contesto di dispositivo per la scheda di visualizzazione. La funzione DxgkDdiAddDevice del KMDOD ha precedentemente restituito questo handle nel parametro MiniportDeviceContext.
pPresentDisplayOnly
Puntatore a una struttura DXGKARG_PRESENT_DISPLAYONLY che contiene informazioni sull'operazione corrente.
Valore restituito
Restituisce uno dei valori seguenti:
codice restituito | Descrizione |
---|---|
STATUS_SUCCESS | L'operazione corrente è stata completata correttamente. |
STATUS_PENDING | L'operazione corrente è stata inviata alla coda software o hardware da completare. In questo caso, il KMDOD deve usare un'interruzione e una chiamata di procedura posticipata (DPC) per segnalare lo stato di avanzamento dell'operazione corrente. In caso contrario, il sistema operativo usa il processo di rilevamento e ripristino timeout (TDR), che segnala un errore e richiede che il KMDOD venga reinizializzato e per reimpostare la GPU. Si noti che questo codice di stato non deve essere restituito per la modalità sincrona, come descritto in Osservazioni. |
Il driver può anche restituire qualsiasi altro codice di stato di errore definito in Ntstatus.h per indicare problemi che si sono verificati con l'operazione corrente.
Osservazioni
Il KMDOD deve completare tutti gli spostamenti da schermo a schermo prima di copiare rettangoli sporchi. Inoltre, il KMDOD deve completare ogni operazione di spostamento/copia prima di iniziare un'altra operazione di spostamento/copia.
Il sistema operativo supporta due modalità di operazioni presenti KMDOD: sincrona e asincrona. A seconda dell'implementazione dell'hardware e del driver, il KMDOD può usare una modalità o passare da una modalità all'altra in qualsiasi momento.
Il sistema operativo garantisce che questa funzione segua la modalità di sincronizzazione a livello zero, come definito in threading e sincronizzazione zero livello.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 8 |
server minimo supportato | Windows Server 2012 |
piattaforma di destinazione | Desktop |
intestazione | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
Vedere anche
DXGKARGCB_NOTIFY_INTERRUPT_DATA