UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FD3D12DescriptorHeapManager Class Reference

#include <D3D12Descriptors.h>

+ Inheritance diagram for FD3D12DescriptorHeapManager:

Public Member Functions

 FD3D12DescriptorHeapManager (FD3D12Device *InDevice)
 
 ~FD3D12DescriptorHeapManager ()
 
void Init (uint32 InNumGlobalResourceDescriptors, uint32 InNumGlobalSamplerDescriptors)
 
void Destroy ()
 
FD3D12DescriptorHeapAllocateIndependentHeap (const TCHAR *InDebugName, ERHIDescriptorHeapType InHeapType, uint32 InNumDescriptors, ED3D12DescriptorHeapFlags InHeapFlags)
 
FD3D12DescriptorHeapAllocateHeap (const TCHAR *InDebugName, ERHIDescriptorHeapType InHeapType, uint32 InNumDescriptors, ED3D12DescriptorHeapFlags InHeapFlags)
 
void DeferredFreeHeap (FD3D12DescriptorHeap *InHeap)
 
void ImmediateFreeHeap (FD3D12DescriptorHeap *InHeap)
 
void AddHeapToPool (TRefCountPtr< ID3D12DescriptorHeap > &&InHeap, ERHIDescriptorHeapType InType, uint32 InNumDescriptors, ED3D12DescriptorHeapFlags InFlags)
 
- Public Member Functions inherited from FD3D12DeviceChild
 FD3D12DeviceChild (FD3D12Device *InParent=nullptr)
 
FORCEINLINE FD3D12DeviceGetParentDevice () const
 
FD3D12DeviceGetParentDevice_Unsafe () const
 

Additional Inherited Members

- Protected Attributes inherited from FD3D12DeviceChild
FD3D12DeviceParent
 

Detailed Description

Primary descriptor heap and descriptor manager. All heap allocations come from here. All GPU visible resource heap allocations will be sub-allocated from a single heap in this manager.

Constructor & Destructor Documentation

◆ FD3D12DescriptorHeapManager()

FD3D12DescriptorHeapManager::FD3D12DescriptorHeapManager ( FD3D12Device InDevice)

◆ ~FD3D12DescriptorHeapManager()

FD3D12DescriptorHeapManager::~FD3D12DescriptorHeapManager ( )

Member Function Documentation

◆ AddHeapToPool()

void FD3D12DescriptorHeapManager::AddHeapToPool ( TRefCountPtr< ID3D12DescriptorHeap > &&  InHeap,
ERHIDescriptorHeapType  InType,
uint32  InNumDescriptors,
ED3D12DescriptorHeapFlags  InFlags 
)

◆ AllocateHeap()

FD3D12DescriptorHeap * FD3D12DescriptorHeapManager::AllocateHeap ( const TCHAR InDebugName,
ERHIDescriptorHeapType  InHeapType,
uint32  InNumDescriptors,
ED3D12DescriptorHeapFlags  InHeapFlags 
)

◆ AllocateIndependentHeap()

FD3D12DescriptorHeap * FD3D12DescriptorHeapManager::AllocateIndependentHeap ( const TCHAR InDebugName,
ERHIDescriptorHeapType  InHeapType,
uint32  InNumDescriptors,
ED3D12DescriptorHeapFlags  InHeapFlags 
)

◆ DeferredFreeHeap()

void FD3D12DescriptorHeapManager::DeferredFreeHeap ( FD3D12DescriptorHeap InHeap)

◆ Destroy()

void FD3D12DescriptorHeapManager::Destroy ( )

◆ ImmediateFreeHeap()

void FD3D12DescriptorHeapManager::ImmediateFreeHeap ( FD3D12DescriptorHeap InHeap)

◆ Init()

void FD3D12DescriptorHeapManager::Init ( uint32  InNumGlobalResourceDescriptors,
uint32  InNumGlobalSamplerDescriptors 
)

The documentation for this class was generated from the following files: