DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 fonction de rappel (d3dkmddi.h)
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 est appelé pour modifier la configuration de superposition affichée.
Syntaxe
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 DxgkddiSetvidpnsourceaddresswithmultiplaneoverlay3;
NTSTATUS DxgkddiSetvidpnsourceaddresswithmultiplaneoverlay3(
IN_CONST_HANDLE hAdapter,
IN_OUT_PDXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 pSetVidPnSourceAddressWithMultiPlaneOverlay
)
{...}
Paramètres
hAdapter
Identifie l’adaptateur contenant le matériel de superposition.
pSetVidPnSourceAddressWithMultiPlaneOverlay
Pointeur vers une structure de DXGKARG_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 qui décrit les surfaces et les options d’affichage à présenter.
Valeur retournée
DXGKDDI_SETVIDPNSOURCEADDRESSWITHMULTIPLANEOVERLAY3 retourne les valeurs suivantes :
Code de retour | Description |
---|---|
STATUS_SUCCESS | La routine s’est terminée avec succès. |
STATUS_INVALID_PARAMETER | Dans le [modèle de file d’attente de basculement du matériel]/windows-hardware/drivers/display/hardware-flip-queue), le pilote n’a pas pu traiter une demande de basculement. |
STATUS_RETRY | Retourné pour des raisons telles que le pilote n’a pas pu mettre en file d’attente une requête vers le matériel en raison de basculements en attente ou que le pilote doit être appelé au PASSIVE_LEVEL. Si le pilote doit être appelé à PASSIVE_LEVEL il doit également définir le DXGK_SETVIDPNSOURCEADDRESS_OUTPUT_FLAGS. Indicateur PrePresentNeededed . |
Remarques
Cette fonction est généralement appelée au niveau de l’interruption, mais si le pilote doit effectuer une configuration matérielle qui ne peut être effectuée qu’à PASSIVE_LEVEL, le pilote peut demander que cette fonction soit rappelée à PASSIVE_LEVEL en retournant STATUS_RETRY et en définissant la DXGK_SETVIDPNSOURCEADDRESS_OUTPUT_FLAGS. Indicateur PrePresentNeededed .
Même lorsqu’il est appelé à PASSIVE_LEVEL, le pilote doit éviter de passer beaucoup de temps dans cet appel, car l’appel bloque le main thread du planificateur GPU et le retard peut entraîner des problèmes présents. Les actions nécessitant beaucoup de temps doivent être mises en file d’attente en tant qu’éléments de travail distincts par pilote et gérées en arrière-plan. Dans ce scénario, tous les conflits entre l’élément mis en file d’attente et les modifications matérielles demandées par les futurs appels pré/post doivent être gérés par le pilote.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d3dkmddi.h |