GetArrayStryctFromPool

Helper class that looks for [UObject](API\Runtime\CoreUObject\UObject\UObject) references by traversing [UClass](API\Runtime\CoreUObject\UObject\UClass) token stream and calls AddReferencedObjects.

Choose your operating system:

Windows

macOS

Linux

References

Module

CoreUObject

Header

/Engine/Source/Runtime/CoreUObject/Public/UObject/FastReferenceCollector.h

Include

#include "UObject/FastReferenceCollector.h"

Syntax

FGCArrayStruct * GetArrayStryctFromPool()

Remarks

Helper class that looks for UObject references by traversing UClass token stream and calls AddReferencedObjects. Provides a generic way of processing references that is used by Unreal Engine garbage collection. Can be used for fast (does not use serialization) reference collection purposes.

IT IS CRITICAL THIS CLASS DOES NOT CHANGE WITHOUT CONSIDERING PERFORMANCE IMPACT OF SAID CHANGES

This class depends on three components: ReferenceProcessor, ReferenceCollector and ArrayPool. The assumptions for each of those components are as follows:

class FSampleReferenceProcessor { public: int32 GetMinDesiredObjectsPerSubTask() const; void HandleTokenStreamObjectReference(FGCArrayStruct& ObjectsToSerializeStruct, UObject* ReferencingObject, UObject*& Object, const int32 TokenIndex, const EGCTokenType TokenType, bool bAllowReferenceElimination); void UpdateDetailedStats(UObject* CurrentObject, uint32 DeltaCycles); void LogDetailedStatsSummary(); };

class FSampleCollector : public FReferenceCollector { / Needs to implement FReferenceCollector pure virtual functions };

class FSampleArrayPool { static FSampleArrayPool& Get(); /**