Choose your operating system:
Windows
macOS
Linux
Module |
|
Header |
/Engine/Source/Runtime/CoreUObject/Public/UObject/FastReferenceCollector.h |
Include |
#include "UObject/FastReferenceCollector.h" |
FGCArrayStruct * GetArrayStryctFromPool()
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(); /**