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 |