Compartir a través de


estructura DXGK_GDIARG_BITBLT (d3dkmddi.h)

La estructura DXGK_GDIARG_BITBLT describe las características de un transferencia de bloques de bits (bitblt) acelerado por hardware GDI sin estirar.

Sintaxis

typedef struct _DXGK_GDIARG_BITBLT {
  [in] RECT SrcRect;
  [in] RECT DstRect;
       UINT SrcAllocationIndex;
       UINT DstAllocationIndex;
       UINT NumSubRects;
       RECT *pSubRects;
       WORD Rop;
       WORD Rop3;
       UINT SrcPitch;
       UINT DstPitch;
} DXGK_GDIARG_BITBLT;

Miembros

[in] SrcRect

EstructuraRECT que define el área rectangular que se va a copiar. Este rectángulo se especifica en el sistema de coordenadas de la superficie de origen y se define por dos puntos: superior izquierdo e inferior derecho. Los dos puntos que definen el rectángulo siempre están bien ordenados.

El rectángulo de origen puede superar los límites de la superficie de origen.

Este rectángulo se asigna al rectángulo de destino definido por DstRect. SrcRect se usa para transformar subctángulos del espacio de origen al espacio de destino.

Para obtener más información, vea la sección Comentarios.

[in] DstRect

Estructura RECT que define el área rectangular que se va a modificar. Este rectángulo se especifica en el sistema de coordenadas de la superficie de destino y se define mediante dos puntos: superior izquierdo e inferior derecho. El rectángulo es exclusivo de menor derecha; es decir, sus bordes inferiores y derecho no forman parte de la transferencia de bloques de bits. Los dos puntos que definen el rectángulo siempre están bien ordenados.

El rectángulo de destino definido por DstRect puede superar los límites de la superficie de destino, pero los subctángulos no. Además, se garantiza que todos los subctángulos caben dentro de la superficie de destino. Los subctángulos se pueden restringir aún más mediante un rectángulo delimitador que sea menor que el rectángulo de destino.

Para obtener más información, vea la sección Comentarios.

SrcAllocationIndex

[in] Índice del elemento de la lista de asignación que especifica la asignación a la que hace referencia el SrcRect rectángulo de origen.

DstAllocationIndex

[in] Índice del elemento de la lista de asignación que especifica la asignación a la que hace referencia el DstRect rectángulo de destino.

NumSubRects

[in] Número de subctángulos en el espacio de superficie de destino que está limitado por el DstRect rectángulo de destino.

pSubRects

[in] Puntero a los subctángulos del espacio de superficie de destino que está limitado por el DstRect rectángulo de destino.

Rop

[in] Valor de 8 bits que especifica una operación de ráster GDI (ROP) definida por los valores constantes de la enumeración DXGK_GDIROP_BITBLT.

Rop3

[in] Valor de 8 bits que especifica una operación de trama GDI ternaria (ROP3) que combina un pincel, un mapa de bits de origen y un mapa de bits de destino en una de las 256 combinaciones posibles. Este tipo de operación de trama solo se procesará si el controlador ha establecido el miembro SupportAllBltRops en la estructura DXGK_PRESENTATIONCAPS.

SrcPitch

[in] Tono de la superficie de origen, en bytes. Para obtener más información sobre el uso del tono, vea la sección Comentarios.

DstPitch

[in] Tono de la superficie de destino, en bytes. Para obtener más información sobre el uso del tono, vea la sección Comentarios.

Observaciones

Los valores de SrcPitch y DstPitch deben usarse para determinar las ubicaciones de bytes de la SrcRect y DstRect rectángulos, respectivamente, para las siguientes asignaciones de tipo D3DKMDT_GDISURFACETYPE:

D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE

D3DKMDT_GDISURFACE_EXISTINGSYSMEM

El tono debe omitirse para otros tipos de asignación.

Se garantiza que el tono se alinee en la transferencia de bloques de bits según el AlignmentShift miembro de la estructura de DXGK_PRESENTATIONCAPS (es decir, DXGK_DRIVERCAPS. PresentationCaps.AlignmentShift).

Donde un rectángulo se define mediante dos píxeles en coordenadas (izquierda, superior) y (derecha, inferior), la dirección del primer píxel es:

Allocation.BaseAddress + (top * Pitch) + (left * 4)

La dirección del último píxel del rectángulo es:

Allocation.BaseAddress + ((bottom - 1) * Pitch) + ((right - 1) * 4)

Cuando los subctángulos se transforman en el espacio de superficie de origen, se garantiza que el resultado esté dentro de la superficie de origen. Esta transformación se define mediante la fórmula siguiente:

<SrcSubRect.left = SubRect.left - DstRect.left + SrcRect.left;
SrcSubRect.right = SubRect.right - DstRect.left + SrcRect.left;
SrcSubRect.top = SubRect.top - DstRect.top + SrcRect.top;
SrcSubRect.bottom = SubRect.bottom - DstRect.top + SrcRect.top;

Requisitos

Requisito Valor
cliente mínimo admitido Windows 7
encabezado de d3dkmddi.h (incluya D3dkmddi.h)

Consulte también

D3DKMDT_GDISURFACETYPE

DXGK_DRIVERCAPS

DXGK_GDIROP_BITBLT

DXGK_PRESENTATIONCAPS

RECT