Compartir a través de


estructura DXGK_PRESENTFLAGS (d3dkmddi.h)

La estructura DXGK_PRESENTFLAGS identifica, en marcas de campo de bits, el tipo de operación actual que se va a realizar.

Sintaxis

typedef struct _DXGK_PRESENTFLAGS {
  union {
    struct {
      UINT Blt : 1;
      UINT ColorFill : 1;
      UINT Flip : 1;
      UINT FlipWithNoWait : 1;
      UINT SrcColorKey : 1;
      UINT DstColorKey : 1;
      UINT LinearToSrgb : 1;
      UINT Rotate : 1;
      UINT FlipStereo : 1;
      UINT FlipStereoTemporaryMono : 1;
      UINT FlipStereoPreferRight : 1;
      UINT BltStereoUseRight : 1;
      UINT FlipWithMultiPlaneOverlay : 1;
      UINT RedirectedFlip : 1;
#if ...
      UINT Reserved : 18;
#elif
      UINT Reserved : 19;
#else
      UINT Reserved : 24;
#endif
    };
    [in] UINT Value;
  };
} DXGK_PRESENTFLAGS;

Miembros

[in] Blt

Valor UINT que especifica si una operación de copia, en lugar de una operación de volteo, se produce entre las superficies de origen y destino.

Establecer este miembro equivale a establecer el primer bit del miembro Value de 32 bits (0x00000001).

[in] ColorFill

Valor UINT que especifica si existe un origen desde el que se va a presentar. Si se establece este miembro, no existe ningún origen y el controlador debe rellenar el rectángulo de destino en la superficie de destino con el color A8R8G8B8 que especifica el miembro Color de la estructura DXGKARG_PRESENT .

Establecer este miembro equivale a establecer el segundo bit del miembro Value de 32 bits (0x00000002).

[in] Flip

Valor UINT que especifica si se produce una operación de volteo entre superficies traseras y principales. Si se establece este miembro, el controlador debe realizar la operación actual apuntando la salida del examen de vídeo al origen en lugar de copiar desde el origen al destino. Este tipo de operación actual está libre de lágrimas.

Establecer este miembro equivale a establecer el tercer bit del miembro Value de 32 bits (0x00000004).

[in] FlipWithNoWait

Valor UINT que especifica si las operaciones de volteo sin lágrimas no deben parar la canalización de gráficos. Si un volteo sin lágrimas detiene la canalización de gráficos, la unidad de procesamiento de gráficos (GPU) debe esperar a que el volteo sin lágrimas surta efecto antes de ejecutar el comando posterior.

FlipWithNoWait se puede establecer en TRUE (es decir, 1) solo si el controlador de minipuerto de pantalla establece la marca de campo de bits FlipOnVSyncWithNoWait en el miembro FlipCaps de la estructura DXGK_DRIVERCAPS cuando se especificó el valor DXGKQAITYPE_DRIVERCAPS en el miembro Type de la estructura DXGKARG_QUERYADAPTERINFO en una llamada a la función DxgkDdiQueryAdapterInfo del controlador.

Establecer este miembro equivale a establecer el cuarto bit del miembro Value de 32 bits (0x00000008).

[in] SrcColorKey

Valor UINT que especifica si se deben realizar las teclas de color de origen mediante el valor del miembro Color de la estructura DXGKARG_PRESENT . Es decir, cualquier píxel de la superficie de origen que coincida con la clave de color no se debe copiar en la superficie de destino y se deben copiar todos los píxeles de origen que no coincidan con la clave de color.

Establecer este miembro equivale a establecer el quinto bit del miembro Value de 32 bits (0x00000010).

[in] DstColorKey

Valor UINT que especifica si se deben realizar las teclas de color de destino mediante el valor del miembro Color de la estructura DXGKARG_PRESENT . Es decir, cualquier píxel de la superficie de destino que coincida con la clave de color debe reemplazarse por el píxel correspondiente de la superficie de origen y no se deben reemplazar todos los píxeles de destino que no coincidan con la clave de color.

Establecer este miembro equivale a establecer el sexto bit del miembro Value de 32 bits (0x00000020).

[in] LinearToSrgb

Valor UINT que especifica si se va a convertir el origen con formato lineal en formato sRGB durante la operación de copia. El formato sRGB tiene corrección gamma. Para obtener más información sobre el formato sRGB, visite el sitio web de sRGB .

Establecer este miembro equivale a establecer el séptimo bit del miembro Value de 32 bits (0x00000040).

[in] Rotate

Valor UINT que especifica si se rotan los datos de presentación para que coincidan con la orientación actual de la pantalla durante la transferencia de bloques de bits de presentación (bitblt). La orientación actual de la pantalla se establece en el miembro Rotation de una estructura de D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION , que se establece en el miembro ContentTransformation de la estructura D3DKMDT_VIDPN_PRESENT_PATH para la ruta de acceso presente del vídeo.

El controlador de minipuerto de pantalla solo debe girar los datos si se establece la marca Girar campo de bits. Incluso si el controlador determina que la orientación actual de la pantalla se gira a partir de los datos de presentación y no se establece Rotate , el controlador no debe girar los datos.

Establecer este miembro equivale a establecer el octavo bit del miembro Value de 32 bits (0x00000080).

[in] FlipStereo

Especifica si el controlador debe voltear las imágenes izquierda y derecha de una asignación estéreo.

Si se establece el miembro FlipOnNextVSync de la estructura DXGK_SETVIDPNSOURCEADDRESS_FLAGS , el controlador debe completar el volteo a la imagen izquierda en la siguiente VSync y, a continuación, completar el volteo a la imagen derecha en la siguiente VSync.

Si se establece el miembro FlipImmediate de la estructura de DXGK_SETVIDPNSOURCEADDRESS_FLAGS , el controlador debe empezar inmediatamente a examinar desde la nueva asignación. Por ejemplo, si el controlador examinaba una imagen correcta, debe iniciar el nuevo examen desde el mismo desplazamiento relativo en la imagen derecha de la nueva asignación.

Los miembros FlipStereo y FlipStereoTemporaryMono no se pueden establecer al mismo tiempo.

Para obtener más requisitos, consulte la sección Comentarios.

Establecer este miembro equivale a establecer el noveno bit del miembro Value de 32 bits (0x00000100).

Se admite a partir de Windows 8.

[in] FlipStereoTemporaryMono

Especifica si el controlador debe usar la imagen izquierda de una asignación estéreo para las partes derecha e izquierda de un marco estéreo. El controlador realiza la misma operación presente que con FlipStereo, salvo que solo debe examinar desde la imagen izquierda para generar ambas imágenes de un fotograma estéreo.

Este miembro solo debe establecerse si el controlador informa de la compatibilidad con esta opción en el modo de presentación actual estableciendo el miembro Type de la estructura de D3DKMDT_VIDPN_SOURCE_MODE en D3DKMDT_RMT_GRAPHICS_STEREO_ADVANCED_SCAN.

Los miembros FlipStereo y FlipStereoTemporaryMono no se pueden establecer al mismo tiempo.

Los miembros FlipStereoTemporaryMono y FlipStereoPreferRight no se pueden establecer al mismo tiempo.

Para obtener más requisitos, consulte la sección Comentarios.

Establecer este miembro equivale a establecer el décimo bit del miembro Value de 32 bits (0x00000200).

Se admite a partir de Windows 8.

[in] FlipStereoPreferRight

Especifica que cuando el controlador clone una asignación principal estéreo a un monitor mono, debe usar la imagen correcta.

Los miembros FlipStereoTemporaryMono y FlipStereoPreferRight no se pueden establecer al mismo tiempo.

Para obtener más requisitos, consulte la sección Comentarios.

Establecer este miembro equivale a establecer el undécimo bit del miembro Value de 32 bits (0x00000400).

Se admite a partir de Windows 8.

[in] BltStereoUseRight

Especifica que cuando el controlador presenta desde una asignación estéreo a una asignación mono, debe usar la imagen correcta. Si no se establece, el controlador debe usar la imagen izquierda.

Establecer este miembro equivale a establecer el duodécimo bit del miembro Value de 32 bits (0x00000800).

Se admite a partir de Windows 8.

[in] FlipWithMultiPlaneOverlay

Especifica si se produce una operación de volteo entre un plano de superposición y la superficie principal. Si se establece este miembro, el controlador debe realizar la operación actual apuntando la salida del examen de vídeo al plano de origen en lugar de copiar desde el plano de origen al destino.

Establecer este miembro equivale a establecer el decimotercer bit del miembro Value de 32 bits (0x00001000).

Se admite a partir de Windows 8.1.

RedirectedFlip

[in] Reserved

Este miembro está reservado y debe establecerse en cero.

Establecer este miembro en cero equivale a establecer los 19 bits restantes (0xFFFFE000) del miembro Value de 32 bits en ceros.

Se admite a partir de Windows 8.

[in] Este miembro está reservado y debe establecerse en cero.

Establecer este miembro en cero equivale a establecer los 24 bits restantes (0xFFFFFF00) del miembro Value de 32 bits en ceros.

[in] Value

Miembro de la unión que DXGK_PRESENTFLAGS contiene que puede contener un valor de 32 bits que identifica el tipo de operación actual que se va a realizar.

Comentarios

Las marcas de campo de bits ColorFill, SrcColorKey y DstColorKey son mutuamente excluyentes.

Si se establece cualquiera de los miembros FlipStereo, FlipStereoTemporaryMono o FlipStereoPreferRight , se aplican estas condiciones:

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Encabezado d3dkmddi.h (incluya D3dkmddi.h)

Consulte también

D3DKMDT_VIDPN_PRESENT_PATH

D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION

D3DKMT_DISPLAYMODE

DXGKARG_PRESENT

DXGKARG_QUERYADAPTERINFO

DXGKARG_SETVIDPNSOURCEADDRESS

DXGK_DRIVERCAPS

DXGK_SETVIDPNSOURCEADDRESS_FLAGS

DxgkDdiPresent

DxgkDdiQueryAdapterInfo