Condividi tramite


struttura DXGIDDICB_PRESENT (dxgiddi.h)

La struttura DXGIDDICB_PRESENT descrive le allocazioni copiate da e verso il contenuto.

Sintassi

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;

Members

[in] hSrcAllocation

Tipo di dati D3DKMT_HANDLE che rappresenta un handle in modalità kernel per l'allocazione di origine. La funzione pfnAllocateCb del runtime Microsoft Direct3D restituisce questo handle. Pertanto, il driver di visualizzazione in modalità utente deve usare questo handle per copiare il contenuto da .

[in] hDstAllocation

Tipo di dati D3DKMT_HANDLE che rappresenta un handle in modalità kernel per l'allocazione di destinazione. hDstAllocation può essere zero se la destinazione è sconosciuta; La modalità kernel determinerà la destinazione appena prima di inviare il flusso di comandi hardware tramite DMA al processore grafico.

[in] pDXGIContext

Handle per il contesto DXGI (Microsoft DirectX Graphics Infrastructure). Questo handle è opaco per il driver. Il driver deve assegnare l'handle dal membro pDXGIContext della struttura DXGI_DDI_ARG_PRESENT ricevuta dal driver in una chiamata alla relativa funzione PresentDXGI a questo membro.

[in] hContext

Handle al contesto a cui il driver invia l'operazione di copia. Il driver di visualizzazione in modalità utente ha creato in precedenza questo contesto chiamando la funzione pfnCreateContextCb .

[in] BroadcastContextCount

Numero di contesti aggiuntivi nella matrice specificata dal membro BroadcastContext .

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

Matrice di handle ai contesti aggiuntivi a cui trasmettere l'operazione corrente corrente. La costante D3DDDI_MAX_BROADCAST_CONTEXT , definita come 64, definisce il numero massimo di contesti aggiuntivi a cui il driver di visualizzazione in modalità utente può trasmettere l'operazione corrente.

La trasmissione è supportata solo per le operazioni di capovolgimento. Per trasmettere un'operazione di capovolgimento, il driver miniport di visualizzazione deve supportare i capovolgimenti basati su I/O mappati alla memoria (MMIO). Per indicare il supporto dei capovolgimenti MMIO, il driver miniport di visualizzazione imposta il flag di campo di bit FlipOnVSyncMmIo nel membro FlipCaps della struttura DXGK_DRIVERCAPS quando viene chiamata la funzione DxgkDdiQueryAdapterInfo .

Il contesto originale specificato dal membro hContext e che il driver di visualizzazione in modalità utente presenta non è un elemento nella matrice BroadcastContext . Ad esempio, se la matrice BroadcastContext contiene un elemento, il driver di visualizzazione in modalità utente invia l'operazione corrente al contesto proprietario (hContext) e trasmette a tale contesto aggiuntivo.

BroadcastSrcAllocation

Allocazioni che verranno presentate.

BroadcastDstAllocation

Se diverso da zero, rappresenta le allocazioni di destinazione del presente.

PrivateDriverDataSize

Dimensioni dei dati del driver privato in byte.

pPrivateDriverData

Dati dei driver privati da passare a DxgiPresent.

bOptimizeForComposition

DWM è coinvolto nella composizione.

SyncIntervalOverrideValid

L'intervallo di sincronizzazione dell'app di override è valido.

SyncIntervalOverride

Eseguire l'override dell'intervallo di sincronizzazione dell'app.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Vista e versioni successive dei sistemi operativi Windows.
Intestazione dxgiddi.h (include D3d10umddi.h)

Vedi anche

DXGI_DDI_ARG_PRESENT

DXGK_DRIVERCAPS

DxgkDdiQueryAdapterInfo

PresentDXGI

pfnAllocateCb

pfnCreateContextCb

pfnPresentCbDXGI