IDCompositionDevice2::CreateSurfaceFactory メソッド (dcomp.h)
他の DirectComposition サーフェスまたは仮想サーフェス オブジェクトを作成するために使用できる Microsoft DirectComposition サーフェス ファクトリ オブジェクトを作成します。
構文
HRESULT CreateSurfaceFactory(
[in] IUnknown *renderingDevice,
[out] IDCompositionSurfaceFactory **surfaceFactory
);
パラメーター
[in] renderingDevice
DirectComposition サーフェス オブジェクトの作成に使用する DirectX デバイスへのポインター。 IDXGIDevice または ID2D1Device インターフェイスを実装するオブジェクトへのポインターである必要があります。 このパラメーターを NULL にすることはできません。
[out] surfaceFactory
新しく作成されたサーフェス ファクトリ オブジェクト。 このパラメーターを NULL にすることはできません。
戻り値
関数が成功した場合は、S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。 エラー コードの一覧については、「 DirectComposition エラー コード 」を参照してください。
注釈
サーフェス ファクトリを使用すると、アプリケーションは複数の単一の DXGI または Direct2D デバイスと DirectComposition を同時に使用できます。 各サーフェス ファクトリは、1 つの DXGI または Direct2D デバイスと永続的に関連付けられますが、DirectComposition デバイスには任意の数のサーフェス ファクトリを含める場合があります。
各サーフェス ファクトリは、他とは独立してリソースを管理します。 特に、DirectComposition プールのサーフェス割り当てにより、サーフェスの割り当てと割り当て解除のコストが軽減されます。 このプールは、サーフェスごとのファクトリベースで実行されます。
DCompositionCreateDevice2 関数が NULL 以外の renderingDevice パラメーターを使用して呼び出された場合、返される DirectComposition デバイス オブジェクトには、指定されたレンダリング デバイスに関連付けられたカバーの下に暗黙的なサーフェス ファクトリがあります。 この暗黙的なサーフェス ファクトリは、 IDCompositionDevice::CreateSurface、 IDCompositionDevice::CreateVirtualSurface、 IDCompositionDevice2::CreateSurface 、 および IDCompositionDevice2::CreateVirtualSurface メソッドのサービスに使用されます。
サーフェス オブジェクトは、作成したサーフェスまたは仮想サーフェスのいずれかが有効な状態のままである限り、アプリケーションが直接参照を保持しているか、1 つ以上のこのようなサーフェスが 1 つ以上のビジュアル オブジェクトに関連付けられているため間接的に存続します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8.1 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2012 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | dcomp.h |
Library | Dcomp.lib |
[DLL] | Dcomp.dll |