Méthode IDirect3DVolume9 ::SetPrivateData (d3d9.h)
Associe des données au volume destiné à être utilisé par l’application, et non par Direct3D.
Syntaxe
HRESULT SetPrivateData(
[in] REFGUID refguid,
[in] const void *pData,
[in] DWORD SizeOfData,
[in] DWORD Flags
);
Paramètres
[in] refguid
Type : REFGUID
Référence à l’identificateur global unique qui identifie les données privées à définir.
[in] pData
Type : const void*
Pointeur vers une mémoire tampon qui contient les données à associer au volume.
[in] SizeOfData
Type : DWORD
Taille de la mémoire tampon sur pData en octets.
[in] Flags
Type : DWORD
Valeur qui décrit le type de données transmises ou indique à l’application que les données doivent être invalidées lorsque la ressource change.
Élément | Description |
---|---|
(aucun) | Si aucun indicateur n’est spécifié, Direct3D alloue de la mémoire pour contenir les données dans la mémoire tampon et copie les données dans la nouvelle mémoire tampon. La mémoire tampon allouée par Direct3D est automatiquement libérée, le cas échéant. |
D3DSPD_IUNKNOWN | Les données de pData sont un pointeur vers une interface IUnknown . SizeOfData doit être défini sur la taille d’un pointeur vers une interface IUnknown , sizeof(IUnknown*). Direct3D appelle automatiquement IUnknown via pData et IUnknown lorsque les données privées sont détruites. Les données privées seront détruites par un appel ultérieur à IDirect3DVolume9 ::SetPrivateData avec le même GUID, un appel ultérieur à IDirect3DVolume9 ::FreePrivateData, ou lorsque l’objet IDirect3D9 est libéré. Pour plus d'informations, consultez la section Notes. |
Valeur retournée
Type : HRESULT
Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Remarques
Direct3D ne gère pas la mémoire sur pData. Si cette mémoire tampon a été allouée dynamiquement, il incombe à l’application appelante de libérer la mémoire.
Les données sont transmises par valeur et plusieurs jeux de données peuvent être associés à un seul volume.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d3d9.h (inclure D3D9.h) |
Bibliothèque | D3D9.lib |