Estrutura DDSURFACEDATA (dxmini.h)

A estrutura DDSURFACEDATA é usada pelo DirectDraw para representar uma superfície para o driver de miniporto no modo kernel.

Sintaxe

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;

Membros

ddsCaps

Aponta para uma estrutura DDSCAPS que contém os recursos de criação usados para descrever a superfície.

dwSurfaceOffset

Especifica o deslocamento de bytes do início do buffer de quadros para o início da superfície. Esse campo é usado apenas pelo driver de miniporto.

fpLockPtr

Aponta para o início da superfície.

dwWidth

Especifica a largura da superfície, em pixels.

dwHeight

Especifica a altura da superfície, em pixels.

lPitch

Especifica o tom de superfície, em bytes.

dwOverlayFlags

Indica um conjunto de sinalizadores que especificam o modo de usuário atual DDOVER_ sinalizadoresXxx definidos por DdUpdateOverlay. Esse membro é um OR bit a bit de qualquer um dos seguintes valores:

Sinalizador Significado
DDOVER_ADDDIRTYRECT Adicione um retângulo sujo a uma superfície sobreposta emulada.
DDOVER_ALPHADEST Use as informações alfa no formato de pixel ou a superfície do canal alfa anexada à superfície de destino como o canal alfa para essa sobreposição.
DDOVER_ALPHADESTCONSTOVERRIDE Use o membro dwAlphaDestConst da estrutura DDOVERLAYFX como o canal alfa de destino para essa sobreposição. A estrutura DDOVERLAYFX é definida em ddraw.h.
DDOVER_ALPHADESTNEG A superfície de destino torna-se mais transparente à medida que o valor alfa aumenta (0 é opaco).
DDOVER_ALPHADESTSURFACEOVERRIDE Use o membro lpDDSAlphaDest da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como o destino do canal alfa para essa sobreposição.
DDOVER_ALPHAEDGEBLEND Use o membro dwAlphaEdgeBlend da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como o canal alfa para as bordas da imagem que fazem a borda das cores da chave de cor.
DDOVER_ALPHASRC Use as informações alfa no formato de pixel ou a superfície do canal alfa anexada à superfície de origem como o canal alfa de origem para essa sobreposição.
DDOVER_ALPHASRCCONSTOVERRIDE Use o membro dwAlphaSrcConst da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como o canal alfa de origem para essa sobreposição.
DDOVER_ALPHASRCNEG A superfície de origem torna-se mais transparente à medida que o valor alfa aumenta (0 é opaco).
DDOVER_ALPHASRCSURFACEOVERRIDE Use o membro lpDDSAlphaSrc da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como a origem do canal alfa para essa sobreposição.
DDOVER_AUTOFLIP Inverte automaticamente para a próxima superfície na cadeia de inversão sempre que ocorrer uma porta de vídeo de hardware VSYNC.
DDOVER_BOB Exiba cada campo do fluxo de vídeo entrelaçado individualmente sem causar artefatos.
DDOVER_BOBHARDWARE Bob é executado usando hardware em vez de software ou sendo emulado.
DDOVER_DDFX Use os sinalizadores FX de sobreposição para definir efeitos especiais de sobreposição.
DDOVER_HIDE Desative essa sobreposição.
DDOVER_INTERLEAVED A memória da superfície é composta de campos intercalados.
DDOVER_KEYDEST Use a chave de cor associada à superfície de destino.
DDOVER_KEYDESTOVERRIDE Use o membro dckDestColorkey da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como a chave de cor da superfície de destino.
DDOVER_KEYSRC Use a chave de cor associada à superfície de origem.
DDOVER_KEYSRCOVERRIDE Use o membro dckSrcColorkey da estrutura DDOVERLAYFX (definido na documentação do SDK do DirectDraw) como a chave de cor da superfície de origem.
DDOVER_OVERRIDEBOBWEAVE As decisões bob e weave não devem ser substituídas por outras interfaces. Se esse sinalizador estiver definido, o DirectDraw não permitirá que um driver no modo kernel use a funcionalidade de transporte de vídeo no modo kernel para alternar o hardware entre o modo bob e weave.
DDOVER_REFRESHALL Redesenhe toda a superfície em uma superfície sobreposta emulada.
DDOVER_REFRESHDIRTYRECTS Redesenhe todos os retângulos sujo em uma superfície sobreposta emulada.
DDOVER_SHOW Ative essa sobreposição.

dwOverlayOffset

Especifica o deslocamento de bytes do início do buffer de quadros para o início da sobreposição. Esse campo é usado apenas pelo driver de miniporto.

dwOverlaySrcWidth

Especifica a largura da origem da sobreposição, em pixels. Esse campo é usado apenas pelo driver de miniporto.

dwOverlaySrcHeight

Especifica a altura da origem da sobreposição, em pixels. Esse campo é usado apenas pelo driver de miniporto.

dwOverlayDestWidth

Especifica a largura de destino da sobreposição, em pixels. Esse campo é usado apenas pelo driver de miniporto.

dwOverlayDestHeight

Especifica a altura de destino da sobreposição, em pixels. Esse campo é usado apenas pelo driver de miniporto.

dwVideoPortId

Se essa superfície estiver sendo alimentada por um objeto VPE (extensões de porta de vídeo ), esse campo indicará a ID do objeto VPE, um inteiro no intervalo (0 - (número máximo de portas de vídeo de hardware -1 )); caso contrário, esse campo será -1.

dwFormatFlags

Especifica um conjunto de sinalizadores de controle de formato de pixel. Esse membro é um OR bit a bit de qualquer um dos seguintes valores:

Sinalizador Significado
DDPF_ALPHA O formato de pixel descreve uma superfície somente alfa.
DDPF_ALPHAPIXELS A superfície tem informações de canal alfa no formato de pixel.
DDPF_ALPHAPREMULT Os componentes de cor no pixel são pré-multiplicados pelo valor alfa no pixel. Se esse sinalizador estiver definido, o sinalizador DDPF_ALPHAPIXELS também deverá ser definido. Se esse sinalizador não estiver definido, mas o sinalizador DDPF_ALPHAPIXELS estiver definido, os componentes de cor no formato de pixel não serão pré-multiplicados por alfa. Nesse caso, os componentes de cor devem ser multiplicados pelo valor alfa no momento em que uma operação de mistura alfa é executada.
DDPF_BUMPDUDV Os dados dUdV do mapa de colisão no formato de pixel são válidos.
DDPF_BUMPLUMINANCE Os dados de luminância no formato de pixel são válidos. Esse sinalizador é usado ao pendurar a luminância em superfícies de bumpmap. A máscara de bits para a parte de luminância do pixel é indicada pelo membro dwBumpLuminanceBitCount da estrutura DDPIXELFORMAT .
DDPF_COMPRESSED A superfície aceitará dados de pixel no formato especificado e os compactará durante a operação de gravação.
DDPF_FOURCC O código FOURCC é válido.
DDPF_LUMINANCE Os dados de luminância no formato de pixel são válidos. Esse sinalizador é usado apenas para luminância ou luminância mais superfícies alfa; a profundidade do bit é indicada pelo membro dwLuminanceBitCount da estrutura DDPIXELFORMAT .
DDPF_PALETTEINDEXED1 A superfície é indexada por cor de 1 bit.
DDPF_PALETTEINDEXED2 A superfície é indexada por cor de 2 bits.
DDPF_PALETTEINDEXED4 A superfície é indexada por cor de 4 bits.
DDPF_PALETTEINDEXED8 A superfície é indexada por cores de 8 bits.
DDPF_PALETTEINDEXEDTO8 A superfície é uma cor de 1, 2 ou 4 bits indexada a uma paleta de 8 bits.
DDPF_RGB Os dados RGB na estrutura de formato de pixel são válidos.
DDPF_RGBTOYUV A superfície aceitará dados RGB e os traduzirá durante a operação de gravação para dados YUV. O formato dos dados a serem gravados estará contido na estrutura de formato de pixel. O sinalizador DDPF_RGB será definido.
DDPF_STENCILBUFFER A superfície contém informações de estêncil junto com informações de Z.
DDPF_YUV Os dados YUV na estrutura de formato de pixel são válidos.
DDPF_ZBUFFER O formato de pixel descreve uma superfície somente de buffer z.
DDPF_ZPIXELS A superfície está no formato RGBZ.

dwFormatFourCC

Especifica o código FOURCC .

dwFormatBitCount

Especifica o número de bits por pixel (4, 8, 16, 24 ou 32).

dwRBitMask

Especifica a máscara de bits vermelha.

dwGBitMask

Especifica a máscara de bits verde.

dwBBitMask

Especifica a máscara de bits azul.

dwDriverReserved1

Reservado para o HAL/Miniport

dwDriverReserved2

Reservado para o HAL/Miniport

dwDriverReserved3

Reservado para o HAL/Miniport

dwDriverReserved4

São reservados para uso pelo driver de miniporta.

Requisitos

   
Cabeçalho dxmini.h (inclua Dxmini.h)

Confira também

DDPIXELFORMAT

DDSCAPS

DdUpdateOverlay