IDirectDraw7::EnumSurfaces メソッド (ddraw.h)

指定したサーフェスの説明を満たす既存または使用可能なすべてのサーフェスを列挙します。

構文

HRESULT EnumSurfaces(
  [in] DWORD                     unnamedParam1,
  [in] LPDDSURFACEDESC2          unnamedParam2,
  [in] LPVOID                    unnamedParam3,
  [in] LPDDENUMSURFACESCALLBACK7 unnamedParam4
);

パラメーター

[in] unnamedParam1

1 つの検索の種類のフラグと 1 つの一致するフラグの組み合わせ。 検索の種類フラグは、メソッドが一致するサーフェスを検索する方法を決定します。 lpDDSD2 パラメーターの説明を使用して作成できるサーフェス、またはその説明に既に一致する既存のサーフェスを検索できます。 照合フラグは、メソッドがすべてのサーフェスを列挙するか、一致するサーフェスのみを列挙するか、 lpDDSD2 パラメーターの説明と一致しないサーフェスのみを列挙するかを決定します。

検索型フラグ

DDENUMSURFACES_CANBECREATED

作成できる最初のサーフェスを列挙し、検索条件を満たします。 このフラグは、DDENUMSURFACES_MATCH フラグでのみ使用できます。

DDENUMSURFACES_DOESEXIST

検索条件を満たす既存のサーフェスを列挙します。

一致するフラグ

DDENUMSURFACES_ALL

検索条件を満たすすべてのサーフェスを列挙します。 このフラグは、DDENUMSURFACES_DOESEXIST検索の種類のフラグでのみ使用できます。

DDENUMSURFACES_MATCH

サーフェスの説明に一致するサーフェスを検索します。

DDENUMSURFACES_NOMATCH

サーフェスの説明と一致しないサーフェスを検索します。

[in] unnamedParam2

対象のサーフェスを定義する DDSURFACEDESC2 構造体のアドレス。 dwFlags に DDENUMSURFACES_ALL フラグが含まれている場合、このパラメーターは NULL にすることができます。

[in] unnamedParam3

各列挙メンバーに渡されるアプリケーション定義構造体のアドレス。

[in] unnamedParam4

列挙プロシージャが一致が見つかるたびに呼び出す EnumSurfacesCallback7 関数のアドレス。

戻り値

メソッドが成功した場合、戻り値はDD_OK。

失敗した場合、メソッドは次のいずれかのエラー値を返すことができます。

  • DDERR_INVALIDOBJECT
  • DDERR_INVALIDPARAMS

解説

DDENUMSURFACES_CANBECREATED フラグが設定されている場合、このメソッドは検索条件を満たすサーフェスを一時的に作成しようとします。

DDENUMSURFACES_DOESEXIST フラグを使用すると、列挙サーフェスの参照カウントがインクリメントされます。サーフェスを使用しない場合は、 IDirectDrawSurface7::Release を使用して各列挙の後に解放してください。 サーフェスを使用する場合は、不要になったら解放します。

このメソッドは、EnumSurfacesCallback または EnumSurfacesCallback2 関数ではなく、EnumSurfacesCallback7 関数へのポインターを受け入れるという点で、以前インターフェイス バージョンの対応するメソッドとは異なります。

要件

   
対象プラットフォーム Windows
ヘッダー ddraw.h
Library Ddraw.lib
[DLL] Ddraw.dll

関連項目

IDirectDraw7