Choose your operating system:
Windows
macOS
Linux
Module |
|
Header |
/Engine/Source/Runtime/CoreUObject/Public/UObject/ObjectMacros.h |
Include |
#include "UObject/ObjectMacros.h" |
enum EInternalObjectFlags
{
None = 0,
Garbage = 1 << 21,
PersistentGarbage = 1 << 22,
ReachableInCluster = 1 << 23,
ClusterRoot = 1 << 24,
Native = 1 << 25,
Async = 1 << 26,
AsyncLoading = 1 << 27,
Unreachable = 1 << 28,
PendingKill = 1 << 29,
RootSet = 1 << 30,
PendingConstruction = 1 << 31,
GarbageCollectionKeepFlags = Native | Async | AsyncLoading,
MirroredFlags = Garbage | PendingKill,
AllFlags = Garbage | PersistentGarbage | ReachableInCluster | ClusterRoot | Native | Async | AsyncLoading | Unreachable | PendingKill | RootSet | PendingConstruction,
}
Name |
Description |
---|---|
None |
|
Garbage |
Garbage from logical point of view and should not be referenced. This flag is mirrored in EObjectFlags as RF_Garbage for performance. |
PersistentGarbage |
Same as above but referenced through a persistent reference so it can't be GC'd. |
ReachableInCluster |
External reference to object in cluster exists. |
ClusterRoot |
Root of a cluster. |
Native |
Native (UClass only). |
Async |
Object exists only on a different thread than the game thread. |
AsyncLoading |
Object is being asynchronously loaded. |
Unreachable |
Object is not reachable on the object graph. |
PendingKill |
Objects that are pending destruction (invalid for gameplay but valid objects). This flag is mirrored in EObjectFlags as RF_PendingKill for performance. |
RootSet |
Object will not be garbage collected, even if unreferenced. |
PendingConstruction |
Object didn't have its class constructor called yet (only the UObjectBase one to initialize its most basic members) |
GarbageCollectionKeepFlags |
|
MirroredFlags |
|
AllFlags |
Flags mirrored in EObjectFlags. |
Objects flags for internal use (GC, low level UObject code)