Compartir a través de


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

Asocia los datos al volumen que está pensado para su uso por la aplicación, no por Direct3D.

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 volumen.

[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 una interfaz IUnknown , sizeof(IUnknown*). Direct3D llama automáticamente a IUnknown a través de pData e IUnknown cuando se destruyen los datos privados. Los datos privados se destruirán mediante una llamada posterior a IDirect3DVolume9::SetPrivateData con el mismo GUID, una llamada posterior a IDirect3DVolume9::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.

Los datos se pasan por valor y se pueden asociar varios conjuntos de datos a un solo volumen.

Requisitos

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

Consulte también

IDirect3DVolume9

IDirect3DVolume9::FreePrivateData

IDirect3DVolume9::GetPrivateData