Partager via


structure DXGIDDICB_PRESENT (dxgiddi.h)

La structure DXGIDDICB_PRESENT décrit les allocations depuis lesquelles le contenu est copié.

Syntaxe

typedef struct DXGIDDICB_PRESENT {
  [in] D3DKMT_HANDLE               hSrcAllocation;
  [in] D3DKMT_HANDLE               hDstAllocation;
  [in] void                        *pDXGIContext;
  [in] HANDLE                      hContext;
  [in] UINT                        BroadcastContextCount;
       HANDLE                      BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
       D3DKMT_HANDLE               *BroadcastSrcAllocation;
       D3DKMT_HANDLE               *BroadcastDstAllocation;
       UINT                        PrivateDriverDataSize;
       PVOID                       pPrivateDriverData;
       BOOLEAN                     bOptimizeForComposition;
       BOOL                        SyncIntervalOverrideValid;
       DXGI_DDI_FLIP_INTERVAL_TYPE SyncIntervalOverride;
} DXGIDDICB_PRESENT;

Membres

[in] hSrcAllocation

Type de données D3DKMT_HANDLE qui représente un handle en mode noyau à l’allocation source. La fonction pfnAllocateCb du runtime Microsoft Direct3D retourne ce handle. Par conséquent, le pilote d’affichage en mode utilisateur doit utiliser ce handle pour copier du contenu.

[in] hDstAllocation

Type de données D3DKMT_HANDLE qui représente un handle en mode noyau à l’allocation de destination. hDstAllocation peut être égal à zéro si la destination est inconnue ; Le mode noyau détermine la destination juste avant d’envoyer le flux de commandes matériel via DMA au processeur graphique.

[in] pDXGIContext

Handle du contexte DXGI (Microsoft DirectX Graphics Infrastructure). Ce handle est opaque pour le pilote. Le pilote doit affecter le handle du pDXGIContext membre de la structure DXGI_DDI_ARG_PRESENT que le pilote a reçu dans un appel à sa fonction PresentDXGI à ce membre.

[in] hContext

Handle vers le contexte auquel le pilote envoie l’opération de copie. Le pilote d’affichage en mode utilisateur a créé ce contexte précédemment en appelant la fonction pfnCreateContextCb.

[in] BroadcastContextCount

Nombre de contextes supplémentaires dans le tableau spécifié par le membre BroadcastContext.

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

Tableau de handles vers les contextes supplémentaires pour diffuser l’opération actuelle vers. La constante D3DDDI_MAX_BROADCAST_CONTEXT, définie comme 64, définit le nombre maximal de contextes supplémentaires vers lesquels le pilote d’affichage en mode utilisateur peut diffuser l’opération actuelle.

La diffusion est prise en charge uniquement pour les opérations de retournement. Pour diffuser une opération de retournement, le pilote miniport d’affichage doit prendre en charge les flips basés sur les E/S mappés en mémoire (MMIO). Pour indiquer la prise en charge des retournements MMIO, le pilote miniport d’affichage définit l’indicateur FlipOnVSyncMmIo dans le Membre flipCaps de la structure de DXGK_DRIVERCAPS lorsque sa fonction DxgkDdiQueryAdapterInfo est appelée.

Contexte d’origine auquel le membre hContext spécifie et que le pilote d’affichage en mode utilisateur présente n’est pas un élément dans le tableau BroadcastContext. Par exemple, si le tableau BroadcastContext contient un élément, le pilote d’affichage en mode utilisateur envoie l’opération actuelle au contexte propriétaire (hContext) et diffuse à ce contexte supplémentaire.

BroadcastSrcAllocation

Allocations de contenu qui seront présentées.

BroadcastDstAllocation

Si ce n’est pas zéro, représente les allocations de destination du présent.

PrivateDriverDataSize

Taille des données du pilote privé en octets.

pPrivateDriverData

Données de pilote privé à transmettre à DxgiPresent.

bOptimizeForComposition

DWM est impliqué dans la composition.

SyncIntervalOverrideValid

Remplacer l’intervalle de synchronisation de l’application est valide.

SyncIntervalOverride

Remplacez l’intervalle de synchronisation de l’application.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows Vista et versions ultérieures des systèmes d’exploitation Windows.
d’en-tête dxgiddi.h (include D3d10umddi.h)

Voir aussi

DXGI_DDI_ARG_PRESENT

DXGK_DRIVERCAPS

DxgkDdiQueryAdapterInfo

PresentDXGI

pfnAllocateCb

pfnCreateContextCb

pfnPresentCbDXGI