D3DDDICB_PRESENT struttura (d3dumddi.h)
La struttura D3DDDICB_PRESENT descrive le allocazioni copiate da e verso il contenuto.
Sintassi
typedef struct _D3DDDICB_PRESENT {
[in] D3DKMT_HANDLE hSrcAllocation;
[in] D3DKMT_HANDLE hDstAllocation;
[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;
D3DDDI_FLIPINTERVAL_TYPE SyncIntervalOverride;
} D3DDDICB_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 di 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 determina la destinazione appena prima di DMA del flusso di comandi hardware al processore grafico.
[in] hContext
Handle al contesto in cui il driver invia l'operazione di copia. Il driver di visualizzazione in modalità utente 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 per i contesti aggiuntivi a cui trasmettere l'operazione 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 visualizzato deve supportare i capovolgimenti basati su I/O (MMIO) mappati alla memoria. Per indicare il supporto delle capovolgimenti MMIO, il driver miniport visualizzato imposta il flag di campo a 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 presente al contesto di proprietà (hContext) e trasmette a tale contesto aggiuntivo.
BroadcastSrcAllocation
Allocazioni che verranno presentate.
BroadcastDstAllocation
Se non zero, rappresenta le allocazioni di destinazione del presente.
PrivateDriverDataSize
Dimensioni dei dati del driver privato in byte.
pPrivateDriverData
Dati del driver privato da passare a DdiPresent.
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 | d3dumddi.h (include D3dumddi.h) |