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 di KMDOD ha restituito in precedenza questo handle nel parametro MiniportDeviceContext .
pPresentDisplayOnly
Puntatore a una struttura DXGKARG_PRESENT_DISPLAYONLY contenente 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 del software o dell'hardware da completare. In questo caso, il KMDOD deve usare una chiamata di routine interrotta e posticipata (DPC) per segnalare lo stato di avanzamento dell'operazione corrente. In caso contrario, il sistema operativo usa il processo TDR (Timeout Detection and Recovery), che segnala un errore e richiede il KMDOD per reinizializzare se stesso 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 i problemi che si sono verificati con l'operazione corrente.
Commenti
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 gestione delle chiavi presenti: 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 Synchronization Zero Level.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 |
Server minimo supportato | Windows Server 2012 |
Piattaforma di destinazione | Desktop |
Intestazione | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
Vedi anche
DXGKARGCB_NOTIFY_INTERRUPT_DATA