Platform SDK: DirectX

IDirectDraw7

アプリケーションは IDirectDraw7 インターフェイスのメソッドを使って、DirectDraw オブジェクトを作成し、システムレベル変数と共に作用する。ここでは、このインターフェイスのメソッドのリファレンスを提供する。概念の概要については、「DirectDraw オブジェクト」を参照すること。

IDirectDraw7 インターフェイスのメソッドは、以下のグループにまとめることができる。

メモリの割り当て Compact
  Initialize
協調レベル SetCooperativeLevel
  TestCooperativeLevel
オブジェクトの作成 CreateClipper
  CreatePalette
CreateSurface
デバイス能力 GetCaps
ディスプレイ モード EnumDisplayModes
  GetDisplayMode
GetMonitorFrequency
RestoreDisplayMode
SetDisplayMode
WaitForVerticalBlank
ディスプレイ ステータス GetScanLine
  GetVerticalBlankStatus
その他 EvaluateMode
  GetAvailableVidMem
GetDeviceIdentifier
GetFourCCCodes
StartModeTest
サーフェス管理 DuplicateSurface
  EnumSurfaces
FlipToGDISurface
GetGDISurface
GetSurfaceFromDC
RestoreAllSurfaces

すべての COM インターフェイスと同様、IDirectDraw7 インターフェイスは IUnknown インターフェイス メソッドを継承する。IUnknown インターフェイスは、以下の 3 つのメソッドをサポートする。

IUnknown AddRef
  QueryInterface
Release

IDirectDraw7 インターフェイスは、以前のバージョンよりも柔軟にサーフェスを管理できるメソッドが提供されることにより、インターフェイスの前のバージョンにおける機能を拡張している。IDirectDraw7 インターフェイスのすべてのサーフェス関連メソッドは、IDirectDraw2 インターフェイスにおいて対応するサーフェス関連メソッドとは若干異なるパラメータを受け取る。IDirectDraw2 インターフェイス メソッドが DDSURFACEDESC 構造体を受け取り、IDirectDrawSurface3 インターフェイスを取得する位置では、常にその代わりに IDirectDraw7 のメソッドが DDSURFACEDESC2 構造体を受け取り、IDirectDrawSurface7 インターフェイスを取得する。

IDirectDraw7 は、子オブジェクトの有効期間を指示する COM 規則に準拠して改善された。詳細については、「親オブジェクトと子オブジェクトの有効期間」を参照すること。

LPDIRECTDRAWLPDIRECTDRAW2LPDIRECTDRAW4、または LPDIRECTDRAW7 データ型を使用して、IDirectDrawIDirectDraw2IDirectDraw4、または IDirectDraw7 インターフェイスへのポインタを含む変数を宣言する。ddraw.h ヘッダー ファイルは、以下のコードでこれらのデータ型を宣言する。

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

動作環境

  Windows NT/2000 :Windows 2000 が必要。
  Windows 95/98 : Windows 98 が必要。
  ヘッダー : ddraw.h で宣言。