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

#include <RHITransientResourceAllocator.h>

Public Member Functions

 FRHITransientAllocationFences ()=default
 
 FRHITransientAllocationFences (ERHIPipeline InPipelines)
 
void SetGraphics (uint32 InGraphics)
 
void SetAsyncCompute (uint32 InAsyncCompute, TInterval< uint32 > InGraphicsForkJoin)
 
ERHIPipeline GetPipelines () const
 
uint32 GetSinglePipeline () const
 
bool IsSinglePipeline () const
 

Static Public Member Functions

static uint32 GetAcquireFence (const FRHITransientAllocationFences &Discard, const FRHITransientAllocationFences &Acquire)
 
static bool Contains (const FRHITransientAllocationFences &Discard, const FRHITransientAllocationFences &Acquire)
 

Detailed Description

This data structure contains fence values used for allocating / deallocating transient memory regions for transient resources. A memory region can be re-used if the deallocation fences from the discarding resource and the allocation fences for the acquiring resource are not executing simultaneously on both the graphics | async compute pipe on the GPU timeline.

Allocation events are always on a single pipeline, while deallocation events can happen on multiple pipelines at the same time. Async compute is represented using three fence values: one for the async compute pipe, and two for the fork / join points on the graphics pipe. If fences are active on both pipes at the same time, the graphics fence must be contained within the async compute fork / join region.

Constructor & Destructor Documentation

◆ FRHITransientAllocationFences() [1/2]

FRHITransientAllocationFences::FRHITransientAllocationFences ( )
default

◆ FRHITransientAllocationFences() [2/2]

FRHITransientAllocationFences::FRHITransientAllocationFences ( ERHIPipeline  InPipelines)
inline

Member Function Documentation

◆ Contains()

static bool FRHITransientAllocationFences::Contains ( const FRHITransientAllocationFences Discard,
const FRHITransientAllocationFences Acquire 
)
inlinestatic

◆ GetAcquireFence()

static uint32 FRHITransientAllocationFences::GetAcquireFence ( const FRHITransientAllocationFences Discard,
const FRHITransientAllocationFences Acquire 
)
inlinestatic

◆ GetPipelines()

ERHIPipeline FRHITransientAllocationFences::GetPipelines ( ) const
inline

◆ GetSinglePipeline()

uint32 FRHITransientAllocationFences::GetSinglePipeline ( ) const
inline

◆ IsSinglePipeline()

bool FRHITransientAllocationFences::IsSinglePipeline ( ) const
inline

◆ SetAsyncCompute()

void FRHITransientAllocationFences::SetAsyncCompute ( uint32  InAsyncCompute,
TInterval< uint32 InGraphicsForkJoin 
)
inline

◆ SetGraphics()

void FRHITransientAllocationFences::SetGraphics ( uint32  InGraphics)
inline

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