IDirect3DSurface9::GetContainer メソッド
IDirect3DSurface9::GetContainer メソッド
このサーフェイスがキューブ テクスチャまたはミップマップの子レベルである場合、親のキューブ テクスチャまたはテクスチャ (ミップマップ) オブジェクトへのアクセスを提供する。また、サーフェイスがバックバッファの子の場合は、親スワップ チェーンへのアクセスも提供する。
構文
HRESULT GetContainer(
REFIID riid,
void **ppContainer
);
パラメータ
- riid
[in] 要求するコンテナの参照識別子。 - ppContainer
[out] 問い合わせが成功した場合にコンテナ ポインタが格納されるポインタのアドレス。「注意」を参照すること。
戻り値
成功した場合は、D3D_OK を返す。
失敗した場合は、D3DERR_INVALIDCALL を返す。
注意
サーフェイスが IDirect3DDevice9::CreateRenderTarget、IDirect3DDevice9::CreateOffscreenPlainSurface、または IDirect3DDevice9::CreateDepthStencilSurface を使って作成されている場合、サーフェイスはスタンドアロンであると見なされる。この場合、IDirect3DSurface9::GetContainer は、サーフェイスの作成に使った Microsoft® 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; }