Método ID3D12Device3::OpenExistingHeapFromAddress (d3d12.h)
Crea un montón de diagnóstico de uso especial en la memoria del sistema a partir de una dirección. El montón creado puede persistir incluso en caso de un escenario de error de GPU o dispositivo quitado.
Sintaxis
HRESULT OpenExistingHeapFromAddress(
[in] const void *pAddress,
REFIID riid,
[out] void **ppvHeap
);
Parámetros
[in] pAddress
Tipo: const void*
Dirección que se usa para crear el montón.
riid
Tipo: REFIID
Identificador único global (GUID) de la interfaz del montón (ID3D12Heap).
El REFIID, o GUID, de la interfaz al montón se puede obtener mediante la macro __uuidof(). Por ejemplo, __uuidof(ID3D12Heap) recuperará el GUID de la interfaz en un montón.
[out] ppvHeap
Tipo: void**
SAL: COM_Outptr
Puntero a un bloque de memoria. Si se ejecuta correctamente, el entorno de ejecución D3D12 escribirá un puntero en el montón recién abierto en el bloque de memoria. El tipo del puntero depende del parámetro riid proporcionado.
Valor devuelto
Tipo: HRESULT
Este método devuelve E_OUTOFMEMORY si no hay memoria suficiente para abrir el montón existente. Consulta Códigos de retorno de Direct3D 12 para ver otros valores devueltos posibles.
Comentarios
El montón se crea en la memoria del sistema y permite el acceso a la CPU. Encapsula toda la región VirtualAlloc.
Los montones se pueden usar para los recursos colocados y reservados, como ortogonalmente como otros montones. Las restricciones pueden seguir existiendo en función de las marcas que no se pueden elegir por la aplicación.
Requisitos
Plataforma de destino | Windows |
Encabezado | d3d12.h |
Library | D3d12.lib |
Archivo DLL | D3d12.dll |