Partager via


Interface IDirectDraw7 (ddraw.h)

Les applications utilisent les méthodes de l’interface IDirectDraw7 pour créer des objets DirectDraw et utiliser des variables au niveau du système. Cette section est une référence aux méthodes de l’interface IDirectDraw7 .

Héritage

L’interface IDirectDraw7 hérite de l’interface IUnknown. IDirectDraw7 a également les types de membres suivants :

Méthodes

L’interface IDirectDraw7 possède ces méthodes.

 
IDirectDraw7::Compact

Cette méthode n'est pas implémentée à l'heure actuelle. (IDirectDraw7.Compact)
IDirectDraw7::CreateClipper

Crée un objet DirectDrawClipper.
IDirectDraw7::CreatePalette

Crée un objet DirectDrawPalette pour cet objet DirectDraw.
IDirectDraw7::CreateSurface

Crée un objet DirectDrawSurface pour cet objet DirectDraw.
IDirectDraw7::D uplicateSurface

Dupliquer un objet DirectDrawSurface.
IDirectDraw7::EnumDisplayModes

Énumère tous les modes d’affichage que le matériel expose via l’objet DirectDraw et qui sont compatibles avec une description de surface fournie.
IDirectDraw7::EnumSurfaces

Énumère toutes les surfaces existantes ou possibles qui répondent à la description de surface spécifiée.
IDirectDraw7::EvaluateMode

Utilisé après un appel à IDirectDraw7::StartModeTest pour réussir ou échouer chaque mode présenté par le test et pour parcourir les modes jusqu’à ce que le test soit terminé.
IDirectDraw7::FlipToGDISurface

Crée la surface que le GDI écrit dans la surface primaire.
IDirectDraw7::GetAvailableVidMem

Récupère la quantité totale de mémoire d’affichage disponible et la quantité de mémoire d’affichage actuellement libre pour un type de surface donné.
IDirectDraw7::GetCaps

Récupère les fonctionnalités du pilote de périphérique pour le matériel et la couche d’émulation matérielle (HEL).
IDirectDraw7::GetDeviceIdentifier

Obtient des informations sur le pilote de périphérique. Cette méthode peut être utilisée, avec précaution, pour reconnaître des installations matérielles spécifiques afin d’implémenter des solutions de contournement pour un comportement médiocre des pilotes ou des chipsets.
IDirectDraw7::GetDisplayMode

Récupère le mode d’affichage actuel.
IDirectDraw7::GetFourCCCodes

Récupère les codes de quatre caractères (FOURCC) pris en charge par l’objet DirectDraw. Cette méthode peut également récupérer le nombre de codes pris en charge.
IDirectDraw7::GetGDISurface

Récupère l’objet DirectDrawSurface qui représente actuellement la mémoire de surface que GDI traite comme surface principale.
IDirectDraw7::GetMonitorFrequency

Récupère la fréquence du moniteur que l’objet DirectDraw contrôle.
IDirectDraw7::GetScanLine

Récupère la ligne d’analyse en cours d’dessin sur le moniteur.
IDirectDraw7::GetSurfaceFromDC

Récupère l’interface IDirectDrawSurface7 pour une surface, en fonction de son handle de contexte d’appareil GDI.
IDirectDraw7::GetVerticalBlankStatus

Récupère l’état du vide vertical.
IDirectDraw7::Initialize

Initialise un objet DirectDraw créé à l’aide de la fonction COM CoCreateInstance.
IDirectDraw7::RestoreAllSurfaces

Restaure toutes les surfaces qui ont été créées pour l’objet DirectDraw, dans l’ordre dans lequel elles ont été créées.
IDirectDraw7::RestoreDisplayMode

Réinitialise le mode du matériel de l’appareil d’affichage pour la surface primaire à ce qu’il était avant l’appel de la méthode IDirectDraw7::SetDisplayMode. Un accès de niveau exclusif est requis pour utiliser cette méthode.
IDirectDraw7::SetCooperativeLevel

Détermine le comportement de niveau supérieur de l’application.
IDirectDraw7::SetDisplayMode

Définit le mode du matériel de périphérique d’affichage.
IDirectDraw7::StartModeTest

Lance un test pour mettre à jour le registre système avec des informations sur la fréquence d’actualisation pour la combinaison actuelle de l’adaptateur d’affichage et du moniteur.
IDirectDraw7::TestCooperativeLevel

Indique l’état de niveau coopératif actuel de l’appareil DirectDraw pour une application fenêtré ou plein écran.
IDirectDraw7::WaitForVerticalBlank

Aide l’application à se synchroniser avec l’intervalle vide vertical.

Notes

Les méthodes de l’interface IDirectDraw7 peuvent être organisées dans les groupes suivants :

Groupe Méthodes
Allocation de mémoire Compacter et initialiser
Niveaux coopératifs SetCooperativeLevel et TestCooperativeLevel
Création d'objets CreateClipper, CreatePalette et CreateSurface
Fonctionnalités de l’appareil GetCaps
Modes d’affichage EnumDisplayModes, GetDisplayMode, GetMonitorFrequency, RestoreDisplayMode, SetDisplayMode et WaitForVerticalBlank
État d’affichage GetScanLine et GetVerticalBlankStatus
Divers EvaluateMode, GetAvailableVidMem, GetDeviceIdentifier, GetFourCCCodes et StartModeTest
Gestion surface DuplicateSurface, EnumSurfaces, FlipToGDISurface, GetGDISurface, GetSurfaceFromDC et RestoreAllSurfaces
 

L’interface IDirectDraw7 étend les fonctionnalités des versions précédentes de l’interface en proposant des méthodes qui permettent une gestion des surfaces plus flexible que les versions précédentes. Toutes les méthodes liées à la surface de l’interface IDirectDraw7 acceptent des paramètres légèrement différents de ceux de leurs équivalents dans l’interface IDirectDraw2 . Partout où une méthode d’interface IDirectDraw2 peut accepter une structure DDSURFACEDESC et récupérer une interface IDirectDrawSurface3 , les méthodes dans IDirectDraw7 acceptent une structure DDSURFACEDESC2 et récupèrent une interface IDirectDrawSurface7 à la place.

IDirectDraw7 introduit une meilleure conformité aux règles COM qui dictent la durée de vie des objets enfants.

Utilisez les types de données LPDIRECTDRAW, LPDIRECTDRAW2, LPDIRECTDRAW4 ou LPDIRECTDRAW7 pour déclarer une variable qui contient un pointeur vers une interface IDirectDraw, IDirectDraw2, IDirectDraw4 ou IDirectDraw7 . Le fichier d’en-tête Ddraw.h déclare ces types de données avec le code suivant :


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

Spécifications

   
Plateforme cible Windows
En-tête ddraw.h