Compartir a través de


Interfaz IDirectDraw7 (ddraw.h)

Las aplicaciones usan los métodos de la interfaz IDirectDraw7 para crear objetos de DirectDraw y trabajar con variables de nivel de sistema. Esta sección es una referencia a los métodos de la interfaz IDirectDraw7 .

Herencia

La interfaz IDirectDraw7 hereda de la interfaz IUnknown . IDirectDraw7 también tiene estos tipos de miembros:

Métodos

La interfaz IDirectDraw7 tiene estos métodos.

 
IDirectDraw7::Compact

Este método no se encuentra implementado actualmente. (IDirectDraw7.Compact)
IDirectDraw7::CreateClipper

Crea un objeto DirectDrawClipper.
IDirectDraw7::CreatePalette

Crea un objeto DirectDrawPalette para este objeto DirectDraw.
IDirectDraw7::CreateSurface

Crea un objeto DirectDrawSurface para este objeto DirectDraw.
IDirectDraw7::D uplicateSurface

Duplica un objeto DirectDrawSurface.
IDirectDraw7::EnumDisplayModes

Enumera todos los modos de visualización que expone el hardware a través del objeto DirectDraw y que son compatibles con una descripción de superficie proporcionada.
IDirectDraw7::EnumSurfaces

Enumera todas las superficies existentes o posibles que cumplen la descripción de la superficie especificada.
IDirectDraw7::EvaluateMode

Se usa después de una llamada a IDirectDraw7::StartModeTest para pasar o producir un error en cada modo que la prueba presenta y recorrer los modos hasta que se complete la prueba.
IDirectDraw7::FlipToGDISurface

Hace que la superficie que escribe el GDI en la superficie principal.
IDirectDraw7::GetAvailableVidMem

Recupera la cantidad total de memoria de visualización disponible y la cantidad de memoria de visualización actualmente libre para un tipo determinado de superficie.
IDirectDraw7::GetCaps

Recupera las funcionalidades del controlador de dispositivo para el hardware y la capa de emulación de hardware (HEL).
IDirectDraw7::GetDeviceIdentifier

Obtiene información sobre el controlador de dispositivo. Este método se puede usar, con precaución, para reconocer instalaciones de hardware específicas para implementar soluciones alternativas para un comportamiento deficiente del controlador o del conjunto de chips.
IDirectDraw7::GetDisplayMode

Recupera el modo de visualización actual.
IDirectDraw7::GetFourCCCodes

Recupera los códigos de cuatro caracteres (FOURCC) que admite el objeto DirectDraw. Este método también puede recuperar el número de códigos admitidos.
IDirectDraw7::GetGDISurface

Recupera el objeto DirectDrawSurface que representa actualmente la memoria expuesta que GDI está tratando como la superficie principal.
IDirectDraw7::GetMonitorFrequency

Recupera la frecuencia del monitor que controla el objeto DirectDraw.
IDirectDraw7::GetScanLine

Recupera la línea de examen que se está dibujando actualmente en el monitor.
IDirectDraw7::GetSurfaceFromDC

Recupera la interfaz IDirectDrawSurface7 para una superficie, en función de su identificador de contexto de dispositivo GDI.
IDirectDraw7::GetVerticalBlankStatus

Recupera el estado del espacio en blanco vertical.
IDirectDraw7::Initialize

Inicializa un objeto DirectDraw creado mediante la función COM CoCreateInstance.
IDirectDraw7::RestoreAllSurfaces

Restaura todas las superficies que se crearon para el objeto DirectDraw, en el orden en que se crearon.
IDirectDraw7::RestoreDisplayMode

Restablece el modo del hardware del dispositivo de visualización para la superficie principal a lo que era antes de llamar al método IDirectDraw7::SetDisplayMode. Se requiere acceso de nivel exclusivo para usar este método.
IDirectDraw7::SetCooperativeLevel

Determina el comportamiento de nivel superior de la aplicación.
IDirectDraw7::SetDisplayMode

Establece el modo del hardware del dispositivo de pantalla.
IDirectDraw7::StartModeTest

Inicia una prueba para actualizar el registro del sistema con información de frecuencia de actualización para la combinación actual del adaptador de pantalla y el monitor.
IDirectDraw7::TestCooperativeLevel

Informa del estado de nivel cooperativo actual del dispositivo DirectDraw para una aplicación con ventanas o de pantalla completa.
IDirectDraw7::WaitForVerticalBlank

Ayuda a la aplicación a sincronizarse con el intervalo en blanco vertical.

Comentarios

Los métodos de la interfaz IDirectDraw7 se pueden organizar en los siguientes grupos:

Grupo Métodos
Asignar memoria Compactar e inicializar
Niveles cooperativos SetCooperativeLevel y TestCooperativeLevel
Creación de objetos CreateClipper, CreatePalette y CreateSurface
Funcionalidades del dispositivo GetCaps
Modos de pantalla EnumDisplayModes, GetDisplayMode, GetMonitorFrequency, RestoreDisplayMode, SetDisplayMode y WaitForVerticalBlank
Estado de visualización GetScanLine y GetVerticalBlankStatus
Varios EvaluateMode, GetAvailableVidMem, GetDeviceIdentifier, GetFourCCCodes y StartModeTest
Administración de Surface DuplicateSurface, EnumSurfaces, FlipToGDISurface, GetGDISurface, GetSurfaceFromDC y RestoreAllSurfaces
 

La interfaz IDirectDraw7 amplía las características de las versiones anteriores de la interfaz ofreciendo métodos que permiten la administración de superficies más flexible que las versiones anteriores. Todos los métodos relacionados con la superficie de la interfaz IDirectDraw7 aceptan parámetros ligeramente diferentes que sus homólogos en la interfaz IDirectDraw2 . Siempre que un método de interfaz IDirectDraw2 pueda aceptar una estructura DDSURFACEDESC y recuperar una interfaz IDirectDrawSurface3 , los métodos de IDirectDraw7 aceptan una estructura DDSURFACEDESC2 y recuperan una interfaz IDirectDrawSurface7 , en su lugar.

IDirectDraw7 presenta un cumplimiento mejorado de las reglas COM que dictan la duración de los objetos secundarios.

Utilice los tipos de datos LPDIRECTDRAW, LPDIRECTDRAW2, LPDIRECTDRAW4 o LPDIRECTDRAW7 para declarar una variable que contenga un puntero a una interfaz IDirectDraw, IDirectDraw2, IDirectDraw4 o IDirectDraw7 . El archivo de encabezado Ddraw.h declara estos tipos de datos con el código siguiente:


typedef struct IDirectDraw     FAR *LPDIRECTDRAW;
typedef struct IDirectDraw2    FAR *LPDIRECTDRAW2;
typedef struct IDirectDraw4    FAR *LPDIRECTDRAW4;
typedef struct IDirectDraw7    FAR *LPDIRECTDRAW7;

Requisitos

   
Plataforma de destino Windows
Encabezado ddraw.h