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) |