Compartir a través de


Estructura DDSURFACEDATA (dxmini.h)

DirectDraw usa la estructura DDSURFACEDATA para representar una superficie para el controlador de miniporte en modo kernel.

Sintaxis

typedef struct _DDSURFACEDATA {
  DWORD     ddsCaps;
  DWORD     dwSurfaceOffset;
  ULONG_PTR fpLockPtr;
  DWORD     dwWidth;
  DWORD     dwHeight;
  LONG      lPitch;
  DWORD     dwOverlayFlags;
  DWORD     dwOverlayOffset;
  DWORD     dwOverlaySrcWidth;
  DWORD     dwOverlaySrcHeight;
  DWORD     dwOverlayDestWidth;
  DWORD     dwOverlayDestHeight;
  DWORD     dwVideoPortId;
  DWORD     dwFormatFlags;
  DWORD     dwFormatFourCC;
  DWORD     dwFormatBitCount;
  DWORD     dwRBitMask;
  DWORD     dwGBitMask;
  DWORD     dwBBitMask;
  ULONG     dwDriverReserved1;
  ULONG     dwDriverReserved2;
  ULONG     dwDriverReserved3;
  ULONG     dwDriverReserved4;
} DDSURFACEDATA, *LPDDSURFACEDATA;

Miembros

ddsCaps

Apunta a una estructura DDSCAPS que contiene las funcionalidades de creación usadas para describir la superficie.

dwSurfaceOffset

Especifica el desplazamiento de bytes desde el principio del búfer de fotogramas hasta el inicio de la superficie. Este campo solo lo usa el controlador de minipuerto.

fpLockPtr

Apunta al inicio de la superficie.

dwWidth

Especifica el ancho de la superficie, en píxeles.

dwHeight

Especifica el alto de la superficie, en píxeles.

lPitch

Especifica el tono de la superficie, en bytes.

dwOverlayFlags

Indica un conjunto de marcas que especifican las marcas del modo de usuario actuales DDOVER_Xxx establecidas por DdUpdateOverlay. Este miembro es un OR bit a bit de cualquiera de los siguientes valores:

Marca Significado
DDOVER_ADDDIRTYRECT Agregue un rectángulo sucio a una superficie superpuesta emulada.
DDOVER_ALPHADEST Use la información alfa en formato de píxel o la superficie del canal alfa adjuntada a la superficie de destino como canal alfa para esta superposición.
DDOVER_ALPHADESTCONSTOVERRIDE Use el miembro dwAlphaDestConst de la estructura DDOVERLAYFX como canal alfa de destino para esta superposición. La estructura DDOVERLAYFX se define en ddraw.h.
DDOVER_ALPHADESTNEG La superficie de destino se vuelve más transparente a medida que aumenta el valor alfa (0 es opaco).
DDOVER_ALPHADESTSURFACEOVERRIDE Use el miembro lpDDSAlphaDest de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como destino del canal alfa para esta superposición.
DDOVER_ALPHAEDGEBLEND Use el miembro dwAlphaEdgeBlend de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como canal alfa para los bordes de la imagen que bordean los colores de la clave de color.
DDOVER_ALPHASRC Use la información alfa en formato de píxel o la superficie del canal alfa adjuntada a la superficie de origen como canal alfa de origen para esta superposición.
DDOVER_ALPHASRCCONSTOVERRIDE Use el miembro dwAlphaSrcConst de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como canal alfa de origen para esta superposición.
DDOVER_ALPHASRCNEG La superficie de origen se vuelve más transparente a medida que aumenta el valor alfa (0 es opaco).
DDOVER_ALPHASRCSURFACEOVERRIDE Use el miembro lpDDSAlphaSrc de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como origen del canal alfa para esta superposición.
DDOVER_AUTOFLIP Voltear automáticamente a la siguiente superficie de la cadena de volteo cada vez que se produce un puerto de vídeo de hardware VSYNC.
DDOVER_BOB Muestra cada campo de la secuencia de vídeo entrelazada individualmente sin causar artefactos.
DDOVER_BOBHARDWARE Bob se realiza usando hardware en lugar de software o emulando.
DDOVER_DDFX Use las marcas fx superpuestas para definir efectos de superposición especiales.
DDOVER_HIDE Desactive esta superposición.
DDOVER_INTERLEAVED La memoria de la superficie se compone de campos intercalados.
DDOVER_KEYDEST Use la clave de color asociada a la superficie de destino.
DDOVER_KEYDESTOVERRIDE Use el miembro dckDestColorkey de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como clave de color para la superficie de destino.
DDOVER_KEYSRC Use la clave de color asociada a la superficie de origen.
DDOVER_KEYSRCOVERRIDE Use el miembro dckSrcColorkey de la estructura DDOVERLAYFX (definida en la documentación del SDK de DirectDraw) como clave de color para la superficie de origen.
DDOVER_OVERRIDEBOBWEAVE Otras interfaces no deben invalidar las decisiones de Bob y de guardarlas. Si se establece esta marca, DirectDraw no permite que un controlador en modo kernel use la funcionalidad de transporte de vídeo en modo kernel para cambiar el hardware entre bob y el modo de guardado.
DDOVER_REFRESHALL Vuelva a dibujar toda la superficie en una superficie superpuesta emulada.
DDOVER_REFRESHDIRTYRECTS Vuelva a dibujar todos los rectángulos sucios en una superficie superpuesta emulada.
DDOVER_SHOW Active esta superposición.

dwOverlayOffset

Especifica el desplazamiento de bytes desde el principio del búfer de fotogramas hasta el inicio de la superposición. Este campo solo lo usa el controlador de minipuerto.

dwOverlaySrcWidth

Especifica el ancho del origen de superposición, en píxeles. Este campo solo lo usa el controlador de minipuerto.

dwOverlaySrcHeight

Especifica el alto del origen de superposición, en píxeles. Este campo solo lo usa el controlador de minipuerto.

dwOverlayDestWidth

Especifica el ancho de destino de superposición, en píxeles. Este campo solo lo usa el controlador de minipuerto.

dwOverlayDestHeight

Especifica el alto de destino de superposición, en píxeles. Este campo solo lo usa el controlador de minipuerto.

dwVideoPortId

Si esta superficie se alimenta mediante un objeto de extensiones de puerto de vídeo (VPE), este campo indica el identificador del objeto VPE, un entero en el intervalo (0 - (número máximo de puertos de vídeo de hardware -1 )); de lo contrario, este campo es -1.

dwFormatFlags

Especifica un conjunto de marcas de control de formato de píxel. Este miembro es un OR bit a bit de cualquiera de los siguientes valores:

Marca Significado
DDPF_ALPHA El formato de píxel describe una superficie de solo alfa.
DDPF_ALPHAPIXELS La superficie tiene información del canal alfa en formato de píxel.
DDPF_ALPHAPREMULT Los componentes de color del píxel se multiplican previamente por el valor alfa del píxel. Si se establece esta marca, también se debe establecer la marca DDPF_ALPHAPIXELS. Si no se establece esta marca, pero se establece la marca de DDPF_ALPHAPIXELS, los componentes de color del formato de píxel no se multiplican previamente por alfa. En este caso, los componentes de color deben multiplicarse por el valor alfa en el momento en que se realiza una operación de combinación alfa.
DDPF_BUMPDUDV Los datos dUdV del mapa de aumentos en el formato de píxeles son válidos.
DDPF_BUMPLUMINANCE Los datos de luminancia en formato de píxeles son válidos. Esta marca se utiliza al colgar la luminancia de las superficies de mapa de rectángulos. A continuación, la máscara de bits para la parte de la luminancia del píxel se indica mediante el miembro dwBumpLuminanceBitCount de la estructura DDPIXELFORMAT .
DDPF_COMPRESSED La superficie aceptará datos de píxeles en el formato especificado y lo comprimirá durante la operación de escritura.
DDPF_FOURCC El código FOURCC es válido.
DDPF_LUMINANCE Los datos de luminancia en formato de píxeles son válidos. Esta marca se utiliza solo para la luminancia o luminancia más superficies alfa; A continuación, la profundidad de bits se indica mediante el miembro dwLuminanceBitCount de la estructura DDPIXELFORMAT .
DDPF_PALETTEINDEXED1 La superficie tiene un color de 1 bits indexado.
DDPF_PALETTEINDEXED2 La superficie tiene un color de 2 bits indizado.
DDPF_PALETTEINDEXED4 La superficie tiene un color de 4 bits indizado.
DDPF_PALETTEINDEXED8 La superficie tiene un color de 8 bits indizado.
DDPF_PALETTEINDEXEDTO8 La superficie tiene un color de 1, 2 o 4 bits indexado en una paleta de 8 bits.
DDPF_RGB Los datos RGB de la estructura de formato de píxeles son válidos.
DDPF_RGBTOYUV La superficie aceptará datos RGB y los traducirá durante la operación de escritura en datos YUV. El formato de los datos que se van a escribir se incluirá en la estructura de formato de píxeles. Se establecerá la marca DDPF_RGB.
DDPF_STENCILBUFFER La superficie contiene información de galería de símbolos junto con la información de Z.
DDPF_YUV Los datos de YUV en la estructura de formato de píxeles son válidos.
DDPF_ZBUFFER El formato de píxel describe una superficie de solo búfer z.
DDPF_ZPIXELS La superficie está en formato RGBZ.

dwFormatFourCC

Especifica el código FOURCC .

dwFormatBitCount

Especifica el número de bits por píxel (4, 8, 16, 24 o 32).

dwRBitMask

Especifica la máscara de bits roja.

dwGBitMask

Especifica la máscara de bits verde.

dwBBitMask

Especifica la máscara de bits azul.

dwDriverReserved1

Reservado para HAL/Miniport

dwDriverReserved2

Reservado para HAL/Miniport

dwDriverReserved3

Reservado para HAL/Miniport

dwDriverReserved4

Están reservados para su uso por el controlador de minipuerto.

Requisitos

   
Encabezado dxmini.h (incluir Dxmini.h)

Consulte también

DDPIXELFORMAT

DDSCAPS

DdUpdateOverlay