Поделиться через


Метод ID3D12Device3::OpenExistingHeapFromAddress (d3d12.h)

Создает специальную диагностическую кучу в системной памяти из адреса. Созданная куча может сохраняться даже в случае сбоя GPU или удаления устройства.

Синтаксис

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

Параметры

[in] pAddress

Тип: const void*

Адрес, используемый для создания кучи.

riid

Тип: REFIID

Глобальный уникальный идентификатор (GUID) для интерфейса кучи (ID3D12Heap).

Идентификатор REFIID или GUID интерфейса кучи можно получить с помощью макроса __uuidof(). Например, __uuidof(ID3D12Heap) извлекает GUID интерфейса в кучу.

[out] ppvHeap

Тип: void**

SAL: COM_Outptr

Указатель на блок памяти. При успешном выполнении среда выполнения D3D12 запишет указатель на вновь открытую кучу в блок памяти. Тип указателя зависит от предоставленного параметра riid .

Возвращаемое значение

Тип: HRESULT

Этот метод возвращает E_OUTOFMEMORY , если памяти недостаточно для открытия существующей кучи. Другие возможные возвращаемые значения см. в разделе Коды возврата Direct3D 12 .

Комментарии

Куча создается в системной памяти и разрешает доступ к ЦП. Он заключает в оболочку весь регион VirtualAlloc.

Кучи можно использовать для размещенных и зарезервированных ресурсов так же ортогонально, как и другие кучи. Ограничения могут по-прежнему существовать на основе флагов, которые не могут быть выбраны для приложения.

Требования

   
Целевая платформа Windows
Header d3d12.h
Библиотека D3d12.lib
DLL D3d12.dll

См. также раздел

Интерфейс ID3D12Device3