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) |