estructura DXGK_PRESENTATIONCAPS (d3dkmddi.h)
La estructura DXGK_PRESENTATIONCAPS identifica las funciones de presentación de un controlador de miniporte de pantalla que el controlador proporciona a través de una llamada a su función DxgkDdiQueryAdapterInfo.
Sintaxis
typedef struct _DXGK_PRESENTATIONCAPS {
union {
struct {
UINT NoScreenToScreenBlt : 1;
UINT NoOverlapScreenBlt : 1;
UINT SupportKernelModeCommandBuffer : 1;
UINT NoSameBitmapAlphaBlend : 1;
UINT NoSameBitmapStretchBlt : 1;
UINT NoSameBitmapTransparentBlt : 1;
UINT NoSameBitmapOverlappedAlphaBlend : 1;
UINT NoSameBitmapOverlappedStretchBlt : 1;
UINT DriverSupportsCddDwmInterop : 1;
UINT Reserved0 : 1;
UINT AlignmentShift : 4;
UINT MaxTextureWidthShift : 3;
UINT MaxTextureHeightShift : 3;
UINT SupportAllBltRops : 1;
UINT SupportMirrorStretchBlt : 1;
UINT SupportMonoStretchBltModes : 1;
UINT StagingRectStartPitchAligned : 1;
UINT NoSameBitmapBitBlt : 1;
UINT NoSameBitmapOverlappedBitBlt : 1;
UINT Reserved1 : 1;
UINT NoTempSurfaceForClearTypeBlend : 1;
UINT SupportSoftwareDeviceBitmaps : 1;
UINT NoCacheCoherentApertureMemory : 1;
UINT SupportLinearHeap : 1;
#if ...
UINT Reserved : 1;
#else
UINT Reserved : 4;
#endif
};
UINT Value;
};
} DXGK_PRESENTATIONCAPS;
Miembros
[in] NoScreenToScreenBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una transferencia de bloques de bits (bitblt) desde la superficie principal a la misma superficie principal. Si se establece noScreenToScreenBlt, el controlador no puede realizar una transferencia de bloque de bits de pantalla a pantalla. Por lo tanto, el subsistema del kernel de gráficos de Microsoft DirectX (Dxgkrnl.sys) no solicitará al controlador que realice dicha transferencia de bloques de bits.
Establecer este miembro equivale a establecer el primer bit del miembro Value de 32 bits (0x00000001).
[in] NoOverlapScreenBlt
Valor UINT que especifica si el controlador de minipuerto de pantalla puede realizar una transferencia de bloques de bits que se superpone. Si se establece noOverlapScreenBlt, el controlador no puede realizar una transferencia de bloques de bits que se superponga. Por lo tanto, el subsistema del kernel de gráficos de DirectX no solicitará al controlador que realice dicha transferencia de bloques de bits.
Establecer este miembro equivale a establecer el segundo bit del miembro value (0x00000002) de 32 bits.
SupportKernelModeCommandBuffer
[in] Valor UINT que especifica si el controlador de minipuerto de pantalla admite el procesamiento del búfer de comandos acelerado por hardware GDI. Si se establece supportKernelModeCommandBuffer, el controlador puede realizar varias operaciones de transferencia de bloques de bits (bitblt) aceleradas por hardware y relleno cuando el subsistema del kernel de gráficos directX llama al controlador de miniporte de pantalla función dxgkDdiRenderKm.
Se admite a partir de Windows 7.
[in] NoSameBitmapAlphaBlend
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de combinación alfa cuando las asignaciones de origen y destino son las mismas. Si se establece noSameBitmapAlphaBlend, el controlador no puede realizar dicha operación y el subsistema del kernel gráfico de DirectX no lo solicitará.
Establecer este miembro equivale a establecer el cuarto bit del miembro Value de 32 bits (0x00000008).
Se admite a partir de Windows 7.
[in] NoSameBitmapStretchBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de transferencia de bloque de bits extendido cuando las asignaciones de origen y destino son las mismas. Si se establece noSameBitmapStretchBlt, el controlador no puede realizar esta operación y el subsistema del kernel de gráficos directX no lo solicitará.
Establecer este miembro equivale a establecer el quinto bit del miembro Value de 32 bits (0x00000010).
Se admite a partir de Windows 7.
[in] NoSameBitmapTransparentBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de transferencia de bloques de bits transparente cuando las asignaciones de origen y destino son las mismas. Si se establece noSameBitmapStretchBlt, el controlador no puede realizar esta operación y el subsistema del kernel de gráficos directX no lo solicitará.
Establecer este miembro equivale a establecer el sexto bit del miembro Value de 32 bits (0x00000020).
Se admite a partir de Windows 7.
[in] NoSameBitmapOverlappedAlphaBlend
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de combinación alfa cuando las asignaciones de origen y destino son las mismas y los rectángulos de origen y destino se superponen. Si se establece noSameBitmapOverlappedAlphaBlend, el controlador no puede realizar esta operación y el subsistema del kernel de gráficos directX no lo solicitará.
Establecer este miembro equivale a establecer el séptimo bit del miembro Value de 32 bits (0x00000040).
Se admite a partir de Windows 7.
[in] NoSameBitmapOverlappedStretchBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de transferencia de bloque de bits extendido cuando las asignaciones de origen y destino son las mismas y los rectángulos de origen y destino se superponen. Si se establece noSameBitmapOverlappedStretchBlt, el controlador no puede realizar esta operación y el subsistema del kernel de gráficos directX no lo solicitará.
Establecer este miembro equivale a establecer el miembro de 32 bits Valor (0x00000080).
Se admite a partir de Windows 7.
[in] DriverSupportsCddDwmInterop
Valor UINT que especifica si el controlador de minipuerto de pantalla admite operaciones de controlador de pantalla canónica (CDD) para las asignaciones de texturas creadas por el controlador en modo de usuario para el Administrador de Windows de escritorio (DWM) que se va a usar. Si se establece controladorSupportsCddDwmInterop, el controlador de miniporte de pantalla admite estas operaciones presentes.
Si el controlador de miniporte de pantalla admite la aceleración de hardware GDI, se omite DriverSupportsCddDwmInterop. En este caso, el controlador debe admitir las operaciones de CDD para las asignaciones de texturas DWM creadas por el controlador en modo de usuario.
Establecer este miembro equivale a establecer el noveno bit del miembro Value de 32 bits (0x00000100).
Se admite a partir de Windows 7.
[in] Reserved0
Este miembro está reservado y debe establecerse en cero.
Establecer este miembro equivale a establecer el décimo bit del miembro Value de 32 bits (0x00000200).
Se admite a partir de Windows 7.
[in] AlignmentShift
Valor UINT que especifica el valor de alineación mínimo, en bytes, que los XxxPitch miembros de las estructuras de DXGK_GDIARG_XXX requieren. AlignmentShift se da como exponente binario. Por ejemplo, para especificar un valor de alineación necesario de 16 bytes, el controlador de miniporte de pantalla debe establecer AlignmentShift = 4. El valor mínimo es AlignmentShift = 2, que especifica una alineación de 4 bytes.
Establecer este miembro equivale a establecer el undécimo bit del miembro Value (0x00000400).
Se admite a partir de Windows 7.
[in] MaxTextureWidthShift
Valor UINT que especifica el ancho máximo de textura que admite el controlador de miniporte de pantalla, que se calcula como:
ancho máximo de textura admitido = 2 ^ (MaxTextureWidthShift + 11) elementos de textura.
Por ejemplo, si MaxTextureWidthShift = 0, el ancho máximo de textura admitido es 2 ^ 11 = 2048.
Establecer este miembro equivale a establecer el duodécimo bit del miembro de Value de 32 bits (0x00000800).
Se admite a partir de Windows 7.
[in] MaxTextureHeightShift
Valor UINT que especifica el alto máximo de textura que admite el controlador de miniporte de pantalla, que se calcula como:
altura máxima admitida de textura = 2 ^ (MaxTextureHeightShift + 11) elementos de textura.
Por ejemplo, si MaxTextureHeightShift = 0, el alto máximo de textura admitido es 2 ^ 11 = 2048.
Establecer este miembro equivale a establecer el decimotercer bit del miembro Value (0x00001000) de 32 bits.
Se admite a partir de Windows 7.
[in] SupportAllBltRops
Valor UINT que especifica si el controlador de miniporte de pantalla admite todas las operaciones ráster ROP3 de GDI con color sólido como patrón en los comandos BitBlt y ColorFill. Si se establece supportAllBltRops, el controlador admite estas operaciones de trama.
Establecer este miembro equivale a establecer el decimocuarto bit del miembro Value de 32 bits (0x00002000).
Se admite a partir de Windows 7.
[in] SupportMirrorStretchBlt
Valor UINT que especifica si el controlador de minipuerto de pantalla admite operaciones stretch Blt (mediante la estructura DXGK_GDIARG_STRETCHBLT) en modo reflejado. Si se establece supportMirrorStretchBlt , el controlador admite estas operaciones.
Establecer este miembro equivale a establecer el decimoquinto bit del miembro de valor de 32 bits (0x00004000).
Se admite a partir de Windows 7.
[in] SupportMonoStretchBltModes
Valor UINT que especifica si el controlador de minipuerto de pantalla admite operaciones Stretch Blt (mediante la estructura DXGK_GDIARG_STRETCHBLT) en los modos de representación monocromática BLACKONWHITE o WHITEONBLACK. Si se establece supportMonoStretchBltModes, el controlador admite estas operaciones.
Establecer este miembro equivale a establecer el decimosexto bit del miembro de valor de 32 bits (0x00008000).
Se admite a partir de Windows 7.
[in] StagingRectStartPitchAligned
Valor UINT que especifica si el controlador de miniporte de pantalla requiere el punto inicial (punto superior izquierdo) en el rectángulo en una superficie de ensayo visible para CPU para alinearse con el tono, lo que significa que la coordenada izquierda es 0. Si se establece alignmentShift, el punto superior izquierdo del rectángulo está alineado con el tono.
Establecer este miembro equivale a establecer el diecisiete bit del miembro Value de 32 bits (0x00010000).
Se admite a partir de Windows 7.
[in] NoSameBitmapBitBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de transferencia de bloques de bits cuando las asignaciones de origen y destino son las mismas. Si se establece noSameBitmapBitBlt, el controlador no puede realizar dicha operación. Por lo tanto, el subsistema del kernel de gráficos directX no solicitará que el controlador realice dicha operación.
Establecer este miembro equivale a establecer el decimoctavo bit del miembro de valor de 32 bits (0x00020000).
Se admite a partir de Windows 7.
[in] NoSameBitmapOverlappedBitBlt
Valor UINT que especifica si el controlador de miniporte de pantalla puede realizar una operación de transferencia de bloques de bits cuando las asignaciones de origen y destino son las mismas y los rectángulos de origen y destino se superponen. Si se establece noSameBitmapOverlappedBitBlt, el controlador no puede realizar dicha operación y el subsistema del kernel de gráficos directX no lo solicitará.
Establecer este miembro equivale a establecer el decimonoveno bit del miembro Value de 32 bits (0x00040000).
Se admite a partir de Windows 7.
[in] Reserved1
Este miembro está reservado y debe establecerse en cero. Establecer este miembro en cero equivale a establecer el xx bit del miembro Value de 32 bits (0x00080000).
Se admite a partir de Windows 7.
[in] NoTempSurfaceForClearTypeBlend
Valor UINT que especifica si el controlador necesita una superficie temporal durante el procesamiento de comandos especificados por el ClearTypeBlend miembro de la estructura DXGK_RENDERKM_COMMAND. Si se establece noTempSurfaceForClearTypeBlend, el controlador no necesita una superficie temporal. En este caso, el controlador usará menos memoria de vídeo.
Establecer este miembro en cero equivale a establecer el veinti first bit del miembro Value de 32 bits (0x00100000).
Se admite a partir de Windows 7.
[in] SupportSoftwareDeviceBitmaps
Este miembro está reservado y debe establecerse en cero.
Establecer este miembro equivale a establecer el bit de 32 segundos del miembro de valor de 32 bits (0x00200000).
Se admite a partir de Windows 8.
[in] NoCacheCoherentApertureMemory
Valor UINT que especifica que el controlador no admite la memoria de apertura coherente con la memoria caché.
Establecer este miembro equivale a establecer el miembro de 32 bits de Valor (0x00400000).
Se admite a partir de Windows 8.
[in] SupportLinearHeap
El controlador admite la asignación de montón lineal desde superficies de ensayo.
Establecer este miembro equivale a establecer el veinticuatro bits del miembro de Value de 32 bits (0x00800000).
Se admite a partir de Windows 8.
[in] Reserved
Este miembro está reservado y debe establecerse en cero.
Establecer este miembro equivale a establecer el veinticinco bit del miembro de Valor de 32 bits (0x01000000).
Se admite a partir de Windows 8.
[in] Este miembro está reservado y debe establecerse en cero.
Establecer este miembro equivale a establecer el veinticinco bit del miembro de valor de 32 bits (0x02000000).
Se admite a partir de Windows 8.
Value
Valor de 32 bits que identifica las funcionalidades de presentación del controlador.
Observaciones
Un controlador de miniporte de pantalla puede especificar funcionalidades de presentación estableciendo bits en el miembro value de valor de 32 bits o estableciendo miembros individuales de la estructura en la unión que DXGK_PRESENTATIONCAPS contiene.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Vista |
encabezado de | d3dkmddi.h (incluya D3dkmddi.h) |