IDirect3DSurface9::GetContainer
このサーフェスがキューブ テクスチャーまたはミップマップの子レベルである場合、その親のキューブ テクスチャーまたはテクスチャー (ミップマップ) オブジェクトへアクセスできます。また、サーフェスがバック バッファーの子の場合は、親スワップ チェーンへのアクセスを提供します。
HRESULT
GetContainer(
REFIID riid,
void ** ppContainer
);
パラメータ
- riid
要求対象のコンテナーの参照識別子。 - ppContainer
クエリが成功した場合にコンテナー ポインターが格納されるポインターのアドレス。「解説」を参照してください。
戻り値
メソッドが成功した場合は、D3D_OK を返します。失敗した場合は、D3DERR_INVALIDCALL を返します。
解説
サーフェスは、IDirect3DDevice9::CreateRenderTarget、IDirect3DDevice9::CreateOffscreenPlainSurface、または IDirect3DDevice9::CreateDepthStencilSurface を使って作成されている場合、スタンドアロンであると見なされます。この場合、IDirect3DSurface9::GetContainer は、サーフェスの作成に使った Direct3D デバイスを返します。
呼び出しが成功した場合、コンテナーのリファレンス カウントが 1 つ増加します。
ミップ サーフェスの親テクスチャーを取得する例を次に示します。
// Assumes pSurface is a valid IDirect3DSurface9 pointer
void *pContainer = NULL;
IDirect3DTexture9 *pTexture = NULL;
HRESULT hr = pSurface->GetContainer(IID_IDirect3DTexture9, &pContainer);
if (SUCCEEDED(hr) && pContainer)
{
pTexture = (IDirect3DTexture9 *)pContainer;
}
要件
ヘッダー: D3D9.h 宣言