Compartilhar via


Método ID3D12Device3::OpenExistingHeapFromAddress (d3d12.h)

Cria um heap de diagnóstico de finalidade especial na memória do sistema a partir de um endereço. O heap criado pode persistir mesmo no caso de um cenário de falha de GPU ou de dispositivo removido.

Sintaxe

HRESULT OpenExistingHeapFromAddress(
  [in]  const void *pAddress,
        REFIID     riid,
  [out] void       **ppvHeap
);

Parâmetros

[in] pAddress

Tipo: const void*

O endereço usado para criar o heap.

riid

Tipo: REFIID

O GUID (identificador global exclusivo) para a interface de heap (ID3D12Heap).

O REFIID, ou GUID, da interface para o heap pode ser obtido usando a macro __uuidof(). Por exemplo, __uuidof(ID3D12Heap) recuperará o GUID da interface para um heap.

[out] ppvHeap

Tipo: void**

SAL: COM_Outptr

Um ponteiro para um bloco de memória. Em caso de êxito, o runtime D3D12 gravará um ponteiro para o heap recém-aberto no bloco de memória. O tipo do ponteiro depende do parâmetro riid fornecido.

Valor retornado

Tipo: HRESULT

Esse método retornará E_OUTOFMEMORY se não houver memória suficiente para abrir o heap existente. Consulte Códigos de retorno do Direct3D 12 para obter outros valores retornados possíveis.

Comentários

O heap é criado na memória do sistema e permite o acesso à CPU. Ele encapsula toda a região VirtualAlloc.

Heaps podem ser usados para recursos colocados e reservados, como ortogonalmente como outros heaps. As restrições ainda podem existir com base nos sinalizadores que não podem ser escolhidos pelo aplicativo.

Requisitos

   
Plataforma de Destino Windows
Cabeçalho d3d12.h
Biblioteca D3d12.lib
DLL D3d12.dll

Confira também

Interface ID3D12Device3