UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FLandscapeEditReadbackTaskPool Class Reference
+ Inheritance diagram for FLandscapeEditReadbackTaskPool:

Public Member Functions

void ReleaseRHI () override
 
int32 Allocate (UTexture2D const *InTexture, FLandscapeEditLayerReadback::FReadbackContext &&InReadbackContext)
 
void Free (int32 InTaskHandle)
 
void GarbageCollect ()
 
void FlushAll ()
 
- Public Member Functions inherited from FRenderResource
RENDERCORE_API FRenderResource ()
 
RENDERCORE_API FRenderResource (ERHIFeatureLevel::Type InFeatureLevel)
 
RENDERCORE_API FRenderResource (const FRenderResource &)
 
RENDERCORE_API FRenderResource (FRenderResource &&)
 
RENDERCORE_API FRenderResourceoperator= (const FRenderResource &Other)
 
RENDERCORE_API FRenderResourceoperator= (FRenderResource &&Other)
 
virtual RENDERCORE_API ~FRenderResource ()
 
virtual void InitRHI (FRHICommandListBase &RHICmdList)
 
virtual RENDERCORE_API void InitResource (FRHICommandListBase &RHICmdList)
 
virtual RENDERCORE_API void ReleaseResource ()
 
RENDERCORE_API void UpdateRHI (FRHICommandListBase &RHICmdList)
 
virtual FString GetFriendlyName () const
 
bool IsInitialized () const
 
int32 GetListIndex () const
 
EInitPhase GetInitPhase () const
 
void SetOwnerName (FName InOwnerName)
 
FName GetOwnerName () const
 
void SetResourceName (FName InResourceName)
 
FName GetResourceName () const
 

Public Attributes

TChunkedArray< FLandscapeEditReadbackTaskImplPool
 
uint32 AllocCount = 0
 
uint32 FrameCount = 0
 
- Public Attributes inherited from FRenderResource
ERenderResourceState ResourceState = ERenderResourceState::Default
 

Additional Inherited Members

- Public Types inherited from FRenderResource
enum class  EInitPhase : uint8 { Pre , Default , MAX }
 
- Static Public Member Functions inherited from FRenderResource
static RENDERCORE_API void ReleaseRHIForAllResources ()
 
static RENDERCORE_API void InitPreRHIResources ()
 
static RENDERCORE_API void ChangeFeatureLevel (ERHIFeatureLevel::Type NewFeatureLevel)
 
static RENDERCORE_API FName SetScopeName (FName Name)
 
- Protected Member Functions inherited from FRenderResource
void SetFeatureLevel (const FStaticFeatureLevel InFeatureLevel)
 
const FStaticFeatureLevel GetFeatureLevel () const
 
bool HasValidFeatureLevel () const
 
template<typename T >
FBufferRHIRef CreateRHIBuffer (FRHICommandListBase &RHICmdList, T &InOutResourceObject, uint32 ResourceCount, EBufferUsageFlags InBufferUsageFlags, const TCHAR *InDebugName)
 
void SetInitPhase (EInitPhase InInitPhase)
 
- Static Protected Member Functions inherited from FRenderResource
static RENDERCORE_API FRHICommandListBaseGetImmediateCommandList ()
 

Detailed Description

Pool of read back tasks. Decouples task ownership so that that tasks can be easily released and recycled.

Member Function Documentation

◆ Allocate()

int32 FLandscapeEditReadbackTaskPool::Allocate ( UTexture2D const *  InTexture,
FLandscapeEditLayerReadback::FReadbackContext &&  InReadbackContext 
)
inline

Allocate task data from the pool.

◆ FlushAll()

void FLandscapeEditReadbackTaskPool::FlushAll ( )
inline

◆ Free()

void FLandscapeEditReadbackTaskPool::Free ( int32  InTaskHandle)
inline

Return task data to the pool.

◆ GarbageCollect()

void FLandscapeEditReadbackTaskPool::GarbageCollect ( )
inline

Free render resources that have been unused for long enough.

◆ ReleaseRHI()

void FLandscapeEditReadbackTaskPool::ReleaseRHI ( )
inlineoverridevirtual

Releases the RHI resources used by this resource. Called when leaving the state where both the resource and the RHI have been initialized. This is only called by the rendering thread.

Reimplemented from FRenderResource.

Member Data Documentation

◆ AllocCount

uint32 FLandscapeEditReadbackTaskPool::AllocCount = 0

Allocation count used to check if there are any tasks to Tick.

◆ FrameCount

uint32 FLandscapeEditReadbackTaskPool::FrameCount = 0

Frame count used to validate and garbage collect.

◆ Pool

TChunkedArray< FLandscapeEditReadbackTaskImpl > FLandscapeEditReadbackTaskPool::Pool

Pool uses chunked array to avoid task data being moved by a realloc.


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