Compartir a través de


Método IDirect3DResource9::SetPrivateData (d3d9helper.h)

Asocia datos con el recurso que está pensado para su uso por la aplicación, no por Direct3D. Los datos se pasan por valor y se pueden asociar varios conjuntos de datos a un único recurso.

Sintaxis

HRESULT SetPrivateData(
  [in] REFGUID    refguid,
  [in] const void *pData,
  [in] DWORD      SizeOfData,
  [in] DWORD      Flags
);

Parámetros

[in] refguid

Tipo: REFGUID

Referencia al identificador único global que identifica los datos privados que se van a establecer.

[in] pData

Tipo: const void*

Puntero a un búfer que contiene los datos que se van a asociar al recurso.

[in] SizeOfData

Tipo: DWORD

Tamaño del búfer en pData, en bytes.

[in] Flags

Tipo: DWORD

Valor que describe el tipo de datos que se pasan o indica a la aplicación que los datos se deben invalidar cuando cambia el recurso.

Elemento Descripción
(Ninguno) Si no se especifican marcas, Direct3D asigna memoria para contener los datos dentro del búfer y copia los datos en el nuevo búfer. El búfer asignado por Direct3D se libera automáticamente, según corresponda.
D3DSPD_IUNKNOWN Los datos de pData son un puntero a una interfaz IUnknown . SizeOfData debe establecerse en el tamaño de un puntero a IUnknown, es decir, sizeof(IUnknown*). Direct3D llama automáticamente a IUnknown a través de pData cuando se destruyen los datos privados. Los datos privados se destruirán mediante una llamada posterior a IDirect3DResource9::SetPrivateData con el mismo GUID, una llamada posterior a IDirect3DResource9::FreePrivateData o cuando se libere el objeto IDirect3D9 . Para obtener más información, vea la sección Comentarios.

Valor devuelto

Tipo: HRESULT

Si el método se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto puede ser uno de los siguientes: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Comentarios

Direct3D no administra la memoria en pData. Si este búfer se asignó dinámicamente, es responsabilidad de la aplicación que realiza la llamada liberar la memoria.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado d3d9helper.h (incluya D3D9.h)
Library D3D9.lib

Consulte también

IDirect3DResource9