estructura D3DDDICB_PRESENT (d3dumddi.h)
La estructura de D3DDDICB_PRESENT describe las asignaciones desde las que se copia el contenido.
Sintaxis
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;
Miembros
[in] hSrcAllocation
Un D3DKMT_HANDLE tipo de datos que representa un identificador en modo kernel para la asignación de origen. La función pfnAllocateCb del entorno de ejecución de Microsoft Direct3D devuelve este identificador. Por lo tanto, el controlador de pantalla en modo de usuario debe usar este identificador para copiar contenido.
[in] hDstAllocation
Un D3DKMT_HANDLE tipo de datos que representa un identificador en modo kernel para la asignación de destino. hDstAllocation puede ser cero si se desconoce el destino; el modo kernel determinará el destino justo antes de DMA del flujo de comandos de hardware al procesador de gráficos.
[in] hContext
Identificador del contexto al que el controlador envía la operación de copia. El controlador de pantalla en modo de usuario creó este contexto llamando a la función pfnCreateContextCb .
[in] BroadcastContextCount
Número de contextos adicionales de la matriz que especifica el miembro BroadcastContext .
[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]
Matriz de identificadores a los contextos adicionales a los que difundir la operación actual actual. La constante D3DDDI_MAX_BROADCAST_CONTEXT, que se define como 64, define el número máximo de contextos adicionales a los que el controlador de pantalla en modo de usuario puede difundir la operación actual presente.
La difusión solo se admite para las operaciones de volteo. Para difundir una operación de volteo, el controlador de minipuerto de pantalla debe admitir volteos basados en E/S asignadas por memoria (MMIO). Para indicar la compatibilidad con volteos MMIO, el controlador de minipuerto de pantalla establece la marca de campo de bits FlipOnVSyncMmIo en el miembro FlipCaps de la estructura DXGK_DRIVERCAPS cuando se llama a su función DxgkDdiQueryAdapterInfo .
El contexto original que especifica el miembro hContext y que el controlador de visualización en modo de usuario presenta no es un elemento de la matriz BroadcastContext . Por ejemplo, si la matriz BroadcastContext contiene un elemento, el controlador de pantalla en modo de usuario envía la operación presente al contexto propietario (hContext) y transmite a ese contexto adicional.
BroadcastSrcAllocation
Asignaciones a las que se presentará el contenido.
BroadcastDstAllocation
Si no es cero, representa las asignaciones de destino del presente.
PrivateDriverDataSize
Tamaño de datos del controlador privado en bytes.
pPrivateDriverData
Datos del controlador privado que se van a pasar a DdiPresent.
bOptimizeForComposition
DWM está implicado en la composición.
SyncIntervalOverrideValid
Invalidar el intervalo de sincronización de aplicaciones es válido.
SyncIntervalOverride
Invalide el intervalo de sincronización de aplicaciones.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows. |
Encabezado | d3dumddi.h (incluya D3dumddi.h) |