FTargetObjectContainer

Container specifically optimized for the operations we're doing here.

Choose your operating system:

Windows

macOS

Linux

References

Module

CoreUObject

Header

/Engine/Source/Runtime/CoreUObject/Public/Serialization/FindReferencersArchive.h

Include

#include "Serialization/FindReferencersArchive.h"

Syntax

class FTargetObjectContainer

Remarks

Container specifically optimized for the operations we're doing here.

  • Reduce allocations while adding.

  • Reduce cache misses while searching.

  • Fast to reset its values as they're all contiguous in memory.

  • Reduce iteration count to initialized values only when searching for values > 0 by stopping at ValueNum().

Functions

Name Description

Public function

void

 

AddObject

(
    UObject* Object
)

Public function

void

 

Freeze()

Public function Const

UObject *...

 

GetObject

(
    int32 Index
)

Public function Const

int32

 

GetRefCount

(
    int32 Index
)

This should not be queried past RefCountNum(), otherwise you're doing useless work.

Public function

int32 *

 

GetRefCountPtr

(
    UObject* Object
)

This will initialize and return the refcount associated with the object if it exists.

Public function Const

int32

 

RefCountNum()

Public function

void

 

Reserve

(
    int32 Num
)

Public function

void

 

ResetRefCounts()

Public function Const

const int32 ...

 

TryGetRefCountPtr

(
    UObject* Object
)

This won't initialize the refcount associated with the object even if it exists.