Navigation
API > API/Runtime > API/Runtime/RHICore
Pool which stores for each allocation the previous and next allocation. Each block is either free or allocated.
| Name | FRHIMemoryPool |
| Type | class |
| Header File | /Engine/Source/Runtime/RHICore/Public/RHIPoolAllocator.h |
| Include Path | #include "RHIPoolAllocator.h" |
Syntax
class FRHIMemoryPool
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FRHIMemoryPool
(
int16 InPoolIndex, |
Constructor. | RHIPoolAllocator.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FRHIMemoryPool() |
RHIPoolAllocator.h |
Enums
Public
| Name | Remarks |
|---|---|
| EFreeListOrder |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void Deallocate
(
FRHIPoolAllocationData& AllocationData |
RHIPoolAllocator.h | ||
virtual void Destroy() |
RHIPoolAllocator.h | ||
uint32 GetAlignmentWaste() |
RHIPoolAllocator.h | ||
uint32 GetAllocatedBlocks() |
RHIPoolAllocator.h | ||
uint64 GetFreeSize() |
RHIPoolAllocator.h | ||
int16 GetPoolIndex() |
Getters. | RHIPoolAllocator.h | |
uint64 GetPoolSize() |
RHIPoolAllocator.h | ||
ERHIPoolResourceTypes GetSupportedResourceTypes() |
RHIPoolAllocator.h | ||
uint64 GetUsedSize() |
RHIPoolAllocator.h | ||
virtual void Init() |
Setup/Shutdown. | RHIPoolAllocator.h | |
bool IsEmpty() |
RHIPoolAllocator.h | ||
bool IsFull() |
RHIPoolAllocator.h | ||
bool IsResourceTypeSupported
(
ERHIPoolResourceTypes InType |
RHIPoolAllocator.h | ||
bool TryAllocate
(
uint32 InSizeInBytes, |
AllocationData functions: allocate, free, move, ... | RHIPoolAllocator.h | |
void TryClear
(
FRHIContextArray const& Contexts, |
Bookkeeping and clearing. | RHIPoolAllocator.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FRHIPoolAllocationData * AddToFreeBlocks
(
FRHIPoolAllocationData* InFreeBlock |
RHIPoolAllocator.h | ||
int32 FindFreeBlock
(
uint32 InSizeInBytes, |
Free block management helper function. | RHIPoolAllocator.h | |
FRHIPoolAllocationData * GetNewAllocationData() |
Get/Release allocation data blocks. | RHIPoolAllocator.h | |
void ReleaseAllocationData
(
FRHIPoolAllocationData* InData |
RHIPoolAllocator.h | ||
void RemoveFromFreeBlocks
(
FRHIPoolAllocationData* InFreeBlock |
RHIPoolAllocator.h | ||
void Validate() |
Validate the linked list data - slow. | RHIPoolAllocator.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static uint32 GetAlignedOffset
(
uint32 InOffset, |
RHIPoolAllocator.h | ||
static uint32 GetAlignedSize
(
uint32 InSizeInBytes, |
Static public helper functions. | RHIPoolAllocator.h |