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

Public Member Functions

 FClusterReferenceProcessor (int32 InClusterRootIndex, FUObjectCluster &InCluster, UObject *InOutermost)
 
UObjectGetClusterRoot ()
 
void AddObjectToCluster (int32 ObjectIndex, FUObjectItem *ObjectItem, UObject *Obj, FWorkerContext &Context, bool bOuterAndClass)
 
FORCEINLINE void HandleTokenStreamObjectReference (FWorkerContext &Context, UObject *ReferencingObject, UObject *&Object, FMemberId MemberId, EOrigin Origin, bool bAllowReferenceElimination)
 
- Public Member Functions inherited from FSimpleReferenceProcessorBase
void BeginTimingObject (UObject *CurrentObject)
 
void UpdateDetailedStats (UObject *CurrentObject)
 
void LogDetailedStatsSummary ()
 
FORCEINLINE bool IsTimeLimitExceeded () const
 

Static Public Member Functions

static FString LoadFlagsToString (UObject *Obj)
 

Additional Inherited Members

- Public Types inherited from FSimpleReferenceProcessorBase
using FMemberId = UE::GC::FMemberId
 
using EOrigin = UE::GC::EOrigin
 
using FPropertyStack = UE::GC::FPropertyStack
 
using FWorkerContext = UE::GC::FWorkerContext
 
- Static Public Attributes inherited from FSimpleReferenceProcessorBase
static constexpr EGCOptions Options = UE::GC::DefaultOptions
 

Detailed Description

Handles UObject references found by TFastReferenceCollector

Constructor & Destructor Documentation

◆ FClusterReferenceProcessor()

FClusterReferenceProcessor::FClusterReferenceProcessor ( int32  InClusterRootIndex,
FUObjectCluster InCluster,
UObject InOutermost 
)
inline

Member Function Documentation

◆ AddObjectToCluster()

void FClusterReferenceProcessor::AddObjectToCluster ( int32  ObjectIndex,
FUObjectItem ObjectItem,
UObject Obj,
FWorkerContext Context,
bool  bOuterAndClass 
)
inline

Adds an object to cluster (if possible)

Parameters
ObjectIndexUObject index in GUObjectArray
ObjectItemUObject's entry in GUObjectArray
ObjThe object to add to cluster
ContextContext of the reference collection
bOuterAndClassIf true, the Obj's Outer and Class will also be added to the cluster

◆ GetClusterRoot()

UObject * FClusterReferenceProcessor::GetClusterRoot ( )
inline

◆ HandleTokenStreamObjectReference()

FORCEINLINE void FClusterReferenceProcessor::HandleTokenStreamObjectReference ( FWorkerContext Context,
UObject ReferencingObject,
UObject *&  Object,
FMemberId  MemberId,
EOrigin  Origin,
bool  bAllowReferenceElimination 
)
inline

Handles UObject reference from the token stream. Performance is critical here so we're FORCEINLINING this function.

Parameters
ContextContext of the reference collection
ReferencingObjectObject referencing the object to process.
ObjectObject being processed
MemberIdIndex to the token stream where the reference was found.
OriginDeclares if a schema represents a blueprint generated type
bAllowReferenceEliminationTrue if reference elimination is allowed (ignored when constructing clusters).

◆ LoadFlagsToString()

static FString FClusterReferenceProcessor::LoadFlagsToString ( UObject Obj)
inlinestatic

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