Freigeben über


D3DDDICB_PRESENT Struktur (d3dumddi.h)

Die D3DDDICB_PRESENT-Struktur beschreibt Zuordnungen, in die Inhalte kopiert werden.

Syntax

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;

Angehörige

[in] hSrcAllocation

Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für die Quellzuordnung darstellt. Die pfnAllocateCb--Funktion der Microsoft Direct3D-Laufzeit gibt dieses Handle zurück. Daher sollte der Anzeigetreiber für den Benutzermodus diesen Handle verwenden, um Inhalte zu kopieren.

[in] hDstAllocation

Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für die Zielzuordnung darstellt. hDstAllocation- kann null sein, wenn das Ziel unbekannt ist; Der Kernelmodus bestimmt das Ziel direkt vor dem DMA des Hardwarebefehlsstreams an den Grafikprozessor.

[in] hContext

Ein Handle für den Kontext, an den der Treiber den Kopiervorgang übermittelt. Der Benutzermodusanzeigetreiber hat diesen Kontext zuvor durch Aufrufen der pfnCreateContextCb--Funktion erstellt.

[in] BroadcastContextCount

Die Anzahl der zusätzlichen Kontexte im Array, die vom BroadcastContext Member angegeben werden.

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

Ein Array von Handles für die zusätzlichen Kontexte, um den aktuellen aktuellen Vorgang zu übertragen. Die D3DDDI_MAX_BROADCAST_CONTEXT Konstante, die als 64 definiert ist, definiert die maximale Anzahl zusätzlicher Kontexte, in die der Anzeigetreiber des Benutzermodus den aktuellen aktuellen Vorgang übertragen kann.

Die Übertragung wird nur für Flip-Vorgänge unterstützt. Um einen Flip-Vorgang zu übertragen, muss der Miniporttreiber speicherbasierte I/O (MMIO)-basierte Flips unterstützen. Um die Unterstützung von MMIO-Flips anzugeben, legt der Miniporttreiber die FlipOnVSyncMmIo Bitfeldflagge im FlipCaps-element der DXGK_DRIVERCAPS-Struktur fest, wenn die DxgkDdiQueryAdapterInfo-Funktion aufgerufen wird.

Der ursprüngliche Kontext, den das hContext Member angibt und dass der Anzeigetreiber für den Benutzermodus kein Element im BroadcastContext- Array ist. Wenn beispielsweise das BroadcastContext Array ein Element enthält, sendet der Anzeigetreiber für den Benutzermodus den aktuellen Vorgang an den eigenen Kontext (hContext) und sendet an diesen zusätzlichen Kontext.

BroadcastSrcAllocation

Zuteilungen, welche Inhalte präsentiert werden.

BroadcastDstAllocation

Wenn keine Null ist, stellt die Zielzuweisungen des vorhandenen Werts dar.

PrivateDriverDataSize

Private Treiberdatengröße in Byte.

pPrivateDriverData

Private Treiberdaten, die an DdiPresent übergeben werden sollen.

bOptimizeForComposition

DWM ist an der Komposition beteiligt.

SyncIntervalOverrideValid

Das App-Synchronisierungsintervall ist gültig.

SyncIntervalOverride

Überschreiben Sie das Synchronisierungsintervall der App.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Header- d3dumddi.h (include D3dumddi.h)

Siehe auch

pfnAllocateCb

pfnPresentCb