IDirect3DResource9::SetPrivateData-Methode (d3d9.h)
Ordnet Daten der Ressource zu, die für die Verwendung durch die Anwendung und nicht für Direct3D vorgesehen ist. Daten werden nach Wert übergeben, und mehrere Datasets können einer einzelnen Ressource zugeordnet werden.
Syntax
HRESULT SetPrivateData(
[in] REFGUID refguid,
[in] const void *pData,
[in] DWORD SizeOfData,
[in] DWORD Flags
);
Parameter
[in] refguid
Typ: REFGUID
Verweis auf den global eindeutigen Bezeichner, der die festzulegenden privaten Daten identifiziert.
[in] pData
Typ: const void*
Zeiger auf einen Puffer, der die Daten enthält, die der Ressource zugeordnet werden sollen.
[in] SizeOfData
Typ: DWORD
Größe des Puffers bei pData in Bytes.
[in] Flags
Typ: DWORD
Wert, der den Typ der übergebenen Daten beschreibt oder der Anwendung angibt, dass die Daten ungültig werden sollen, wenn sich die Ressource ändert.
Element | BESCHREIBUNG |
---|---|
(ohne) | Wenn keine Flags angegeben sind, weist Direct3D Arbeitsspeicher zu, um die Daten im Puffer zu speichern, und kopiert die Daten in den neuen Puffer. Der von Direct3D zugewiesene Puffer wird je nach Bedarf automatisch freigegeben. |
D3DSPD_IUNKNOWN | Die Daten in pData sind ein Zeiger auf eine IUnknown-Schnittstelle . SizeOfData muss auf die Größe eines Zeigers auf IUnknown festgelegt werden, d. h. sizeof(IUnknown*). Direct3D ruft automatischIUnknown über pData auf, wenn die privaten Daten zerstört werden. Private Daten werden durch einen nachfolgenden Aufruf von IDirect3DResource9::SetPrivateData mit derselben GUID, einen nachfolgenden Aufruf von IDirect3DResource9::FreePrivateData oder beim Freigeben des IDirect3D9-Objekts zerstört. Weitere Informationen finden Sie in den Hinweisen. |
Rückgabewert
Typ: HRESULT
Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Hinweise
Direct3D verwaltet den Arbeitsspeicher bei pData nicht. Wenn dieser Puffer dynamisch zugeordnet wurde, liegt es in der Verantwortung der aufrufenden Anwendung, den Arbeitsspeicher freizugeben.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d9.h (einschließlich D3D9.h) |
Bibliothek | D3D9.lib |