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 |