D3DKMT_PRESENT Struktur (d3dkmthk.h)
Die D3DKMT_PRESENT Struktur beschreibt den aktuellen Vorgang.
Syntax
typedef struct _D3DKMT_PRESENT {
union {
[in] D3DKMT_HANDLE hDevice;
[in] D3DKMT_HANDLE hContext;
};
[in] HWND hWindow;
[in] D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
[in] D3DKMT_HANDLE hSource;
[in] D3DKMT_HANDLE hDestination;
[in] UINT Color;
[in] RECT DstRect;
[in] RECT SrcRect;
[in] UINT SubRectCnt;
[in] const RECT *pSrcSubRects;
[in] UINT PresentCount;
[in] D3DDDI_FLIPINTERVAL_TYPE FlipInterval;
[in] D3DKMT_PRESENTFLAGS Flags;
[in] ULONG BroadcastContextCount;
D3DKMT_HANDLE BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
[in] HANDLE PresentLimitSemaphore;
[in] D3DKMT_PRESENTHISTORYTOKEN PresentHistoryToken;
D3DKMT_PRESENT_RGNS *pPresentRegions;
union {
D3DKMT_HANDLE hAdapter;
D3DKMT_HANDLE hIndirectContext;
};
UINT Duration;
D3DKMT_HANDLE *BroadcastSrcAllocation;
D3DKMT_HANDLE *BroadcastDstAllocation;
UINT PrivateDriverDataSize;
PVOID pPrivateDriverData;
BOOLEAN bOptimizeForComposition;
} D3DKMT_PRESENT;
Angehörige
[in] hDevice
Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für das Gerät darstellt, für das die Präsentation vorhanden ist. Ein Gerätehandle wird der D3DKMTPresent Funktion in der Union bereitgestellt, die D3DKMT_PRESENT zur Kompatibilität mit Microsoft Direct3D Version 10 enthält.
[in] hContext
Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für den Gerätekontext darstellt, der angezeigt werden soll.
[in] hWindow
Ein Handle für das Fenster, auf das die Bitblockübertragung (Bitblt) angewendet wird. Der Wert NULL- gibt das Desktopfenster an. Der Wert in hWindow kann NULL- sein, es sei denn, der Blt oder ColorFill Bitfeldkennzeichnung wird im Flags Member angegeben.
[in] VidPnSourceId
Die nullbasierte Identifikationsnummer der Videodarstellungsquelle in einem Pfad einer VidPN-Topologie (Video Present Network), für die die Anzeige eingeschränkt werden soll, wenn die RestrictVidPnSource- Bitfeldkennzeichnung im Flags Member festgelegt ist.
Wenn das RestrictVidPnSource- Bitfeld-Flag festgelegt ist und das hWindow Member NULL-ist, gibt der VidPnSourceId- Member an, welche Ausgabe der Bitblt im Vollbildmodus angezeigt wird. wird an "If RestrictVidPnSource" festgelegt, und hWindow ist nichtNULL-, VidPnSourceId- gibt an, auf welche Ausgabe die Übertragung des Fensterblocks eingeschränkt werden soll.
[in] hSource
Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für den Systemspeicher oder die primäre Zuordnung darstellt, aus der dargestellt werden soll, wenn das ColorFill- Bitfeld-Flag nicht im Flags Member festgelegt ist.
[in] hDestination
Ein D3DKMT_HANDLE Datentyp, der ein Kernelmodushandle für die Zielzuordnung darstellt. hDestination kann null sein, wenn das Ziel unbekannt ist.
Das Handle in hDestination ist nur gültig, wenn das Blt- Bitfeld-Flag im Flags Member festgelegt ist.
Wenn der Ziehpunkt im hDestination Member ungleich Null ist, muss die hDestination und hWindow Handles auf zwei verschiedene primäre Zuordnungen derselben Größe verweisen, das Gerät im hDevice- Mitglied muss der Besitzer der Video präsentierenden Quelle sein, die durch das VidPnSourceId Mitglied identifiziert wird, und das SrcRectValid- Bitfeld-Flag muss im Flags Member festgelegt werden.
[in] Color
Der 32-Bit-Wert der ARGB (siehe D3DDDIFORMAT Enumeration) mit Farbfüllung oder Farbschlüsselwert. Ein Wert für die Farbfüllung wird festgelegt, wenn das ColorFill- Bitfeld-Flag im Flags Member festgelegt wird. Ein Wert für den Farbschlüssel wird festgelegt, wenn entweder das SrcColorKey oder DstColorKey Bitfeld-Flag im Flags Member festgelegt wird. Beachten Sie, dass immer nur eine der ColorFill-, SrcColorKey-und DstColorKey Bitfeldflags festgelegt ist.
Wenn das primäre Format RGB palettisiert ist, enthält Color den Palettenindex anstelle des D3DDDIFMT_A8R8G8B8 Werts aus D3DDDIFORMAT.
[in] DstRect
Das optionale Ziel RECT- für die Bitblt. Das Ziel-RECT wird nur verwendet, wenn die DstRectValid Bitfeld-Flag im Flags Member festgelegt ist.
[in] SrcRect
Das optionale Quell-RECT für das Bitblt. Das Quell-RECT wird nur verwendet, wenn die SrcRectValid Bitfeld-Flag im Flags Member festgelegt ist.
[in] SubRectCnt
Die Anzahl der untergeordneten Bereiche, die pSrcSubRects verweist, auf die beim Darstellen angegeben wird.
[in] pSrcSubRects
Ein Zeiger auf ein Array von subrectangularen Regionen (RECTs), die bei der Darstellung angegeben werden.
[in] PresentCount
Die Anzahl der vorhandenen Vorgänge, die für das Gerät in die Warteschlange gestellt werden können, das von hDeviceangegeben wird.
[in] FlipInterval
Ein D3DDDI_FLIPINTERVAL_TYPE-typisierter Wert, der das Flip-Intervall angibt (d. a., wenn der Flip nach Null, 1, zwei, drei oder vier vertikalen Synchronisierungen erfolgt).
[in] Flags
Eine D3DKMT_PRESENTFLAGS Struktur, die die Anzeige in Bitfeld-Flags identifiziert. Beachten Sie, dass die ColorFill-, SrcColorKey-und DstColorKey Bitfeld-Flags sich gegenseitig ausschließen.
[in] BroadcastContextCount
Die Anzahl zusätzlicher Kontexte im Array, das BroadcastContext- angibt.
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
Ein Array von D3DKMT_HANDLE Datentypen, die Kernelmodushandles für die zusätzlichen Kontexte darstellen, um den aktuellen aktuellen Vorgang zu übertragen. Die D3DDDI_MAX_BROADCAST_CONTEXT Konstante, die als 64 definiert ist, definiert die maximale Anzahl von Kontexten, an die der OpenGL ICD 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 das OpenGL ICD-Element kein Element im BroadcastContext- Array ist. Wenn beispielsweise das BroadcastContext Array ein Element enthält, sendet das OpenGL ICD den aktuellen Vorgang an den eigenen Kontext (hContext) und sendet an diesen zusätzlichen Kontext.
[in] PresentLimitSemaphore
Der Ziehpunkt für das present-limit-Semaphor.
Wird ab Windows 7 unterstützt.
[in] PresentHistoryToken
Eine D3DKMT_PRESENTHISTORYTOKEN Struktur, die den Typ des aktuellen Vorgangs identifiziert.
Wird ab Windows 7 unterstützt.
pPresentRegions
Ein Zeiger auf eine D3DKMT_PRESENT_RGNS Struktur, die schmutzige und verschobene Bereiche identifiziert.
Wird ab Windows 8 unterstützt.
hAdapter
Ein Handle für den Grafikadapter.
hIndirectContext
Der indirekte Adapterkontext für die Umleitung über den vorhandenen DoD-Pfad. Dieses Element ist nur gültig, wenn das PresentIndirect-Flag festgelegt ist.
Duration
Dauer pro Gegenwart. Nur gültig, wenn das DurationValid-Flag festgelegt ist.
BroadcastSrcAllocation
Verknüpfter Anzeigeadapter für die Quelle.
BroadcastDstAllocation
Verknüpfter Anzeigeadapter für das Ziel.
PrivateDriverDataSize
Private Treiberdatengröße.
pPrivateDriverData
Zeigen Sie auf einen Puffer, der optionale private Treiberdaten enthält.
bOptimizeForComposition
Gibt an, ob das Gerät für die Komposition optimiert ist.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows Vista |
Header- | d3dkmthk.h (einschließlich D3dkmthk.h) |