структура DXGIDDICB_PRESENT (dxgiddi.h)
Структура DXGIDDICB_PRESENT описывает выделение содержимого, скопированное в и из нее.
Синтаксис
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;
Члены
[in] hSrcAllocation
Тип данных D3DKMT_HANDLE, представляющий дескриптор режима ядра в исходном выделении. Функция среды выполнения Microsoft Direct3D pfnAllocateC b возвращает этот дескриптор. Таким образом, драйвер отображения в пользовательском режиме должен использовать этот дескриптор для копирования содержимого из.
[in] hDstAllocation
Тип данных D3DKMT_HANDLE, представляющий дескриптор режима ядра в целевом выделении. hDstAllocation может быть нулевым, если назначение неизвестно; Режим ядра определяет назначение непосредственно перед отправкой аппаратного потока команд через DMA в графический процессор.
[in] pDXGIContext
Дескриптор контекста инфраструктуры графики Microsoft DirectX (DXGI). Этот дескриптор непрозрачн для драйвера. Драйвер должен назначить дескриптор из pDXGIContext член структуры DXGI_DDI_ARG_PRESENT, полученной драйвером при вызове функции PresentDXGI этому элементу.
[in] hContext
Дескриптор контекста, в который драйвер отправляет операцию копирования. Драйвер отображения в пользовательском режиме ранее создал этот контекст путем вызова функции pfnCreateContextCb.
[in] BroadcastContextCount
Число дополнительных контекстов в массиве, указанное элементом broadcastContext.
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
Массив дескрипторов дополнительных контекстов для трансляции текущей текущей операции. Константа D3DDDI_MAX_BROADCAST_CONTEXT, определяемая как 64, определяет максимальное количество дополнительных контекстов, в которых драйвер отображения пользовательского режима может транслировать текущую текущую операцию.
Трансляция поддерживается только для операций переверки. Чтобы транслировать операцию переверки, драйвер мини-порта дисплея должен поддерживать сопоставленные операции ввода-вывода (MMIO) на основе операций ввода-вывода. Чтобы указать поддержку переворачиваний MMIO, драйвер мини-порта отображения задает флаг FlipOnVSyncMmIo битовое поле в элементе FlipCaps элемента структуры DXGK_DRIVERCAPS при вызове функции DxgkDdiQueryAdapterInfo.
Исходный контекст, указывающий элемент hContext, и что драйвер отображения в пользовательском режиме не является элементом в массиве BroadcastContext. Например, если массив BroadcastContext содержит один элемент, драйвер отображения пользовательского режима отправляет текущую операцию в собственный контекст (hContext) и передает в этот дополнительный контекст.
BroadcastSrcAllocation
Выделение, содержимое которого будет представлено.
BroadcastDstAllocation
Если значение не равно нулю, представляет целевое выделение текущего объекта.
PrivateDriverDataSize
Размер данных частного драйвера в байтах.
pPrivateDriverData
Данные частного драйвера для передачи в DxgiPresent.
bOptimizeForComposition
DWM участвует в композиции.
SyncIntervalOverrideValid
Допустимый интервал синхронизации приложений переопределения.
SyncIntervalOverride
Переопределите интервал синхронизации приложений.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
заголовка | dxgiddi.h (include D3d10umddi.h) |