Freigeben über


IDirect3DSurface9::GetContainer-Methode (d3d9helper.h)

Ermöglicht den Zugriff auf das übergeordnete Cubetextur- oder Texturobjekt (mipmap), wenn es sich bei dieser Oberfläche um eine untergeordnete Ebene einer Cubetextur oder einer Mipmap handelt. Diese Methode kann auch den Zugriff auf die übergeordnete Swapkette ermöglichen, wenn die Oberfläche ein untergeordnetes Backpuffer ist.

Syntax

HRESULT GetContainer(
  [in]  REFIID riid,
  [out] void   **ppContainer
);

Parameter

[in] riid

Typ: REFIID

Referenzbezeichner des angeforderten Containers.

[out] ppContainer

Typ: void**

Adresse eines Zeigers, der mit dem Containerzeiger gefüllt werden soll, wenn die Abfrage erfolgreich ist. Siehe Hinweise.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert D3DERR_INVALIDCALL werden.

Hinweise

Wenn die Oberfläche mit CreateRenderTarget oder CreateOffscreenPlainSurface oder CreateDepthStencilSurface erstellt wird, gilt die Oberfläche als eigenständige Oberfläche. In diesem Fall gibt GetContainer das Direct3D-Gerät zurück, das zum Erstellen der Oberfläche verwendet wurde.

Wenn der Aufruf erfolgreich ist, wird die Referenzanzahl des Containers um eins erhöht.

Hier sehen Sie ein Beispiel, das die übergeordnete Textur einer MIP-Oberfläche erhält.


    
// 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;
}

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d9helper.h (einschließlich D3D9.h)
Bibliothek D3D9.lib

Weitere Informationen

IDirect3DSurface9