Share via


Interface IDirectDrawSurface7 (ddraw.h)

Os aplicativos usam os métodos da interface IDirectDrawSurface7 para criar objetos DirectDrawSurface e trabalhar com variáveis no nível do sistema. Esta seção é uma referência aos métodos dessa interface.

Herança

A interface IDirectDrawSurface7 herda da interface IUnknown . IDirectDrawSurface7 também tem estes tipos de membros:

Métodos

A interface IDirectDrawSurface7 tem esses métodos.

 
IDirectDrawSurface7::AddAttachedSurface

Anexa a superfície de buffer z especificada a essa superfície.
IDirectDrawSurface7::AddOverlayDirtyRect

O método IDirectDrawSurface7::AddOverlayDirtyRect não está implementado no momento.
IDirectDrawSurface7::Blt

Executa uma transferência de bloco de bits (bitblt). Esse método não dá suporte ao buffer z ou à mesclagem alfa durante operações bitblt.
IDirectDrawSurface7::BltBatch

O método IDirectDrawSurface7::BltBatch não está implementado no momento.
IDirectDrawSurface7::BltFast

Executa um bitblt de cópia de origem ou bitblt transparente usando uma chave de cor de origem ou uma chave de cor de destino.
IDirectDrawSurface7::ChangeUniquenessValue

Atualiza manualmente o valor de exclusividade dessa superfície.
IDirectDrawSurface7::D eleteAttachedSurface

Desanexa uma ou mais superfícies anexadas.
IDirectDrawSurface7::EnumAttachedSurfaces

Enumera todas as superfícies anexadas a essa superfície.
IDirectDrawSurface7::EnumOverlayZOrders

Enumera as superfícies de sobreposição no destino especificado. Você pode enumerar as sobreposições na ordem front-to-back ou back-to-front.
IDirectDrawSurface7::Flip

Faz com que a memória da superfície associada ao DDSCAPS_BACKBUFFER superfície se associe à superfície do buffer frontal.
IDirectDrawSurface7::FreePrivateData

Libera os dados privados especificados associados a essa superfície.
IDirectDrawSurface7::GetAttachedSurface

Obtém a superfície anexada que tem os recursos especificados e incrementa a contagem de referência da interface recuperada.
IDirectDrawSurface7::GetBltStatus

Obtém o status sobre uma operação de transferência de bloco de bits (bitblt).
IDirectDrawSurface7::GetCaps

Recupera os recursos dessa superfície. Esses recursos não estão necessariamente relacionados aos recursos do dispositivo de exibição.
IDirectDrawSurface7::GetClipper

Recupera o objeto DirectDrawClipper associado a essa superfície e incrementa a contagem de referência do cortador retornado.
IDirectDrawSurface7::GetColorKey

Recupera o valor da chave de cor para essa superfície.
IDirectDrawSurface7::GetDC

Cria um identificador compatível com GDI de um contexto de dispositivo para essa superfície.
IDirectDrawSurface7::GetDDInterface

Recupera uma interface para o objeto DirectDraw que foi usado para criar essa superfície.
IDirectDrawSurface7::GetFlipStatus

Recupera o status sobre se essa superfície terminou seu processo de inversão.
IDirectDrawSurface7::GetLOD

Recupera o lod (nível máximo de detalhes) atualmente definido para uma superfície mipmap gerenciada. Esse método só tem êxito em texturas gerenciadas.
IDirectDrawSurface7::GetOverlayPosition

Recupera as coordenadas de exibição dessa superfície. Esse método é usado em uma superfície de sobreposição visível e ativa (ou seja, uma superfície que tem o sinalizador DDSCAPS_OVERLAY definido).
IDirectDrawSurface7::GetPalette

Recupera o objeto DirectDrawPalette associado a essa superfície e incrementa a contagem de referência da paleta retornada.
IDirectDrawSurface7::GetPixelFormat

Recupera a cor e o formato de pixel dessa superfície.
IDirectDrawSurface7::GetPriority

Recupera a prioridade de gerenciamento de textura para essa textura. Esse método só tem êxito em texturas gerenciadas.
IDirectDrawSurface7::GetPrivateData

Copia os dados privados associados a essa superfície para um buffer fornecido.
IDirectDrawSurface7::GetSurfaceDesc

Recupera uma descrição dessa superfície em sua condição atual.
IDirectDrawSurface7::GetUniquenessValue

Recupera o valor de exclusividade atual para essa superfície.
IDirectDrawSurface7::Initialize

Inicializa um objeto DirectDrawSurface.
IDirectDrawSurface7::IsLost

Determina se a memória de superfície associada a um objeto DirectDrawSurface foi liberada.
IDirectDrawSurface7::Lock

Obtém um ponteiro para a memória da superfície.
IDirectDrawSurface7::P ageLock

Impede que uma superfície de memória do sistema seja paginada enquanto uma operação de transferência de bits (bitblt) que usa transferências de DMA (acesso direto à memória) de ou para a memória do sistema está em andamento.
IDirectDrawSurface7::P ageUnlock

Desbloqueia uma superfície de memória do sistema, que permite que ela seja paginada.
IDirectDrawSurface7::ReleaseDC

Libera o identificador de um contexto de dispositivo que foi obtido anteriormente usando o método IDirectDrawSurface7::GetDC.
IDirectDrawSurface7::Restore

Restaura uma superfície que foi perdida. Isso ocorre quando a memória de superfície associada ao objeto DirectDrawSurface foi liberada.
IDirectDrawSurface7::SetClipper

Anexa um objeto clipper a ou exclui um dessa superfície.
IDirectDrawSurface7::SetColorKey

Define o valor da chave de cor para o objeto DirectDrawSurface se o hardware der suporte a chaves de cor por superfície.
IDirectDrawSurface7::SetLOD

Define o lod (nível máximo de detalhes) para uma superfície mipmap gerenciada. Esse método só tem êxito em texturas gerenciadas.
IDirectDrawSurface7::SetOverlayPosition

Altera as coordenadas de exibição de uma superfície de sobreposição.
IDirectDrawSurface7::SetPalette

Anexa um objeto de paleta a (ou desanexa um de) uma superfície. A superfície usa essa paleta para todas as operações subsequentes. A alteração da paleta ocorre imediatamente, sem considerar o tempo de atualização.
IDirectDrawSurface7::SetPriority

Atribui a prioridade de gerenciamento de textura para essa textura. Esse método só tem êxito em texturas gerenciadas.
IDirectDrawSurface7::SetPrivateData

Associa dados à superfície que se destina a ser usada pelo aplicativo, não pelo DirectDraw. Os dados são passados por valor e vários conjuntos de dados podem ser associados a uma única superfície.
IDirectDrawSurface7::SetSurfaceDesc

Define as características de uma superfície existente.
IDirectDrawSurface7::Unlock

Notifica o DirectDraw de que as manipulações diretas de superfície estão concluídas.
IDirectDrawSurface7::UpdateOverlay

Reposiciona ou modifica os atributos visuais de uma superfície de sobreposição. Essas superfícies devem ter o sinalizador DDSCAPS_OVERLAY definido.
IDirectDrawSurface7::UpdateOverlayDisplay

O método IDirectDrawSurface7::UpdateOverlayDisplay não está implementado no momento.
IDirectDrawSurface7::UpdateOverlayZOrder

Define a ordem z de uma sobreposição.

Comentários

Os métodos da interface IDirectDrawSurface7 podem ser organizados nos seguintes grupos:

Grupo Métodos
Alocando memória Inicializar, IsLost e Restaurar
Anexando superfícies AddAttachedSurface, DeleteAttachedSurface, EnumAttachedSurfaces e GetAttachedSurface
BitBltting Blt, BltBatch, BltFast e GetBltStatus
Tecla de cor GetColorKey e SetColorKey
Contextos de dispositivo GetDC e ReleaseDC
Lanç Flip e GetFlipStatus
Superfícies de bloqueio Bloquear, PageLock, PageUnlock e Desbloquear
Diversos GetDDInterface
Sobreposições AddOverlayDirtyRect, EnumOverlayZOrders, GetOverlayPosition, SetOverlayPosition, UpdateOverlay, UpdateOverlayDisplay e UpdateOverlayZOrder
Dados de superfície privada FreePrivateData, GetPrivateData e SetPrivateData
Funcionalidades do Surface Getcaps
Cortador de superfície GetClipper e SetClipper
Características do Surface ChangeUniquenessValue, GetPixelFormat, GetSurfaceDesc, GetUniquenessValue e SetSurfaceDesc
Paletas do Surface GetPalette e SetPalette
Texturas GetLOD, GetPriority, SetLOD e SetPriority
 

A interface IDirectDrawSurface7 estende os recursos das versões anteriores da interface oferecendo métodos que oferecem melhor gerenciamento de superfície e facilidade de uso. Muitos métodos nessa interface aceitam parâmetros ligeiramente diferentes de seus equivalentes em versões anteriores da interface. Onde quer que um método de interface IDirectDrawSurface3 possa aceitar uma estrutura DDSURFACEDESC ou uma interface IDirectDrawSurface3 , os métodos em IDirectDrawSurface7 aceitam uma estrutura DDSURFACEDESC2 ou uma interface IDirectDrawSurface7 .

Use o tipo de dados LPDIRECTDRAWSURFACE, LPDIRECTDRAWSURFACE2, LPDIRECTDRAWSURFACE3, LPDIRECTDRAWSURFACE4 ou LPDIRECTDRAWSURFACE7 para declarar uma variável que aponta para várias interfaces de objeto DirectDrawSurface. O arquivo de cabeçalho Ddraw.h declara esses tipos de dados com o seguinte código:


typedef struct IDirectDrawSurface     FAR *LPDIRECTDRAWSURFACE;
typedef struct IDirectDrawSurface2    FAR *LPDIRECTDRAWSURFACE2;
typedef struct IDirectDrawSurface3    FAR *LPDIRECTDRAWSURFACE3;
typedef struct IDirectDrawSurface4    FAR *LPDIRECTDRAWSURFACE4;
typedef struct IDirectDrawSurface7    FAR *LPDIRECTDRAWSURFACE7;

Requisitos

   
Plataforma de Destino Windows
Cabeçalho ddraw.h