estrutura DD_BLTDATA (ddrawint.h)
A estrutura DD_BLTDATA contém as informações relevantes para o driver para fazer transferências de bloco de bits.
Sintaxe
typedef struct _DD_BLTDATA {
PDD_DIRECTDRAW_GLOBAL lpDD;
PDD_SURFACE_LOCAL lpDDDestSurface;
RECTL rDest;
PDD_SURFACE_LOCAL lpDDSrcSurface;
RECTL rSrc;
DWORD dwFlags;
DWORD dwROPFlags;
DDBLTFX bltFX;
HRESULT ddRVal;
VOID *Blt;
BOOL IsClipped;
RECTL rOrigDest;
RECTL rOrigSrc;
DWORD dwRectCnt;
LPRECT prDestRects;
DWORD dwAFlags;
DDARGB ddargbScaleFactors;
} *PDD_BLTDATA, DD_BLTDATA;
Membros
lpDD
Aponta para uma estrutura DD_DIRECTDRAW_GLOBAL que descreve o dispositivo do driver.
lpDDDestSurface
Aponta para a estrutura DD_SURFACE_LOCAL que descreve a superfície na qual blit.
rDest
lpDDSrcSurface
Aponta para uma estrutura DD_SURFACE_LOCAL que descreve a superfície de origem.
rSrc
dwFlags
Indica um conjunto de sinalizadores que especificam o tipo de operação blit a ser executada e quais membros da estrutura associados têm dados válidos que o driver deve usar. Esse membro é um OR bit a bit de qualquer um dos seguintes sinalizadores:
Sinalizador | Significado |
---|---|
DDBLT_ASYNC | Execute esse blit de forma assíncrona por meio do FIFO na ordem recebida. Se não houver espaço no FIFO de hardware, o driver deverá falhar na chamada e retornar imediatamente. |
DDBLT_COLORFILL | Use o membro dwFillColor na estrutura DDBLTFX (definido na documentação do SDK do Microsoft DirectDraw) como a cor RGB com a qual preencher o retângulo de destino na superfície de destino. |
DDBLT_DDFX | Use o membro dwDDFX na estrutura DDBLTFX (definido na documentação do SDK do DirectDraw) para determinar os efeitos a serem usados para o blit. |
DDBLT_DDROPS | Esse sinalizador é reservado para uso do sistema e deve ser ignorado pelo driver. O driver também deve ignorar o membro dwDDROPS da estrutura DDBLTFX. |
DDBLT_EXTENDED_FLAGS |
|
DDBLT_EXTENDED_LINEAR_CONTENT |
|
DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR |
|
DDBLT_KEYDESTOVERRIDE | Use o membro dckDestColorkey na estrutura DDBLTFX (definida na documentação do SDK do DirectDraw) como a chave de cor para a superfície de destino. Se uma substituição não estiver sendo definida, dckDestColorkey não conterá a chave de cor. O driver deve testar a própria superfície. |
DDBLT_KEYSRCOVERRIDE | Use o membro dckSrcColorkey na estrutura DDBLTFX (definida na documentação do SDK do DirectDraw) como a chave de cor da superfície de origem. Se uma substituição não estiver sendo definida, dckDestColorkey não conterá a chave de cor. O driver deve testar a própria superfície. |
DDBLT_LAST_PRESENTATION |
|
DDBLT_PRESENTATION |
|
DDBLT_ROP | Use o membro dwROP na estrutura DDBLTFX (definida na documentação do SDK do DirectDraw) para a operação de raster para esse blit. Atualmente, o único ROP passado para o driver é SRCCOPY. Esse ROP é o mesmo definido na API do Win32. Consulte a documentação do SDK do Microsoft Windows para obter detalhes. |
DDBLT_ROTATIONANGLE | Esse sinalizador não tem suporte no Windows 2000 e posterior e deve ser ignorado pelo driver. |
DDBLT_WAIT | Não retorne imediatamente com a mensagem DDERR_WASSTILLDRAWING se o blitter estiver ocupado – aguarde até que o blit possa ser configurado ou outro erro ocorra. |
dwROPFlags
Não utilizado no Windows 2000 e posterior e deve ser ignorado pelo driver.
bltFX
#########
#######
ddRVal
Especifica o local no qual o driver grava o valor retornado do retorno de chamada DdBlt . Um código de retorno de DD_OK indica êxito. Para obter mais informações, consulte Valores retornados para DirectDraw.
Blt
Usado pela API DirectDraw e não deve ser preenchido pelo driver.
IsClipped
Indica se esse é um blit recortado. No Windows 2000 e posterior, esse membro é sempre FALSE, indicando que o blit está descompactado.
rOrigDest
Não utilizado para Windows 2000 e posterior. Especifica uma estrutura RECTL que define o retângulo de destino não mapeado. Esse membro só será válido se IsClipped for TRUE.
rOrigSrc
Não utilizado para Windows 2000 e posterior. Especifica uma estrutura RECTL que define o retângulo de origem não mapeado. Esse membro só será válido se IsClipped for TRUE.
dwRectCnt
Não utilizado para Windows 2000 e posterior.Especifica o número de retângulos de destino aos quais prDestRects aponta. Esse membro só será válido se IsClipped for TRUE.
prDestRects
Não utilizado para Windows 2000 e posterior. Aponta para uma matriz de estruturas RECTL que descrevem retângulos de destino. Esse membro só será válido se IsClipped for TRUE.
dwAFlags
Não utilizado e deve ser ignorado pelo driver.
ddargbScaleFactors
Fatores de dimensionamento ARGB (AlphaBlt)
Comentários
Para obter mais informações sobre os sinalizadores DDBLT_PRESENTATION e DDBLT_LAST_PRESENTATION, consulte Apresentação.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ddrawint.h (inclua Winddi.h) |