|
| | FD3D12PoolAllocator (FD3D12Device *ParentDevice, FRHIGPUMask VisibleNodes, const FD3D12ResourceInitConfig &InInitConfig, const FString &InName, EResourceAllocationStrategy InAllocationStrategy, uint64 InDefaultPoolSize, uint32 InPoolAlignment, uint32 InMaxAllocationSize, FRHIMemoryPool::EFreeListOrder InFreeListOrder, bool bInDefragEnabled, HeapId InTraceParentHeapId) |
| |
| | ~FD3D12PoolAllocator () |
| |
| bool | SupportsAllocation (D3D12_HEAP_TYPE InHeapType, D3D12_RESOURCE_FLAGS InResourceFlags, EBufferUsageFlags InBufferUsage, ED3D12ResourceStateMode InResourceStateMode, uint32 Alignment) const |
| |
| void | AllocDefaultResource (D3D12_HEAP_TYPE InHeapType, const FD3D12ResourceDesc &InDesc, EBufferUsageFlags InBufferUsage, ED3D12ResourceStateMode InResourceStateMode, ED3D12Access InCreateD3D12Access, uint32 InAlignment, const TCHAR *InName, FD3D12ResourceLocation &ResourceLocation) |
| |
| virtual void | DeallocateResource (FD3D12ResourceLocation &ResourceLocation, bool bDefragFree=false) |
| |
| virtual void | AllocateResource (uint32 GPUIndex, D3D12_HEAP_TYPE InHeapType, const FD3D12ResourceDesc &InDesc, uint64 InSize, uint32 InAllocationAlignment, ED3D12Access InInitialD3D12Access, ED3D12ResourceStateMode InResourceStateMode, ED3D12Access InDefaultD3D12Access, const D3D12_CLEAR_VALUE *InClearValue, const TCHAR *InName, FD3D12ResourceLocation &ResourceLocation) override |
| |
| void | CleanUpAllocations (uint64 InFrameLag, bool bForceFree=false) |
| |
| void | FlushPendingCopyOps (FD3D12CommandContext &InCommandContext) |
| |
| void | TransferOwnership (FD3D12ResourceLocation &InSource, FD3D12ResourceLocation &InDest) |
| |
| bool | IsOwner (FD3D12ResourceLocation &ResourceLocation) const |
| |
| EResourceAllocationStrategy | GetAllocationStrategy () const |
| |
| FD3D12Resource * | GetBackingResource (FD3D12ResourceLocation &InResourceLocation) const |
| |
| FD3D12HeapAndOffset | GetBackingHeapAndAllocationOffsetInBytes (FD3D12ResourceLocation &InResourceLocation) const |
| |
| FD3D12HeapAndOffset | GetBackingHeapAndAllocationOffsetInBytes (const FRHIPoolAllocationData &InAllocationData) const |
| |
| uint64 | GetPendingDeleteRequestSize () const |
| |
| RHICORE_API | FRHIPoolAllocator (uint64 InDefaultPoolSize, uint32 InPoolAlignment, uint32 InMaxAllocationSize, FRHIMemoryPool::EFreeListOrder InFreeListOrder, bool InDefragEnabled) |
| |
| virtual RHICORE_API | ~FRHIPoolAllocator () |
| |
| RHICORE_API void | Initialize () |
| |
| RHICORE_API void | Destroy () |
| |
| RHICORE_API void | Defrag (FRHIContextArray const &Contexts, uint32 InMaxCopySize, uint32 &CurrentCopySize) |
| |
| RHICORE_API void | UpdateMemoryStats (uint32 &IOMemoryAllocated, uint32 &IOMemoryUsed, uint32 &IOMemoryFree, uint32 &IOMemoryEndFree, uint32 &IOAlignmentWaste, uint32 &IOAllocatedPageCount, uint32 &IOFullPageCount) |
| |
| | FD3D12DeviceChild (FD3D12Device *InParent=nullptr) |
| |
| FORCEINLINE FD3D12Device * | GetParentDevice () const |
| |
| FD3D12Device * | GetParentDevice_Unsafe () const |
| |
| | FD3D12MultiNodeGPUObject (FRHIGPUMask NodeMask, FRHIGPUMask VisibiltyMask) |
| |
| | FD3D12GPUObject (FRHIGPUMask InGPUMask, FRHIGPUMask InVisibiltyMask) |
| |
| SGPU_CONSTEXPR FRHIGPUMask | GetGPUMask () const |
| |
| SGPU_CONSTEXPR FRHIGPUMask | GetVisibilityMask () const |
| |
| void | AllocateTexture (uint32 GPUIndex, D3D12_HEAP_TYPE InHeapType, const FD3D12ResourceDesc &InDesc, EPixelFormat InUEFormat, ED3D12Access InInitialD3D12Access, ED3D12ResourceStateMode InResourceStateMode, ED3D12Access InDefaultD3D12Access, const D3D12_CLEAR_VALUE *InClearValue, const TCHAR *InName, FD3D12ResourceLocation &ResourceLocation) |
| |
D3D12 specific implementation of the FRHIPoolAllocator.