Partager via


DXGKDDI_PRESENTDISPLAYONLY fonction de rappel (d3dkmddi.h)

Présente l’image d’écran au périphérique d’affichage d’un pilote kmDOD en mode noyau uniquement.

Syntaxe

DXGKDDI_PRESENTDISPLAYONLY DxgkddiPresentdisplayonly;

NTSTATUS DxgkddiPresentdisplayonly(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_PDXGKARG_PRESENT_DISPLAYONLY pPresentDisplayOnly
)
{...}

Paramètres

hAdapter

Handle vers le contexte de l’appareil pour l’adaptateur d’affichage. La fonction DxgkDdiAddDevice kmDOD a précédemment renvoyé ce handle dans le paramètre MiniportDeviceContext.

pPresentDisplayOnly

Pointeur vers une structure DXGKARG_PRESENT_DISPLAYONLY qui contient des informations sur l’opération actuelle.

Valeur de retour

Retourne l’une des valeurs suivantes :

code de retour Description
STATUS_SUCCESS L’opération actuelle s’est terminée avec succès.
STATUS_PENDING L’opération actuelle a été envoyée à la file d’attente logicielle ou matérielle pour se terminer.
Dans ce cas, le KMDOD doit utiliser une interruption et un appel de procédure différée (DPC) pour signaler la progression de l’opération actuelle. Sinon, le système d’exploitation utilise le processus TDR (Timeout Detection and Recovery), qui signale une erreur et nécessite que le KMDOD se réinitialise et réinitialise le GPU.
Notez que ce code d’état ne doit pas être retourné pour le mode synchrone, comme décrit dans Les remarques.

 

Le pilote peut également retourner tout autre code d’état d’erreur défini dans Ntstatus.h pour indiquer les problèmes qui se sont produits avec l’opération actuelle.

Remarques

Le KMDOD doit effectuer tous les déplacements d’écran à l’écran avant de copier des rectangles sales. En outre, le KMDOD doit effectuer chaque opération de déplacement/copie avant de commencer une autre opération de déplacement/copie.

Le système d’exploitation prend en charge deux modes d’opérations KMDOD présentes : synchrone et asynchrone. Selon l’implémentation du matériel et du pilote, le KMDOD peut utiliser le mode ou basculer entre eux à tout moment.

Le système d’exploitation garantit que cette fonction suit le mode de synchronisation de niveau zéro tel que défini dans threading et synchronisation de niveau zéro.

Exigences

Exigence Valeur
client minimum pris en charge Windows 8
serveur minimum pris en charge Windows Server 2012
plateforme cible Bureau
d’en-tête d3dkmddi.h
IRQL PASSIVE_LEVEL

Voir aussi

DXGKARGCB_NOTIFY_INTERRUPT_DATA

DXGKARG_PRESENT_DISPLAYONLY

DxgkCbNotifyDpc

DxgkCbNotifyInterrupt

DxgkCbPresentDisplayOnlyProgress

DxgkCbQueueDpc

DxgkDdiAddDevice