![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
Go to the source code of this file.
Classes | |
| class | FVTableHelper |
| struct | FReferencerInformation |
| struct | FReferencerInformationList |
| struct | FUObjectCppClassStaticFunctions |
| class | FRestoreForUObjectOverwrite |
Namespaces | |
| namespace | UC |
| namespace | UI |
| namespace | UF |
| namespace | UP |
| namespace | US |
| namespace | UM |
| namespace | GameplayTagsManager |
| namespace | UE |
| namespace | UE4 |
Typedefs | |
| typedef uint64 | ScriptPointerType |
| typedef uint32 | ERenameFlags |
| typedef void(* | FAsyncCompletionCallback) (UObject *LinkerRoot, void *CallbackUserData) |
| #define CASTCLASS_AllFlags ((EClassCastFlags)0xFFFFFFFFFFFFFFFF) |
| #define CLASS_AllFlags ((EClassFlags)0xFFFFFFFFu) |
| #define CLASS_Inherit |
Flags to inherit from base class
| #define CLASS_RecompilerClear ((EClassFlags)(CLASS_Inherit | CLASS_Abstract | CLASS_Native | CLASS_Intrinsic | CLASS_TokenStreamAssembled)) |
These flags will be cleared by the compiler when the class is parsed during script compilation
| #define CLASS_SaveInCompiledInClasses |
This is used as a mask for the flags put into generated code for "compiled in" classes.
| #define CLASS_ScriptInherit ((EClassFlags)(CLASS_Inherit | CLASS_EditInlineNew | CLASS_CollapseCategories)) |
These flags will be inherited from the base class only for non-intrinsic classes
| #define CLASS_ShouldNeverBeLoaded ((EClassFlags)(CLASS_Native | CLASS_Optional | CLASS_Intrinsic | CLASS_TokenStreamAssembled)) |
These flags will be cleared by the compiler when the class is parsed during script compilation
| #define COMPILED_IN_FLAGS | ( | TStaticFlags | ) | (TStaticFlags | CLASS_Intrinsic) |
| #define CONSTRUCT_RELOAD_VERSION_INFO | ( | VersionInfo, | |
| ... | |||
| ) | VersionInfo() |
| #define CPF_AllFlags ((EPropertyFlags)0xFFFFFFFFFFFFFFFF) |
Mask of all property flags
| #define CPF_ComputedFlags (CPF_IsPlainOldData | CPF_NoDestructor | CPF_ZeroConstructor | CPF_HasGetValueTypeHash) |
All the properties that should never be loaded or saved
| #define CPF_DevelopmentAssets (CPF_EditorOnly) |
All the properties that can be stripped for final release console builds
| #define CPF_InterfaceClearMask (CPF_ExportObject|CPF_InstancedReference|CPF_ContainsInstancedReference) |
The flags that should never be set on interface properties
| #define CPF_NativeAccessSpecifiers (CPF_NativeAccessSpecifierPublic | CPF_NativeAccessSpecifierProtected | CPF_NativeAccessSpecifierPrivate) |
All Native Access Specifier flags
| #define CPF_ParmFlags (CPF_Parm | CPF_OutParm | CPF_ReturnParm | CPF_RequiredParm | CPF_ReferenceParm | CPF_ConstParm ) |
All parameter flags
| #define CPF_PropagateToArrayInner (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper ) |
Flags that are propagated to properties inside containers
| #define CPF_PropagateToMapKey (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper | CPF_Edit ) |
| #define CPF_PropagateToMapValue (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper | CPF_Edit ) |
| #define CPF_PropagateToOptionalInner (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper | CPF_Edit ) |
| #define CPF_PropagateToSetElement (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper | CPF_Edit ) |
| #define CPF_TObjectPtrWrapper (CPF_UObjectWrapper | CPF_TObjectPtr) |
| #define DECLARE_CASTED_CLASS_INTRINSIC | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TStaticCastFlags | |||
| ) | DECLARE_CASTED_CLASS_INTRINSIC_WITH_API( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, NO_API) \ |
| #define DECLARE_CASTED_CLASS_INTRINSIC_NO_CTOR | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TStaticCastFlags, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CASTED_CLASS_INTRINSIC_NO_CTOR_NO_VTABLE_CTOR | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TStaticCastFlags, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CASTED_CLASS_INTRINSIC_WITH_API | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TStaticCastFlags, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CASTED_CLASS_INTRINSIC_WITH_API_NO_CTOR | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TStaticCastFlags, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CLASS | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TStaticCastFlags, | |||
| TPackage, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CLASS2 | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TStaticCastFlags, | |||
| TPackage, | |||
| TPrivateAccessor | |||
| ) |
| #define DECLARE_CLASS_INTRINSIC | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage | |||
| ) | DECLARE_CLASS_INTRINSIC_API(TClass,TSuperClass,TStaticFlags,TPackage, NO_API) |
| #define DECLARE_CLASS_INTRINSIC_API | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage, | |||
| TRequiredAPI | |||
| ) |
| #define DECLARE_CLASS_INTRINSIC_NO_CTOR | ( | TClass, | |
| TSuperClass, | |||
| TStaticFlags, | |||
| TPackage | |||
| ) |
| #define DECLARE_FARCHIVE_SERIALIZER | ( | TClass, | |
| API | |||
| ) | virtual API void Serialize(FArchive& Ar) override; |
| #define DECLARE_FSTRUCTUREDARCHIVE_SERIALIZER | ( | TClass, | |
| API | |||
| ) | virtual API void Serialize(FStructuredArchive::FRecord Record) override; |
| #define DECLARE_WITHIN | ( | TWithinClass | ) | DECLARE_WITHIN_INTERNAL( TWithinClass, false ) |
| #define DECLARE_WITHIN_INTERNAL | ( | TWithinClass, | |
| bCanUseOnCDO | |||
| ) |
| #define DECLARE_WITHIN_UPACKAGE | ( | ) | DECLARE_WITHIN_INTERNAL( UPackage, true ) |
| #define DEFINE_ABSTRACT_DEFAULT_CONSTRUCTOR_CALL | ( | TClass | ) | DEFINE_DEFAULT_CONSTRUCTOR_CALL(TClass) |
| #define DEFINE_ABSTRACT_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL | ( | TClass | ) | DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) |
| #define DEFINE_DEFAULT_CONSTRUCTOR_CALL | ( | TClass | ) | static void __DefaultConstructor(const FObjectInitializer& X) { new((EInternal*)X.GetObj())TClass; } |
| #define DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL | ( | TClass | ) | static void __DefaultConstructor(const FObjectInitializer& X) { new((EInternal*)X.GetObj())TClass(X); } |
| #define DEFINE_FORBIDDEN_DEFAULT_CONSTRUCTOR_CALL | ( | TClass | ) | static_assert(false, "You have to define " #TClass "::" #TClass "() or " #TClass "::" #TClass "(const FObjectInitializer&). This is required by UObject system to work correctly."); |
| #define DEFINE_VTABLE_PTR_HELPER_CTOR | ( | TClass | ) | DEFINE_VTABLE_PTR_HELPER_CTOR_NS(, TClass) |
| #define DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER | ( | TClass | ) | DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER_DUMMY() |
| #define DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER_DUMMY | ( | ) |
| #define DEFINE_VTABLE_PTR_HELPER_CTOR_NS | ( | Namespace, | |
| TClass | |||
| ) | Namespace TClass::TClass(FVTableHelper& Helper) : Super(Helper) {}; |
| #define EInternalObjectFlags_AsyncLoading (EInternalObjectFlags::AsyncLoadingPhase1 | EInternalObjectFlags::AsyncLoadingPhase2) |
| #define EInternalObjectFlags_GarbageCollectionKeepFlags (EInternalObjectFlags::Borrowed | EInternalObjectFlags::Native | EInternalObjectFlags::Async | EInternalObjectFlags::AsyncLoadingPhase1 | EInternalObjectFlags::AsyncLoadingPhase2 | EInternalObjectFlags::LoaderImport) |
| #define EInternalObjectFlags_MinFlagBitIndex 14 |
| #define EInternalObjectFlags_ReachabilityFlags (EInternalObjectFlags::ReachabilityFlag0 | EInternalObjectFlags::ReachabilityFlag1 | EInternalObjectFlags::ReachabilityFlag2 | EInternalObjectFlags::Unreachable) |
| #define EInternalObjectFlags_RefCountMask 0xFFFFFFFF |
| #define EInternalObjectFlags_RootFlags (EInternalObjectFlags::RootSet | EInternalObjectFlags_GarbageCollectionKeepFlags) |
| #define GENERATED_BODY | ( | ... | ) | BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_GENERATED_BODY); |
| #define GENERATED_BODY_LEGACY | ( | ... | ) | BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_GENERATED_BODY_LEGACY); |
| #define GENERATED_IINTERFACE_BODY | ( | ... | ) | GENERATED_BODY_LEGACY() |
| #define GENERATED_UCLASS_BODY | ( | ... | ) | GENERATED_BODY_LEGACY() |
| #define GENERATED_UINTERFACE_BODY | ( | ... | ) | GENERATED_BODY_LEGACY() |
| #define GENERATED_USTRUCT_BODY | ( | ... | ) | GENERATED_BODY() |
| #define IMPLEMENT_CORE_INTRINSIC_CLASS | ( | TClass, | |
| TSuperClass, | |||
| InitCode | |||
| ) | IMPLEMENT_INTRINSIC_CLASS(TClass, COREUOBJECT_API, TSuperClass, COREUOBJECT_API, CoreUObject, InitCode) |
| #define IMPLEMENT_FARCHIVE_SERIALIZER | ( | TClass | ) | void TClass::Serialize(FArchive& Ar) { TClass::Serialize(FStructuredArchiveFromArchive(Ar).GetSlot().EnterRecord()); } |
| #define IMPLEMENT_FSTRUCTUREDARCHIVE_SERIALIZER | ( | TClass | ) | void TClass::Serialize(FStructuredArchive::FRecord Record) { FArchiveUObjectFromStructuredArchive Ar(Record.EnterField(TEXT("BaseClassAutoGen"))); TClass::Serialize(Ar.GetArchive()); Ar.Close(); } |
| #define IMPLEMENT_INTRINSIC_CLASS | ( | TClass, | |
| TRequiredAPI, | |||
| TSuperClass, | |||
| TSuperRequiredAPI, | |||
| TPackage, | |||
| InitCode | |||
| ) |
| #define NO_API |
Empty API definition. Used as a placeholder parameter when no DLL export/import API is needed for a UObject class
| #define PKG_InMemoryOnly (EPackageFlags)(PKG_CompiledIn | PKG_NewlyCreated) |
Flag mask that indicates if this package is a package that exists in memory only.
| #define PKG_TransientFlags (PKG_NewlyCreated | PKG_IsSaving | PKG_ReloadingForCooker) |
| #define RELAY_CONSTRUCTOR | ( | TClass, | |
| TSuperClass | |||
| ) | TClass(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get()) : TSuperClass(ObjectInitializer) {} |
| #define REN_AllowPackageLinkerMismatch (0x0200) |
Prevents rename from clearing an object's linker when being renamed to a new package
| #define REN_DoNotDirty (0x0004) |
Indicates that the object (and new outer) should not be dirtied
| #define REN_DontCreateRedirectors (0x0010) |
Don't create an object redirector, even if the class is marked RF_Public
| #define REN_ForceGlobalUnique (0x0040) |
Force unique names across all packages not just within the scope of the new outer
| #define REN_ForceNoResetLoaders (0x0001) |
UE_DEPRECATED(5.5, "Rename will no longer call ResetLoaders making this flag no longer needed.") - Rename won't call ResetLoaders or flush async loading. You should pass this if you are renaming a deep subobject and do not need to reset loading for the outer package
| #define REN_None (0x0000) |
Default rename behavior
| #define REN_NonTransactional (0x0020) |
Don't call Modify() on the objects, so they won't be stored in the transaction buffer
| #define REN_SkipComponentRegWork (0x0100) |
Prevents renaming from unregistering/registering all components
| #define REN_SkipGeneratedClasses (0x0080) |
Prevent renaming of any child generated classes and CDO's in blueprints
| #define REN_Test (0x0002) |
Just test to make sure that the rename is guaranteed to succeed if an non test rename immediately follows
| #define RF_AllFlags (EObjectFlags)0xffffffff |
All flags, used mainly for error checking.
Mask for all object flags
Flags to load from unreal asset files
| #define RF_PropagateToSubObjects ((EObjectFlags)(RF_Public | RF_ArchetypeObject | RF_Transactional | RF_Transient)) |
Sub-objects will inherit these flags from their SuperObject
| #define RIGVM_METHOD | ( | ... | ) |
| #define UCLASS | ( | ... | ) | BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_PROLOG) |
| #define UDELEGATE | ( | ... | ) |
| #define UE_DELETE_COPY_MOVE_CONSTRUCTORS | ( | TClass | ) | TClass(const TClass&) = delete; TClass(TClass&&) = delete; |
| #define UE_INLINE_GENERATED_CPP_BY_NAME | ( | name | ) | UE_INLINE_STRINGIFY(name.gen.cpp) |
| #define UE_INLINE_STRINGIFY | ( | name | ) | #name |
| #define UE_WITH_CONSTINIT_UOBJECT 0 |
| #define UENUM | ( | ... | ) |
| #define UFUNCTION | ( | ... | ) |
| #define UMETA | ( | ... | ) |
| #define UOBJECT_CPPCLASS_STATICFUNCTIONS_ALLCONFIGS | ( | TClass | ) | FUObjectCppClassStaticFunctions::AddReferencedObjectsType(&TClass::AddReferencedObjects) |
| #define UPARAM | ( | ... | ) |
| #define USE_COMPILED_IN_NATIVES 1 |
| #define USTRUCT | ( | ... | ) |
| #define USTRUCT_FAST_ISCHILDOF_COMPARE_WITH_OUTERWALK 0 |
| #define USTRUCT_FAST_ISCHILDOF_IMPL USTRUCT_ISCHILDOF_STRUCTARRAY |
| #define USTRUCT_ISCHILDOF_OUTERWALK 1 |
| #define USTRUCT_ISCHILDOF_STRUCTARRAY 2 |
| #define VINTERFACES | ( | ... | ) | BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_VINTERFACES) |
| #define VMODULE | ( | ... | ) |
Options to the UObject::Rename() function, bit flag
| typedef void(* FAsyncCompletionCallback) (UObject *LinkerRoot, void *CallbackUserData) |
Represents a serializable object pointer in blueprint bytecode. This is always 64-bits, even on 32-bit platforms.
|
strong |
Flags used for quickly casting classes of certain types; all class cast flags are inherited
This MUST be kept in sync with EClassCastFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
Flags describing a class.
This MUST be kept in sync with EClassFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
| Enumerator | |
|---|---|
| CLASS_None | No Flags |
| CLASS_Abstract | Class is abstract and can't be instantiated directly. |
| CLASS_DefaultConfig | Save object configuration only to Default INIs, never to local INIs. Must be combined with CLASS_Config |
| CLASS_Config | Load object configuration at construction time. |
| CLASS_Transient | This object type can't be saved; null it out at save time. |
| CLASS_Optional | This object type may not be available in certain context. (i.e. game runtime or in certain configuration). Optional class data is saved separately to other object types. (i.e. might use sidecar files) |
| CLASS_MatchedSerializers | |
| CLASS_ProjectUserConfig | Indicates that the config settings for this class will be saved to Project/User*.ini (similar to CLASS_GlobalUserConfig) |
| CLASS_Native | Class is a native class - native interfaces will have CLASS_Native set, but not RF_MarkAsNative |
| CLASS_NotPlaceable | Do not allow users to create in the editor. |
| CLASS_PerObjectConfig | Handle object configuration on a per-object basis, rather than per-class. |
| CLASS_ReplicationDataIsSetUp | Whether SetUpRuntimeReplicationData still needs to be called for this class |
| CLASS_EditInlineNew | Class can be constructed from editinline New button. |
| CLASS_CollapseCategories | Display properties in the editor without using categories. |
| CLASS_Interface | Class is an interface |
| CLASS_PerPlatformConfig | Config for this class is overridden in platform inis, reload when previewing platforms |
| CLASS_Const | all properties and functions in this class are const and should be exported as const |
| CLASS_NeedsDeferredDependencyLoading | Class flag indicating objects of this class need deferred dependency loading |
| CLASS_CompiledFromBlueprint | Indicates that the class was created from blueprint source material |
| CLASS_MinimalAPI | Indicates that only the bare minimum bits of this class should be DLL exported/imported |
| CLASS_RequiredAPI | Indicates this class must be DLL exported/imported (along with all of it's members) |
| CLASS_DefaultToInstanced | Indicates that references to this class default to instanced. Used to be subclasses of UComponent, but now can be any UObject |
| CLASS_TokenStreamAssembled | Indicates that the parent token stream has been merged with ours. |
| CLASS_HasInstancedReference | Class has component properties. |
| CLASS_Hidden | Don't show this class in the editor class browser or edit inline new menus. |
| CLASS_Deprecated | Don't save objects of this class when serializing |
| CLASS_HideDropDown | Class not shown in editor drop down for class selection |
| CLASS_GlobalUserConfig | Class settings are saved to <AppData>/..../Blah.ini (as opposed to CLASS_DefaultConfig) |
| CLASS_Intrinsic | Class was declared directly in C++ and has no boilerplate generated by UnrealHeaderTool |
| CLASS_Constructed | Class has already been constructed (maybe in a previous DLL version before hot-reload). |
| CLASS_ConfigDoNotCheckDefaults | Indicates that object configuration will not check against ini base/defaults when serialized |
| CLASS_NewerVersionExists | Class has been consigned to oblivion as part of a blueprint recompile, and a newer version currently exists. |
|
strong |
Flags describing a UEnum
This MUST be kept in sync with EEnumFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
| Enumerator | |
|---|---|
| None | |
| Flags | |
| NewerVersionExists | |
|
strong |
Objects flags for internal use (GC, low level UObject code)
This MUST be kept in sync with EInternalObjectFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
| Enumerator | |
|---|---|
| None | |
| Remote | |
| RemoteReference | |
| Borrowed | |
| ReachabilityFlag0 | One of the flags used by Garbage Collector to determine UObject's reachability state. |
| ReachabilityFlag1 | One of the flags used by Garbage Collector to determine UObject's reachability state. |
| ReachabilityFlag2 | One of the flags used by Garbage Collector to determine UObject's reachability state. |
| AutoRTFMConstructionAborted | |
| LoaderImport | Object is ready to be imported by another package during loading. |
| Garbage | Garbage from logical point of view and should not be referenced. This flag is mirrored in EObjectFlags as RF_Garbage for performance. |
| AsyncLoadingPhase1 | Object is being asynchronously loaded. |
| 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. |
| AsyncLoadingPhase2 | Object is being asynchronously loaded. |
| Unreachable | Object is not reachable on the object graph. |
| UE_DEPRECATED | Object currently has ref-counts associated with it. |
| 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) |
Flags for loading objects, used by LoadObject() and related functions and passed as a uint32
|
strong |
Flags describing an object instance When modifying this enum, update the LexToString implementation!
| Enumerator | |
|---|---|
| RF_NoFlags | No flags, used to avoid a cast. |
| RF_Public | Object is visible outside its package. |
| RF_Standalone | Keep object around for editing even if unreferenced. |
| RF_MarkAsNative | Object (UField) will be marked as native on construction (DO NOT USE THIS FLAG in HasAnyFlags() etc) |
| RF_Transactional | Object is transactional. |
| RF_ClassDefaultObject | This object is used as the default template for all instances of a class. One object is created for each class. |
| RF_ArchetypeObject | This object can be used as a template for instancing objects. This is set on all types of object templates. |
| RF_Transient | Don't save object. |
| RF_MarkAsRootSet | Object will be marked as root set on construction and not be garbage collected, even if unreferenced (DO NOT USE THIS FLAG in HasAnyFlags() etc) |
| RF_TagGarbageTemp | This is a temp user flag for various utilities that need to use the garbage collector. The garbage collector itself does not interpret it. |
| RF_NeedInitialization | This object has not completed its initialization process. Cleared when ~FObjectInitializer completes. |
| RF_NeedLoad | During load, indicates object needs loading. |
| UE_DEPRECATED | BulkData identifiers should be regenerated as they are loaded. Keep this object during garbage collection because it's still being used by the cooker. |
| RF_NeedPostLoad | Object needs to be postloaded. |
| RF_NeedPostLoadSubobjects | During load, indicates that the object still needs to instance subobjects and fixup serialized component references. |
| RF_NewerVersionExists | Object has been consigned to oblivion due to its owner package being reloaded, and a newer version currently exists. |
| RF_BeginDestroyed | BeginDestroy has been called on the object. |
| RF_FinishDestroyed | FinishDestroy has been called on the object. |
| RF_BeingRegenerated | Flagged on UObjects that are used to create UClasses (e.g. Blueprints) while they are regenerating their UClass on load (See FLinkerLoad::CreateExport()), as well as UClass objects in the midst of being created. |
| RF_DefaultSubObject | Flagged on subobject templates that were created in a class constructor, and all instances created from those templates. |
| RF_WasLoaded | Flagged on UObjects that were loaded. |
| RF_TextExportTransient | Do not export object to text form (e.g. copy/paste). Generally used for sub-objects that can be regenerated from data in their parent object. |
| RF_LoadCompleted | Object has been completely serialized by linkerload at least once. DO NOT USE THIS FLAG, It should be replaced with RF_WasLoaded. |
| RF_InheritableComponentTemplate | Flagged on subobject templates stored inside a class instead of the class default object, they are instanced after default subobjects. |
| RF_DuplicateTransient | Object should not be included in any type of duplication (copy/paste, binary duplication, etc.) |
| RF_StrongRefOnFrame | References to this object from persistent function frame are handled as strong ones. |
| RF_NonPIEDuplicateTransient | Object should not be included for duplication unless it's being duplicated for a PIE session. |
| RF_ImmutableDefaultObject | Hidden version of the class default object that cannot and will never be mutated. |
| RF_WillBeLoaded | This object was constructed during load and will be loaded shortly. |
| RF_HasExternalPackage | This object has an external package assigned and should look it up when getting the outermost package. |
| RF_MigratingAsset | Objects marked as MigratingAsset can be migrated to another server even if they've been loaded from disk. |
| RF_MirroredGarbage | Garbage from logical point of view and should not be referenced. This flag is mirrored in EInternalObjectFlags as Garbage for performance. |
| RF_AllocatedInSharedPage | Allocated from a ref-counted page shared with other UObjects. |
Package flags, passed into UPackage::SetPackageFlags and related functions
This MUST be kept in sync with EPackageFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
| Enumerator | |
|---|---|
| PKG_None | No flags. |
| PKG_NewlyCreated | Newly created package, not saved yet. In editor only. |
| PKG_ClientOptional | Purely optional for clients. |
| PKG_ServerSideOnly | Only needed on the server side. |
| PKG_CompiledIn | This package is from "compiled in" classes. |
| PKG_ForDiffing | This package was loaded just for the purposes of diffing. |
| PKG_EditorOnly | This is editor-only package (for example: editor module script package) |
| PKG_Developer | Developer module. |
| PKG_UncookedOnly | Loaded only in uncooked builds (i.e. runtime in editor) |
| PKG_Cooked | Package is cooked. |
| PKG_ContainsNoAsset | Package doesn't contain any asset object (although asset tags can be present) |
| PKG_NotExternallyReferenceable | Objects in this package cannot be referenced in a different plugin or mount point (i.e /Game -> /Engine) |
| PKG_AccessSpecifierEpicInternal | Objects in this package can only be referenced in a different plugin or mount point by Epic. |
| PKG_UnversionedProperties | Uses unversioned property serialization instead of versioned tagged property serialization. |
| PKG_ContainsMapData | Contains map data (UObjects only referenced by a single ULevel) but is stored in a different package. |
| PKG_IsSaving | Temporarily set on a package while it is being saved. |
| PKG_Compiling | package is currently being compiled |
| PKG_ContainsMap | Set if the package contains a ULevel/ UWorld object. |
| PKG_RequiresLocalizationGather | Set if the package contains any data to be gathered by localization. |
| PKG_LoadUncooked | This package must be loaded uncooked from IoStore/ZenStore (set only when cooking, to communicate to zenstore via the PackageStoreOptimizer) |
| PKG_PlayInEditor | Set if the package was created for the purpose of PIE. |
| PKG_ContainsScript | Package is allowed to contain UClass objects. |
| PKG_DisallowExport | Editor should not export asset in this package. |
| PKG_CookGenerated | This package was generated by the cooker and does not exist in the WorkspaceDomain. |
| PKG_DynamicImports | This package should resolve dynamic imports from its export at runtime. |
| PKG_RuntimeGenerated | This package contains elements that are runtime generated, and may not follow standard loading order rules. |
| PKG_ReloadingForCooker | This package is reloading in the cooker, try to avoid getting data we will never need. We won't save this package. |
| PKG_FilterEditorOnly | Package has editor-only data filtered out. |
Flags associated with each property in a class, overriding the property's default behavior.
This MUST be kept in sync with EPackageFlags defined in Engine\Source\Programs\Shared\EpicGames.Core\UnrealEngineTypes.cs
| Enumerator | |
|---|---|
| CPF_None | |
| CPF_Edit | Property is user-settable in the editor. |
| CPF_ConstParm | This is a constant function parameter. |
| CPF_BlueprintVisible | This property can be read by blueprint code. |
| CPF_ExportObject | Object can be exported with actor. |
| CPF_BlueprintReadOnly | This property cannot be modified by blueprint code. |
| CPF_Net | Property is relevant to network replication. |
| CPF_EditFixedSize | Indicates that elements of an array can be modified, but its size cannot be changed. |
| CPF_Parm | Function/When call parameter. |
| CPF_OutParm | Value is copied out after function call. |
| CPF_ZeroConstructor | memset is fine for construction |
| CPF_ReturnParm | Return value. |
| CPF_DisableEditOnTemplate | Disable editing of this property on an archetype/sub-blueprint. |
| CPF_NonNullable | Object property can never be null. |
| CPF_Transient | Property is transient: shouldn't be saved or loaded, except for Blueprint CDOs. |
| CPF_Config | Property should be loaded/saved as permanent profile. |
| CPF_RequiredParm | Parameter must be linked explicitly in blueprint. Leaving the parameter out results in a compile error. |
| CPF_DisableEditOnInstance | Disable editing on an instance of this class. |
| CPF_EditConst | Property is uneditable in the editor. |
| CPF_GlobalConfig | Load config from base class, not subclass. |
| CPF_InstancedReference | Property is a component references. |
| CPF_ExperimentalExternalObjects | Property saves objects in separate files, breaks hard links and reload them based on discovery. |
| CPF_DuplicateTransient | Property should always be reset to the default value during any type of duplication (copy/paste, binary duplication, etc.) |
| CPF_SaveGame | Property should be serialized for save games, this is only checked for game-specific archives with ArIsSaveGame. |
| CPF_NoClear | Hide clear button. |
| CPF_Virtual | Property is defined on an interface and does not include a useful Offset_Internal. |
| CPF_ReferenceParm | Value is passed by reference; CPF_OutParam and CPF_Param should also be set. |
| CPF_BlueprintAssignable | MC Delegates only. Property should be exposed for assigning in blueprint code. |
| CPF_Deprecated | Property is deprecated. Read it from an archive, but don't save it. |
| CPF_IsPlainOldData | If this is set, then the property can be memcopied instead of CopyCompleteValue / CopySingleValue. |
| CPF_RepSkip | Not replicated. For non replicated properties in replicated structs. |
| CPF_RepNotify | Notify actors when a property is replicated. |
| CPF_Interp | interpolatable property for use with cinematics |
| CPF_NonTransactional | Property isn't transacted. |
| CPF_EditorOnly | Property should only be loaded in the editor. |
| CPF_NoDestructor | No destructor. |
| CPF_AutoWeak | Only used for weak pointers, means the export type is autoweak. |
| CPF_ContainsInstancedReference | Property contains component references. |
| CPF_AssetRegistrySearchable | asset instances will add properties with this flag to the asset registry automatically |
| CPF_SimpleDisplay | The property is visible by default in the editor details view. |
| CPF_AdvancedDisplay | The property is advanced and not visible by default in the editor details view. |
| CPF_Protected | property is protected from the perspective of script |
| CPF_BlueprintCallable | MC Delegates only. Property should be exposed for calling in blueprint code. |
| CPF_BlueprintAuthorityOnly | MC Delegates only. This delegate accepts (only in blueprint) only events with BlueprintAuthorityOnly. |
| CPF_TextExportTransient | Property shouldn't be exported to text format (e.g. copy/paste) |
| CPF_NonPIEDuplicateTransient | Property should only be copied in PIE. |
| CPF_ExposeOnSpawn | Property is exposed on spawn. |
| CPF_PersistentInstance | A object referenced by the property is duplicated like a component. (Each actor should have an own instance.) |
| CPF_UObjectWrapper | Property was parsed as a wrapper class like TSubclassOf<T>, FScriptInterface etc., rather than a USomething*. |
| CPF_HasGetValueTypeHash | This property can generate a meaningful hash value. |
| CPF_NativeAccessSpecifierPublic | Public native access specifier. |
| CPF_NativeAccessSpecifierProtected | Protected native access specifier. |
| CPF_NativeAccessSpecifierPrivate | Private native access specifier. |
| CPF_SkipSerialization | Property shouldn't be serialized, can still be exported to text. |
| CPF_TObjectPtr | Property is a TObjectPtr<T> instead of a USomething*. Need to differentiate between TObjectclassOf and TObjectPtr. |
| CPF_ExperimentalOverridableLogic | ****Experimental*** Property will use different logic to serialize knowing what changes are done against its default use the overridable information provided by the overridable manager on the object |
| CPF_ExperimentalAlwaysOverriden | ****Experimental*** Property should never inherit from the parent when using overridable serialization |
| CPF_ExperimentalNeverOverriden | ****Experimental*** Property should never be overridden when using overridable serialization |
| CPF_AllowSelfReference | Enables the instancing graph self referencing logic, delegates and verse function are already using this. |
|
strong |
Flags for saving objects/packages, passed into UPackage::SavePackage() as a uint32
| Enumerator | |
|---|---|
| SAVE_None | No flags. |
| SAVE_NoError | Don't generate errors on save. |
| SAVE_FromAutosave | Used to indicate this save was initiated automatically. |
| SAVE_KeepDirty | Do not clear the dirty flag when saving. |
| UE_DEPRECATED | BulkData identifiers should be regenerated as they are loaded. Keep this object during garbage collection because it's still being used by the cooker. |
| SAVE_Async | Save to a memory writer, then actually write to disk async. |
| SAVE_Unversioned_Native | Save all versions as zero. Upon load this is changed to the current version. This is only reasonable to use with full cooked builds for distribution. |
| SAVE_CutdownPackage | Saving cutdown packages in a temp location WITHOUT renaming the package. |
| SAVE_KeepEditorOnlyCookedPackages | Keep packages which are marked as editor only even though we are cooking. |
| SAVE_Concurrent | We are save packages in multiple threads at once and should not call non-threadsafe functions or rely on globals. GIsSavingPackage should be set and PreSave/Postsave functions should be called before/after the entire concurrent save. |
| UE_DEPRECATED | BulkData identifiers should be regenerated as they are loaded. Keep this object during garbage collection because it's still being used by the cooker. |
| SAVE_BulkDataByReference | When saving to a different file than the package's LoadedPath, point bulkdata in the new file to be loaded from the original file. |
| SAVE_Unversioned_Properties | Properties are saved without property name information, and are saved/loaded in the order of the current binary. This is only reasonable to use with full cooked builds for distribution, or with a domain that selects the payload matching a given version externally. |
| SAVE_Optional | Indicate that we to save optional exports. This flag is only valid while cooking. Optional exports are filtered if not specified during cooking. |
| SAVE_AllowTimeout | If present, if SavePackage is blocked by an asynchronous operation, it will quickly fail with ESavePackageResult::Timeout, otherwise it will wait for a while and then fail with ESavePackageResult::Error. |
| SAVE_RehydratePayloads | Any virtualized payloads in the package should be pulled and stored locally in the package file during the save. |
| SAVE_CookSoftPackageReferences | Indicate that we want to save soft package references for cooked packages. |
| SAVE_Unversioned | |
| ENUM_CLASS_FLAGS | ( | EClassFlags | ) |
| ENUM_CLASS_FLAGS | ( | EInternalObjectFlags | ) |
| ENUM_CLASS_FLAGS | ( | EObjectFlags | ) |
| ENUM_CLASS_FLAGS | ( | EPackageFlags | ) |
| ENUM_CLASS_FLAGS | ( | EPropertyObjectReferenceType | ) |
| COREUOBJECT_API FString LexToString | ( | EObjectFlags | Flags | ) |
| COREUOBJECT_API const TCHAR * LexToString | ( | EPropertyObjectReferenceType | Type | ) |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |