24#if PLATFORM_VTABLE_AT_END_OF_CLASS
25#error "not supported in UE"
28#ifndef USE_COMPILED_IN_NATIVES
29#define USE_COMPILED_IN_NATIVES 1
33#define THREADSAFE_UOBJECTS 1
36#define USTRUCT_ISCHILDOF_OUTERWALK 1
37#define USTRUCT_ISCHILDOF_STRUCTARRAY 2
43 #define USTRUCT_FAST_ISCHILDOF_IMPL USTRUCT_ISCHILDOF_OUTERWALK
45 #define USTRUCT_FAST_ISCHILDOF_IMPL USTRUCT_ISCHILDOF_STRUCTARRAY
49#define USTRUCT_FAST_ISCHILDOF_COMPARE_WITH_OUTERWALK 0
52#ifndef UE_WITH_CONSTINIT_UOBJECT
53 #define UE_WITH_CONSTINIT_UOBJECT 0
57#ifndef UE_CONSTINIT_UOBJECT_DECL
58 #define UE_CONSTINIT_UOBJECT_DECL constinit
102 SAVE_KeepGUID UE_DEPRECATED(5.6,
"KeepPackageGUIDOnSave is no longer supported, because package save no longer records arbitrary guids but instead records a hash of the package's bytes - PackageSavedHash.") = 0x00000008,
165#define PKG_TransientFlags (PKG_NewlyCreated | PKG_IsSaving | PKG_ReloadingForCooker)
168#define PKG_InMemoryOnly (EPackageFlags)(PKG_CompiledIn | PKG_NewlyCreated)
281#define CLASS_Inherit ((EClassFlags)(CLASS_Transient | CLASS_Optional | CLASS_DefaultConfig | CLASS_Config | CLASS_PerObjectConfig | CLASS_ConfigDoNotCheckDefaults | CLASS_NotPlaceable \
282 | CLASS_Const | CLASS_HasInstancedReference | CLASS_Deprecated | CLASS_DefaultToInstanced | CLASS_GlobalUserConfig | CLASS_ProjectUserConfig | CLASS_PerPlatformConfig | CLASS_NeedsDeferredDependencyLoading))
285#define CLASS_RecompilerClear ((EClassFlags)(CLASS_Inherit | CLASS_Abstract | CLASS_Native | CLASS_Intrinsic | CLASS_TokenStreamAssembled))
288#define CLASS_ShouldNeverBeLoaded ((EClassFlags)(CLASS_Native | CLASS_Optional | CLASS_Intrinsic | CLASS_TokenStreamAssembled))
291#define CLASS_ScriptInherit ((EClassFlags)(CLASS_Inherit | CLASS_EditInlineNew | CLASS_CollapseCategories))
294#define CLASS_SaveInCompiledInClasses ((EClassFlags)(\
296 CLASS_DefaultConfig | \
297 CLASS_GlobalUserConfig | \
298 CLASS_ProjectUserConfig | \
299 CLASS_PerPlatformConfig | \
304 CLASS_NotPlaceable | \
305 CLASS_PerObjectConfig | \
306 CLASS_PerPlatformConfig | \
307 CLASS_ConfigDoNotCheckDefaults | \
308 CLASS_EditInlineNew | \
309 CLASS_CollapseCategories | \
311 CLASS_DefaultToInstanced | \
312 CLASS_HasInstancedReference | \
315 CLASS_HideDropDown | \
319 CLASS_RequiredAPI | \
320 CLASS_MatchedSerializers | \
321 CLASS_NeedsDeferredDependencyLoading))
323#define CLASS_AllFlags ((EClassFlags)0xFFFFFFFFu)
402#define CASTCLASS_AllFlags ((EClassCastFlags)0xFFFFFFFFFFFFFFFF)
483#define CPF_NativeAccessSpecifiers (CPF_NativeAccessSpecifierPublic | CPF_NativeAccessSpecifierProtected | CPF_NativeAccessSpecifierPrivate)
486#define CPF_ParmFlags (CPF_Parm | CPF_OutParm | CPF_ReturnParm | CPF_RequiredParm | CPF_ReferenceParm | CPF_ConstParm )
489#define CPF_PropagateToArrayInner (CPF_ExportObject | CPF_PersistentInstance | CPF_InstancedReference | CPF_ContainsInstancedReference | CPF_Config | CPF_EditConst | CPF_Deprecated | CPF_EditorOnly | CPF_AutoWeak | CPF_UObjectWrapper )
490#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 )
491#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 )
492#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 )
493#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 )
496#define CPF_InterfaceClearMask (CPF_ExportObject|CPF_InstancedReference|CPF_ContainsInstancedReference)
499#define CPF_DevelopmentAssets (CPF_EditorOnly)
502#define CPF_ComputedFlags (CPF_IsPlainOldData | CPF_NoDestructor | CPF_ZeroConstructor | CPF_HasGetValueTypeHash)
504#define CPF_TObjectPtrWrapper (CPF_UObjectWrapper | CPF_TObjectPtr)
506#define CPF_AllFlags ((EPropertyFlags)0xFFFFFFFFFFFFFFFF)
602UE_DEPRECATED(5.4,
"RF_InternalPendingKill should no longer be used. Use IsValid(Object) instead.")
612#define RF_AllFlags (EObjectFlags)0xffffffff
615#define RF_Load ((EObjectFlags)(RF_Public | RF_Standalone | RF_Transactional | RF_ClassDefaultObject | RF_ArchetypeObject | RF_DefaultSubObject | RF_TextExportTransient | RF_InheritableComponentTemplate | RF_DuplicateTransient | RF_NonPIEDuplicateTransient | RF_MigratingAsset))
618#define RF_PropagateToSubObjects ((EObjectFlags)(RF_Public | RF_ArchetypeObject | RF_Transactional | RF_Transient))
634#if UE_WITH_REMOTE_OBJECT_HANDLE
675#define EInternalObjectFlags_MinFlagBitIndex 14
676#define EInternalObjectFlags_RefCountMask 0xFFFFFFFF
677#define EInternalObjectFlags_GarbageCollectionKeepFlags (EInternalObjectFlags::Borrowed | EInternalObjectFlags::Native | EInternalObjectFlags::Async | EInternalObjectFlags::AsyncLoadingPhase1 | EInternalObjectFlags::AsyncLoadingPhase2 | EInternalObjectFlags::LoaderImport)
678#define EInternalObjectFlags_AllFlags (EInternalObjectFlags::Remote | EInternalObjectFlags::RemoteReference | EInternalObjectFlags::Borrowed | EInternalObjectFlags::ReachabilityFlag0 | EInternalObjectFlags::ReachabilityFlag1 | EInternalObjectFlags::ReachabilityFlag2 | EInternalObjectFlags::AutoRTFMConstructionAborted | EInternalObjectFlags::LoaderImport | EInternalObjectFlags::Garbage | EInternalObjectFlags::ReachableInCluster | EInternalObjectFlags::ClusterRoot | EInternalObjectFlags::Native | EInternalObjectFlags::Async | EInternalObjectFlags::AsyncLoadingPhase1 | EInternalObjectFlags::AsyncLoadingPhase2 | EInternalObjectFlags::RootSet | EInternalObjectFlags::PendingConstruction | EInternalObjectFlags::Unreachable)
679#define EInternalObjectFlags_RootFlags (EInternalObjectFlags::RootSet | EInternalObjectFlags_GarbageCollectionKeepFlags)
680#define EInternalObjectFlags_ReachabilityFlags (EInternalObjectFlags::ReachabilityFlag0 | EInternalObjectFlags::ReachabilityFlag1 | EInternalObjectFlags::ReachabilityFlag2 | EInternalObjectFlags::Unreachable)
681#define EInternalObjectFlags_AsyncLoading (EInternalObjectFlags::AsyncLoadingPhase1 | EInternalObjectFlags::AsyncLoadingPhase2)
736#define DEFAULT_OBJECT_PREFIX TEXT("Default__")
744#define UPROPERTY(...)
745#define UFUNCTION(...)
750#define UDELEGATE(...)
751#define RIGVM_METHOD(...)
755#define UE_INLINE_STRINGIFY(name) #name
756#define UE_INLINE_GENERATED_CPP_BY_NAME(name) UE_INLINE_STRINGIFY(name.gen.cpp)
759#define BODY_MACRO_COMBINE_INNER(A,B,C,D) A##B##C##D
760#define BODY_MACRO_COMBINE(A,B,C,D) BODY_MACRO_COMBINE_INNER(A,B,C,D)
764#define GENERATED_BODY_LEGACY(...) BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_GENERATED_BODY_LEGACY);
765#define GENERATED_BODY(...) BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_GENERATED_BODY);
767#define GENERATED_USTRUCT_BODY(...) GENERATED_BODY()
768#define GENERATED_UCLASS_BODY(...) GENERATED_BODY_LEGACY()
769#define GENERATED_UINTERFACE_BODY(...) GENERATED_BODY_LEGACY()
770#define GENERATED_IINTERFACE_BODY(...) GENERATED_BODY_LEGACY()
772#if UE_BUILD_DOCS || defined(__INTELLISENSE__ )
774#define VINTERFACES(...)
776#define UCLASS(...) BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_PROLOG)
777#define VINTERFACES(...) BODY_MACRO_COMBINE(CURRENT_FILE_ID,_,__LINE__,_VINTERFACES)
780#define UINTERFACE(...) UCLASS()
783#define DECLARE_FUNCTION(func) static void func( UObject* Context, FFrame& Stack, RESULT_DECL )
786#define DEFINE_FUNCTION(func) void func( UObject* Context, FFrame& Stack, RESULT_DECL )
1799#define RELAY_CONSTRUCTOR(TClass, TSuperClass) TClass(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get()) : TSuperClass(ObjectInitializer) {}
1800#define UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) TClass(const TClass&) = delete; TClass(TClass&&) = delete;
1802#if !USE_COMPILED_IN_NATIVES
1803#define COMPILED_IN_FLAGS(TStaticFlags) (TStaticFlags& ~(CLASS_Intrinsic))
1805#define COMPILED_IN_FLAGS(TStaticFlags) (TStaticFlags | CLASS_Intrinsic)
1808#define DECLARE_SERIALIZER( TClass ) \
1809 friend FArchive &operator<<( FArchive& Ar, TClass*& Res ) \
1811 return Ar << (UObject*&)Res; \
1813 friend void operator<<(FStructuredArchive::FSlot InSlot, TClass*& Res) \
1815 InSlot << (UObject*&)Res; \
1818#define IMPLEMENT_FARCHIVE_SERIALIZER( TClass ) void TClass::Serialize(FArchive& Ar) { TClass::Serialize(FStructuredArchiveFromArchive(Ar).GetSlot().EnterRecord()); }
1819#define IMPLEMENT_FSTRUCTUREDARCHIVE_SERIALIZER( TClass ) void TClass::Serialize(FStructuredArchive::FRecord Record) { FArchiveUObjectFromStructuredArchive Ar(Record.EnterField(TEXT("BaseClassAutoGen"))); TClass::Serialize(Ar.GetArchive()); Ar.Close(); }
1820#define DECLARE_FARCHIVE_SERIALIZER( TClass, API ) virtual API void Serialize(FArchive& Ar) override;
1821#define DECLARE_FSTRUCTUREDARCHIVE_SERIALIZER( TClass, API ) virtual API void Serialize(FStructuredArchive::FRecord Record) override;
1824#define CONSTRUCT_RELOAD_VERSION_INFO(VersionInfo, ...) VersionInfo { __VA_ARGS__ }
1826#define CONSTRUCT_RELOAD_VERSION_INFO(VersionInfo, ...) VersionInfo()
1833#define DECLARE_CLASS( TClass, TSuperClass, TStaticFlags, TStaticCastFlags, TPackage, TRequiredAPI ) \
1834 TRequiredAPI static UClass* GetPrivateStaticClass(); \
1835 DECLARE_CLASS2(TClass, TSuperClass, TStaticFlags, TStaticCastFlags, TPackage, GetPrivateStaticClass )
1837#define DECLARE_CLASS2( TClass, TSuperClass, TStaticFlags, TStaticCastFlags, TPackage, TPrivateAccessor ) \
1839 friend struct FUObjectCppClassStaticFunctions; \
1842 static constexpr EClassFlags StaticClassFlags=EClassFlags(TStaticFlags); \
1844 typedef TSuperClass Super;\
1846 typedef TClass ThisClass;\
1848 inline static UClass* StaticClass() \
1850 return TPrivateAccessor(); \
1853 inline static const TCHAR* StaticPackage() \
1858 inline constexpr static EClassCastFlags StaticClassCastFlags() \
1860 return TStaticCastFlags; \
1863 inline consteval static EClassCastFlags StaticAllClassCastFlags() \
1865 if constexpr (std::is_same_v<ThisClass, Super>) { return StaticClassCastFlags(); } \
1866 return StaticClassCastFlags() | Super::StaticAllClassCastFlags(); \
1869 inline void* operator new(const size_t InSize, EInternal InInternalOnly, UObject* InOuter = GetTransientPackageAsObject(), FName InName = NAME_None, EObjectFlags InSetFlags = RF_NoFlags) \
1871 return StaticAllocateObject(StaticClass(), InOuter, InName, InSetFlags); \
1874 inline void* operator new( const size_t InSize, EInternal* InMem ) \
1876 return (void*)InMem; \
1879 inline void operator delete(void* InMem) \
1881 ::operator delete(InMem); \
1884#define DEFINE_FORBIDDEN_DEFAULT_CONSTRUCTOR_CALL(TClass) \
1885 static_assert(false, "You have to define " #TClass "::" #TClass "() or " #TClass "::" #TClass "(const FObjectInitializer&). This is required by UObject system to work correctly.");
1887#define DEFINE_DEFAULT_CONSTRUCTOR_CALL(TClass) \
1888 static void __DefaultConstructor(const FObjectInitializer& X) { new((EInternal*)X.GetObj())TClass; }
1890#define DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1891 static void __DefaultConstructor(const FObjectInitializer& X) { new((EInternal*)X.GetObj())TClass(X); }
1893#if CHECK_PUREVIRTUALS
1894#define DEFINE_ABSTRACT_DEFAULT_CONSTRUCTOR_CALL(TClass) \
1895 static void __DefaultConstructor(const FObjectInitializer& X) { }
1897#define DEFINE_ABSTRACT_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1898 static void __DefaultConstructor(const FObjectInitializer& X) { }
1900#define DEFINE_ABSTRACT_DEFAULT_CONSTRUCTOR_CALL(TClass) \
1901 DEFINE_DEFAULT_CONSTRUCTOR_CALL(TClass)
1903#define DEFINE_ABSTRACT_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1904 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass)
1907#define DECLARE_VTABLE_PTR_HELPER_CTOR(API, TClass) \
1909 API TClass(FVTableHelper& Helper);
1912#define DEFINE_VTABLE_PTR_HELPER_CTOR_NS(Namespace, TClass) \
1913 Namespace TClass::TClass(FVTableHelper& Helper) : Super(Helper) {};
1915#define DEFINE_VTABLE_PTR_HELPER_CTOR(TClass) DEFINE_VTABLE_PTR_HELPER_CTOR_NS(, TClass)
1917#define DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER_DUMMY() \
1918 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1923#if WITH_RELOAD && !CHECK_PUREVIRTUALS
1924 #define DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER(TClass) \
1925 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1927 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
1930 #define DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER(TClass) \
1931 DEFINE_VTABLE_PTR_HELPER_CTOR_CALLER_DUMMY()
1934#define DECLARE_CLASS_INTRINSIC_NO_CTOR(TClass,TSuperClass,TStaticFlags,TPackage) \
1935 DECLARE_CLASS(TClass, TSuperClass, TStaticFlags | CLASS_Intrinsic, CASTCLASS_None, TPackage, NO_API) \
1936 static void StaticRegisterNatives##TClass() {} \
1937 DECLARE_SERIALIZER(TClass) \
1938 UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) \
1939 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1940 static void IntrinsicClassInit(UClass* Class); \
1941 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1943 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
1946#define DECLARE_CLASS_INTRINSIC(TClass,TSuperClass,TStaticFlags,TPackage) \
1947 DECLARE_CLASS_INTRINSIC_API(TClass,TSuperClass,TStaticFlags,TPackage, NO_API)
1949#define DECLARE_CLASS_INTRINSIC_API(TClass,TSuperClass,TStaticFlags,TPackage, TRequiredAPI) \
1950 DECLARE_CLASS(TClass,TSuperClass,TStaticFlags|CLASS_Intrinsic,CASTCLASS_None,TPackage,TRequiredAPI) \
1951 RELAY_CONSTRUCTOR(TClass, TSuperClass) \
1952 UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) \
1954 TClass(FVTableHelper& Helper) : Super(Helper) {}; \
1955 static void StaticRegisterNatives##TClass() {} \
1956 DECLARE_SERIALIZER(TClass) \
1957 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1958 static void IntrinsicClassInit(UClass* Class); \
1959 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1961 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
1964#define DECLARE_CASTED_CLASS_INTRINSIC_WITH_API_NO_CTOR( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, TRequiredAPI ) \
1965 DECLARE_CLASS(TClass, TSuperClass, TStaticFlags | CLASS_Intrinsic, TStaticCastFlags, TPackage, TRequiredAPI) \
1966 UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) \
1967 static void StaticRegisterNatives##TClass() {} \
1968 DECLARE_SERIALIZER(TClass) \
1969 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1970 static void IntrinsicClassInit(UClass* Class); \
1971 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1973 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
1976#define DECLARE_CASTED_CLASS_INTRINSIC_WITH_API( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, TRequiredAPI ) \
1977 DECLARE_CLASS(TClass,TSuperClass,TStaticFlags|CLASS_Intrinsic,TStaticCastFlags,TPackage,TRequiredAPI ) \
1978 RELAY_CONSTRUCTOR(TClass, TSuperClass) \
1979 UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) \
1981 TClass(FVTableHelper& Helper) : Super(Helper) {}; \
1982 static void StaticRegisterNatives##TClass() {} \
1983 DECLARE_SERIALIZER(TClass) \
1984 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1985 static void IntrinsicClassInit(UClass* Class); \
1986 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
1988 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
1991#define DECLARE_CASTED_CLASS_INTRINSIC_NO_CTOR_NO_VTABLE_CTOR( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, TRequiredAPI ) \
1992 DECLARE_CLASS(TClass,TSuperClass,TStaticFlags|CLASS_Intrinsic,TStaticCastFlags,TPackage, TRequiredAPI ) \
1993 UE_DELETE_COPY_MOVE_CONSTRUCTORS(TClass) \
1994 static void StaticRegisterNatives##TClass() {} \
1995 DECLARE_SERIALIZER(TClass) \
1996 DEFINE_DEFAULT_OBJECT_INITIALIZER_CONSTRUCTOR_CALL(TClass) \
1997 static void IntrinsicClassInit(UClass* Class); \
1998 static UObject* __VTableCtorCaller(FVTableHelper& Helper) \
2000 return new (EC_InternalUseOnlyConstructor, GetTransientPackageAsObject(), NAME_None, RF_NeedLoad | RF_ClassDefaultObject | RF_TagGarbageTemp) TClass(Helper); \
2003#define DECLARE_CASTED_CLASS_INTRINSIC_NO_CTOR( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, TRequiredAPI ) \
2004 DECLARE_CASTED_CLASS_INTRINSIC_NO_CTOR_NO_VTABLE_CTOR( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, TRequiredAPI ) \
2006 TClass(FVTableHelper& Helper) : Super(Helper) {}; \
2009#define DECLARE_CASTED_CLASS_INTRINSIC( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags ) \
2010 DECLARE_CASTED_CLASS_INTRINSIC_WITH_API( TClass, TSuperClass, TStaticFlags, TPackage, TStaticCastFlags, NO_API) \
2013#define DECLARE_WITHIN_INTERNAL( TWithinClass, bCanUseOnCDO ) \
2015 typedef class TWithinClass WithinClass; \
2016 TWithinClass* GetOuter##TWithinClass() const { return (ensure(bCanUseOnCDO || !HasAnyFlags(RF_ClassDefaultObject)) ? (TWithinClass*)GetOuter() : nullptr); }
2018#define DECLARE_WITHIN( TWithinClass ) \
2019 DECLARE_WITHIN_INTERNAL( TWithinClass, false )
2021#define DECLARE_WITHIN_UPACKAGE() \
2022 DECLARE_WITHIN_INTERNAL( UPackage, true )
2024#define UOBJECT_CPPCLASS_STATICFUNCTIONS_ALLCONFIGS(TClass) \
2025 FUObjectCppClassStaticFunctions::AddReferencedObjectsType(&TClass::AddReferencedObjects)
2029#if WITH_EDITORONLY_DATA
2030 #define UOBJECT_CPPCLASS_STATICFUNCTIONS_WITHEDITORONLYDATA(TClass) \
2031 , FUObjectCppClassStaticFunctions::DeclareCustomVersionsType(&TClass::DeclareCustomVersions) \
2032 , FUObjectCppClassStaticFunctions::AppendToClassSchemaType(&TClass::AppendToClassSchema) \
2033 , FUObjectCppClassStaticFunctions::DeclareConstructClassesType(&TClass::DeclareConstructClasses)
2038 #define UOBJECT_CPPCLASS_STATICFUNCTIONS_WITHEDITORONLYDATA(TClass)
2045#define UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass) \
2046 FUObjectCppClassStaticFunctions \
2048 UOBJECT_CPPCLASS_STATICFUNCTIONS_ALLCONFIGS(TClass) \
2049 UOBJECT_CPPCLASS_STATICFUNCTIONS_WITHEDITORONLYDATA(TClass) \
2062#if WITH_EDITORONLY_DATA
2070 template<
typename TClass>
2092#if WITH_EDITORONLY_DATA
2106 return AddReferencedObjects !=
nullptr;
2116 return AddReferencedObjects;
2123#if WITH_EDITORONLY_DATA
2156#if WITH_EDITORONLY_DATA
2167#if !UE_WITH_CONSTINIT_UOBJECT
2168#define IMPLEMENT_CLASS_NO_AUTO_REGISTRATION(TClass) \
2169 FClassRegistrationInfo Z_Registration_Info_UClass_##TClass; \
2170 UClass* TClass::GetPrivateStaticClass() \
2172 if (!Z_Registration_Info_UClass_##TClass.InnerSingleton) \
2175 GetPrivateStaticClassBody( \
2177 (TCHAR*)TEXT(#TClass) + 1 + ((StaticClassFlags & CLASS_Deprecated) ? 11 : 0), \
2178 Z_Registration_Info_UClass_##TClass.InnerSingleton, \
2179 StaticRegisterNatives##TClass, \
2182 TClass::StaticClassFlags, \
2183 TClass::StaticClassCastFlags(), \
2184 TClass::StaticConfigName(), \
2185 (UClass::ClassConstructorType)InternalConstructor<TClass>, \
2186 (UClass::ClassVTableHelperCtorCallerType)InternalVTableHelperCtorCaller<TClass>, \
2187 UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass), \
2188 &TClass::Super::StaticClass, \
2189 &TClass::WithinClass::StaticClass \
2192 return Z_Registration_Info_UClass_##TClass.InnerSingleton; \
2197#if !UE_WITH_CONSTINIT_UOBJECT
2198#define IMPLEMENT_CLASS(TClass, TClassCrc) \
2199 IMPLEMENT_CLASS_NO_AUTO_REGISTRATION(TClass) \
2201 static FRegisterCompiledInInfo AutoInitialize_##TClass(&Z_Construct_UClass_##TClass, TClass::StaticClass, TClass::StaticPackage(), TEXT(#TClass), Z_Registration_Info_UClass_##TClass, CONSTRUCT_RELOAD_VERSION_INFO(FClassReloadVersionInfo, sizeof(TClass), TClassCrc));
2204#if UE_WITH_CONSTINIT_UOBJECT
2205#define IMPLEMENT_INTRINSIC_CLASS(TClass, TRequiredAPI, TSuperClass, TSuperRequiredAPI, TPackage, InitCode) \
2206 IMPLEMENT_INTRINSIC_CLASS_CONSTINIT(TClass, TRequiredAPI, TSuperClass, TSuperRequiredAPI, TPackage, InitCode)
2209#define IMPLEMENT_INTRINSIC_CLASS(TClass, TRequiredAPI, TSuperClass, TSuperRequiredAPI, TPackage, InitCode) \
2210 TRequiredAPI UClass* Z_Construct_UClass_##TClass(); \
2211 extern FClassRegistrationInfo Z_Registration_Info_UClass_##TClass; \
2212 struct Z_Construct_UClass_##TClass##_Statics \
2214 static UClass* Construct() \
2216 extern TSuperRequiredAPI UClass* Z_Construct_UClass_##TSuperClass(); \
2217 UClass* SuperClass = Z_Construct_UClass_##TSuperClass(); \
2218 UClass* Class = TClass::StaticClass(); \
2219 UObjectForceRegistration(Class); \
2220 check(Class->GetSuperClass() == SuperClass); \
2221 TClass::IntrinsicClassInit(Class); \
2222 Class->StaticLink(); \
2226 void TClass::IntrinsicClassInit(UClass* Class) \
2230 UClass* Z_Construct_UClass_##TClass() \
2232 if (!Z_Registration_Info_UClass_##TClass.OuterSingleton) \
2234 Z_Registration_Info_UClass_##TClass.OuterSingleton = Z_Construct_UClass_##TClass##_Statics::Construct();\
2236 check(Z_Registration_Info_UClass_##TClass.OuterSingleton->GetClass()); \
2237 return Z_Registration_Info_UClass_##TClass.OuterSingleton; \
2239 IMPLEMENT_CLASS(TClass, 0)
2243#if UE_WITH_CONSTINIT_UOBJECT
2245#define IMPLEMENT_INTRINSIC_CLASS_CONSTINIT(TClass, TRequiredAPI, TSuperClass, TSuperRequiredAPI, TPackage, InitCode) \
2246 static constinit FCppClassTypeInfoStatic Z_StaticCppClassTypeInfo_##TClass = { \
2247 TCppClassTypeTraits<TClass>::IsAbstract, \
2249 constinit extern UPackage Z_ConstInit_UPackage__Script_##TPackage; \
2250 constinit extern TNoDestroy<UClass> Z_ConstInit_UClass_UClass; \
2251 constinit extern TNoDestroy<UClass> Z_ConstInit_UClass_##TSuperClass; \
2252 constinit TNoDestroy<UClass> Z_ConstInit_UClass_##TClass{NoDestroyConstEval, \
2253 UE::CodeGen::ConstInit::FObjectParams{ \
2254 .Flags = RF_Public|RF_Transient|RF_MarkAsNative|RF_MarkAsRootSet, \
2255 .Class = std::is_same_v<UClass, TClass> ? nullptr : &Z_ConstInit_UClass_UClass, \
2257 .NameUTF8 = &UTF8TEXT(UE_STRINGIZE(TClass))[1], \
2258 .Outer = &Z_ConstInit_UPackage__Script_##TPackage, \
2260 UE::CodeGen::ConstInit::FUFieldParams{}, \
2261 UE::CodeGen::ConstInit::FStructParams{ \
2262 .Super = &Z_ConstInit_UClass_##TSuperClass, \
2263 .BaseChain = TIntrinsicClassBaseChain<TClass>::ToArrayView(), \
2264 .PropertiesSize = sizeof(TClass), \
2265 .MinAlignment = alignof(TClass), \
2267 UE::CodeGen::ConstInit::FClassParams{ \
2268 .ConfigName = TClass::StaticConfigName(), \
2269 .ClassConstructor = InternalConstructor<TClass>, \
2270 .ClassVTableHelperCtorCaller = InternalVTableHelperCtorCaller<TClass>, \
2271 .CppClassStaticFunctions = UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass), \
2272 .ClassFlags = TClass::StaticClassFlags, \
2273 .ClassCastFlags = TClass::StaticAllClassCastFlags(), \
2274 .CppClassTypeInfo = &Z_StaticCppClassTypeInfo_##TClass, \
2275 .ClassWithin = UE::Private::GetConstInitClass<TClass::WithinClass>(), \
2278 struct Z_Construct_UClass_##TClass##_Statics { \
2279 static void Construct() \
2281 UClass* SuperClass = TSuperClass::StaticClass(); \
2282 UClass* Class = TClass::StaticClass(); \
2286 static FRegisterCompiledInObjects Z_Register_UClass_##TClass{ &Z_ConstInit_UClass_##TClass, &Z_Construct_UClass_##TClass##_Statics::Construct }; \
2287 TRequiredAPI UClass* TClass::GetPrivateStaticClass() \
2289 return &Z_ConstInit_UClass_##TClass; \
2293#if UE_WITH_CONSTINIT_UOBJECT
2294#define IMPLEMENT_CORE_INTRINSIC_CLASS(TClass, TSuperClass, InitCode) \
2295 IMPLEMENT_INTRINSIC_CLASS_CONSTINIT(TClass, COREUOBJECT_API, TSuperClass, COREUOBJECT_API, CoreUObject, InitCode)
2297#define IMPLEMENT_CORE_INTRINSIC_CLASS(TClass, TSuperClass, InitCode) \
2298 IMPLEMENT_INTRINSIC_CLASS(TClass, COREUOBJECT_API, TSuperClass, COREUOBJECT_API, CoreUObject, InitCode)
2305#define REN_None (0x0000)
2307#define REN_ForceNoResetLoaders (0x0001)
2309#define REN_Test (0x0002)
2311#define REN_DoNotDirty (0x0004)
2313#define REN_DontCreateRedirectors (0x0010)
2315#define REN_NonTransactional (0x0020)
2317#define REN_ForceGlobalUnique (0x0040)
2319#define REN_SkipGeneratedClasses (0x0080)
2321#define REN_SkipComponentRegWork (0x0100)
2323#define REN_AllowPackageLinkerMismatch (0x0200)
2352 enum ELoadConfigPropagationFlags
2360 LCPF_ReadParentSections = 0x1,
2365 LCPF_PropagateToChildDefaultObjects = 0x2,
2370 LCPF_PropagateToInstances = 0x4,
2375 LCPF_ReloadingConfigData = 0x8,
2380 LCPF_PersistentFlags = LCPF_ReloadingConfigData,
2386 using ELoadConfigPropagationFlags
UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4") = UE::ELoadConfigPropagationFlags;
2388 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_None = UE::ELoadConfigPropagationFlags::LCPF_None;
2389 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_ReadParentSections = UE::ELoadConfigPropagationFlags::LCPF_ReadParentSections;
2390 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_PropagateToChildDefaultObjects = UE::ELoadConfigPropagationFlags::LCPF_PropagateToChildDefaultObjects;
2391 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_PropagateToInstances = UE::ELoadConfigPropagationFlags::LCPF_PropagateToInstances;
2392 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_ReloadingConfigData = UE::ELoadConfigPropagationFlags::LCPF_ReloadingConfigData;
2393 UE_DEPRECATED(5.0,
"Use UE namespace instead of UE4")
inline constexpr UE::ELoadConfigPropagationFlags LCPF_PersistentFlags = UE::ELoadConfigPropagationFlags::LCPF_PersistentFlags;
2411#ifndef VALIDATE_CLASS_REPS
2412#define VALIDATE_CLASS_REPS DO_CHECK
2415#if VALIDATE_CLASS_REPS
2416#define DECLARE_VALIDATE_GENERATED_REP_ENUMS( API ) API virtual void ValidateGeneratedRepEnums(const TArray<struct FRepRecord>& ClassReps) const override;
2418#define DECLARE_VALIDATE_GENERATED_REP_ENUMS( API )
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
#define WITH_EDITORONLY_DATA
Definition CoreMiscDefines.h:24
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
void EnsureRetrievingVTablePtrDuringCtor(const TCHAR *CtorSignature)
Definition CoreMisc.cpp:436
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
EClassCastFlags
Definition ObjectMacros.h:333
@ CASTCLASS_UFunction
Definition ObjectMacros.h:355
@ CASTCLASS_FArrayProperty
Definition ObjectMacros.h:357
@ CASTCLASS_FNumericProperty
Definition ObjectMacros.h:360
@ CASTCLASS_USkeletalMeshComponent
Definition ObjectMacros.h:378
@ CASTCLASS_FFloatProperty
Definition ObjectMacros.h:344
@ CASTCLASS_USceneComponent
Definition ObjectMacros.h:375
@ CASTCLASS_FIntProperty
Definition ObjectMacros.h:343
@ CASTCLASS_FBoolProperty
Definition ObjectMacros.h:353
@ CASTCLASS_FDelegateProperty
Definition ObjectMacros.h:359
@ CASTCLASS_FVerseStringProperty
Definition ObjectMacros.h:395
@ CASTCLASS_FLargeWorldCoordinatesRealProperty
Definition ObjectMacros.h:391
@ CASTCLASS_FFieldPathProperty
Definition ObjectMacros.h:388
@ CASTCLASS_FUInt64Property
Definition ObjectMacros.h:345
@ CASTCLASS_UPackage
Definition ObjectMacros.h:370
@ CASTCLASS_None
Definition ObjectMacros.h:334
@ CASTCLASS_FStrProperty
Definition ObjectMacros.h:350
@ CASTCLASS_FMulticastSparseDelegateProperty
Definition ObjectMacros.h:387
@ CASTCLASS_FInterfaceProperty
Definition ObjectMacros.h:348
@ CASTCLASS_UScriptStruct
Definition ObjectMacros.h:340
@ CASTCLASS_FNameProperty
Definition ObjectMacros.h:349
@ CASTCLASS_FMapProperty
Definition ObjectMacros.h:382
@ CASTCLASS_FVCellProperty
Definition ObjectMacros.h:398
@ CASTCLASS_FDoubleProperty
Definition ObjectMacros.h:368
@ CASTCLASS_UBlueprint
Definition ObjectMacros.h:379
@ CASTCLASS_FByteProperty
Definition ObjectMacros.h:342
@ CASTCLASS_FSetProperty
Definition ObjectMacros.h:383
@ CASTCLASS_FVRestValueProperty
Definition ObjectMacros.h:394
@ CASTCLASS_FClassProperty
Definition ObjectMacros.h:346
@ CASTCLASS_FSoftObjectProperty
Definition ObjectMacros.h:365
@ CASTCLASS_UClass
Definition ObjectMacros.h:341
@ CASTCLASS_FMulticastDelegateProperty
Definition ObjectMacros.h:361
@ CASTCLASS_FWeakObjectProperty
Definition ObjectMacros.h:363
@ CASTCLASS_UPrimitiveComponent
Definition ObjectMacros.h:376
@ CASTCLASS_FInt64Property
Definition ObjectMacros.h:358
@ CASTCLASS_ULevel
Definition ObjectMacros.h:371
@ CASTCLASS_FUInt16Property
Definition ObjectMacros.h:354
@ CASTCLASS_FInt8Property
Definition ObjectMacros.h:337
@ CASTCLASS_AActor
Definition ObjectMacros.h:372
@ CASTCLASS_APlayerController
Definition ObjectMacros.h:373
@ CASTCLASS_FAnsiStrProperty
Definition ObjectMacros.h:397
@ CASTCLASS_APawn
Definition ObjectMacros.h:374
@ CASTCLASS_FInt16Property
Definition ObjectMacros.h:367
@ CASTCLASS_UStruct
Definition ObjectMacros.h:339
@ CASTCLASS_FObjectProperty
Definition ObjectMacros.h:352
@ CASTCLASS_FOptionalProperty
Definition ObjectMacros.h:392
@ CASTCLASS_FVValueProperty
Definition ObjectMacros.h:393
@ CASTCLASS_FStructProperty
Definition ObjectMacros.h:356
@ CASTCLASS_FUtf8StrProperty
Definition ObjectMacros.h:396
@ CASTCLASS_FMulticastInlineDelegateProperty
Definition ObjectMacros.h:386
@ CASTCLASS_USkinnedMeshComponent
Definition ObjectMacros.h:377
@ CASTCLASS_FSoftClassProperty
Definition ObjectMacros.h:369
@ CASTCLASS_UDelegateFunction
Definition ObjectMacros.h:380
@ CASTCLASS_FObjectPropertyBase
Definition ObjectMacros.h:362
@ CASTCLASS_UField
Definition ObjectMacros.h:336
@ CASTCLASS_FProperty
Definition ObjectMacros.h:351
@ CASTCLASS_FEnumProperty
Definition ObjectMacros.h:384
@ CASTCLASS_USparseDelegateFunction
Definition ObjectMacros.h:385
@ CASTCLASS_FTextProperty
Definition ObjectMacros.h:366
@ CASTCLASS_UStaticMeshComponent
Definition ObjectMacros.h:381
@ CASTCLASS_FUInt32Property
Definition ObjectMacros.h:347
@ CASTCLASS_UEnum
Definition ObjectMacros.h:338
@ CASTCLASS_FLazyObjectProperty
Definition ObjectMacros.h:364
#define UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass)
Definition ObjectMacros.h:2045
EPropertyFlags
Definition ObjectMacros.h:416
@ CPF_BlueprintCallable
MC Delegates only. Property should be exposed for calling in blueprint code.
Definition ObjectMacros.h:463
@ CPF_RepSkip
Not replicated. For non replicated properties in replicated structs.
Definition ObjectMacros.h:450
@ CPF_ExperimentalNeverOverriden
****Experimental*** Property should never be overridden when using overridable serialization
Definition ObjectMacros.h:478
@ CPF_SkipSerialization
Property shouldn't be serialized, can still be exported to text.
Definition ObjectMacros.h:474
@ CPF_Transient
Property is transient: shouldn't be saved or loaded, except for Blueprint CDOs.
Definition ObjectMacros.h:432
@ CPF_AutoWeak
Only used for weak pointers, means the export type is autoweak.
Definition ObjectMacros.h:457
@ CPF_BlueprintAssignable
MC Delegates only. Property should be exposed for assigning in blueprint code.
Definition ObjectMacros.h:447
@ CPF_Net
Property is relevant to network replication.
Definition ObjectMacros.h:424
@ CPF_NativeAccessSpecifierProtected
Protected native access specifier.
Definition ObjectMacros.h:472
@ CPF_ExposeOnSpawn
Property is exposed on spawn.
Definition ObjectMacros.h:467
@ CPF_Parm
Function/When call parameter.
Definition ObjectMacros.h:426
@ CPF_AssetRegistrySearchable
asset instances will add properties with this flag to the asset registry automatically
Definition ObjectMacros.h:459
@ CPF_PersistentInstance
A object referenced by the property is duplicated like a component. (Each actor should have an own in...
Definition ObjectMacros.h:468
@ CPF_ExperimentalOverridableLogic
****Experimental*** Property will use different logic to serialize knowing what changes are done agai...
Definition ObjectMacros.h:476
@ CPF_Deprecated
Property is deprecated. Read it from an archive, but don't save it.
Definition ObjectMacros.h:448
@ CPF_ExportObject
Object can be exported with actor.
Definition ObjectMacros.h:422
@ CPF_ExperimentalExternalObjects
Property saves objects in separate files, breaks hard links and reload them based on discovery.
Definition ObjectMacros.h:439
@ CPF_BlueprintVisible
This property can be read by blueprint code.
Definition ObjectMacros.h:421
@ CPF_BlueprintReadOnly
This property cannot be modified by blueprint code.
Definition ObjectMacros.h:423
@ CPF_NoClear
Hide clear button.
Definition ObjectMacros.h:444
@ CPF_Config
Property should be loaded/saved as permanent profile.
Definition ObjectMacros.h:433
@ CPF_RequiredParm
Parameter must be linked explicitly in blueprint. Leaving the parameter out results in a compile erro...
Definition ObjectMacros.h:434
@ CPF_ContainsInstancedReference
Property contains component references.
Definition ObjectMacros.h:458
@ CPF_NativeAccessSpecifierPublic
Public native access specifier.
Definition ObjectMacros.h:471
@ CPF_RepNotify
Notify actors when a property is replicated.
Definition ObjectMacros.h:451
@ CPF_NonTransactional
Property isn't transacted.
Definition ObjectMacros.h:453
@ CPF_EditConst
Property is uneditable in the editor.
Definition ObjectMacros.h:436
@ CPF_ZeroConstructor
memset is fine for construction
Definition ObjectMacros.h:428
@ CPF_Protected
property is protected from the perspective of script
Definition ObjectMacros.h:462
@ CPF_NoDestructor
No destructor.
Definition ObjectMacros.h:455
@ CPF_InstancedReference
Property is a component references.
Definition ObjectMacros.h:438
@ CPF_Edit
Property is user-settable in the editor.
Definition ObjectMacros.h:419
@ CPF_UObjectWrapper
Property was parsed as a wrapper class like TSubclassOf<T>, FScriptInterface etc.,...
Definition ObjectMacros.h:469
@ CPF_Interp
interpolatable property for use with cinematics
Definition ObjectMacros.h:452
@ CPF_GlobalConfig
Load config from base class, not subclass.
Definition ObjectMacros.h:437
@ CPF_DisableEditOnTemplate
Disable editing of this property on an archetype/sub-blueprint.
Definition ObjectMacros.h:430
@ CPF_SaveGame
Property should be serialized for save games, this is only checked for game-specific archives with Ar...
Definition ObjectMacros.h:443
@ CPF_HasGetValueTypeHash
This property can generate a meaningful hash value.
Definition ObjectMacros.h:470
@ CPF_NativeAccessSpecifierPrivate
Private native access specifier.
Definition ObjectMacros.h:473
@ CPF_OutParm
Value is copied out after function call.
Definition ObjectMacros.h:427
@ CPF_ConstParm
This is a constant function parameter.
Definition ObjectMacros.h:420
@ CPF_NonPIEDuplicateTransient
Property should only be copied in PIE.
Definition ObjectMacros.h:466
@ CPF_IsPlainOldData
If this is set, then the property can be memcopied instead of CopyCompleteValue / CopySingleValue.
Definition ObjectMacros.h:449
@ CPF_NonNullable
Object property can never be null.
Definition ObjectMacros.h:431
@ CPF_BlueprintAuthorityOnly
MC Delegates only. This delegate accepts (only in blueprint) only events with BlueprintAuthorityOnly.
Definition ObjectMacros.h:464
@ CPF_AdvancedDisplay
The property is advanced and not visible by default in the editor details view.
Definition ObjectMacros.h:461
@ CPF_TObjectPtr
Property is a TObjectPtr<T> instead of a USomething*. Need to differentiate between TObjectclassOf an...
Definition ObjectMacros.h:475
@ CPF_ReferenceParm
Value is passed by reference; CPF_OutParam and CPF_Param should also be set.
Definition ObjectMacros.h:446
@ CPF_DuplicateTransient
Property should always be reset to the default value during any type of duplication (copy/paste,...
Definition ObjectMacros.h:440
@ CPF_EditorOnly
Property should only be loaded in the editor.
Definition ObjectMacros.h:454
@ CPF_TextExportTransient
Property shouldn't be exported to text format (e.g. copy/paste)
Definition ObjectMacros.h:465
@ CPF_Virtual
Property is defined on an interface and does not include a useful Offset_Internal.
Definition ObjectMacros.h:445
@ CPF_ExperimentalAlwaysOverriden
****Experimental*** Property should never inherit from the parent when using overridable serializatio...
Definition ObjectMacros.h:477
@ CPF_EditFixedSize
Indicates that elements of an array can be modified, but its size cannot be changed.
Definition ObjectMacros.h:425
@ CPF_None
Definition ObjectMacros.h:417
@ CPF_SimpleDisplay
The property is visible by default in the editor details view.
Definition ObjectMacros.h:460
@ CPF_AllowSelfReference
Enables the instancing graph self referencing logic, delegates and verse function are already using t...
Definition ObjectMacros.h:479
@ CPF_DisableEditOnInstance
Disable editing on an instance of this class.
Definition ObjectMacros.h:435
@ CPF_ReturnParm
Return value.
Definition ObjectMacros.h:429
ESaveFlags
Definition ObjectMacros.h:97
@ SAVE_FromAutosave
Used to indicate this save was initiated automatically.
Definition ObjectMacros.h:100
@ SAVE_CutdownPackage
Saving cutdown packages in a temp location WITHOUT renaming the package.
Definition ObjectMacros.h:105
@ SAVE_AllowTimeout
If present, if SavePackage is blocked by an asynchronous operation, it will quickly fail with ESavePa...
Definition ObjectMacros.h:116
@ SAVE_NoError
Don't generate errors on save.
Definition ObjectMacros.h:99
@ SAVE_Async
Save to a memory writer, then actually write to disk async.
Definition ObjectMacros.h:103
@ SAVE_RehydratePayloads
Any virtualized payloads in the package should be pulled and stored locally in the package file durin...
Definition ObjectMacros.h:117
@ SAVE_BulkDataByReference
When saving to a different file than the package's LoadedPath, point bulkdata in the new file to be l...
Definition ObjectMacros.h:112
@ SAVE_KeepEditorOnlyCookedPackages
Keep packages which are marked as editor only even though we are cooking.
Definition ObjectMacros.h:106
@ SAVE_Unversioned_Properties
Definition ObjectMacros.h:113
@ SAVE_Unversioned_Native
Save all versions as zero. Upon load this is changed to the current version. This is only reasonable ...
Definition ObjectMacros.h:104
@ SAVE_None
No flags.
Definition ObjectMacros.h:98
@ SAVE_Optional
Indicate that we to save optional exports. This flag is only valid while cooking. Optional exports ar...
Definition ObjectMacros.h:115
@ SAVE_CookSoftPackageReferences
Indicate that we want to save soft package references for cooked packages.
Definition ObjectMacros.h:118
@ SAVE_Concurrent
We are save packages in multiple threads at once and should not call non-threadsafe functions or rely...
Definition ObjectMacros.h:107
@ SAVE_KeepDirty
Do not clear the dirty flag when saving.
Definition ObjectMacros.h:101
@ SAVE_Unversioned
Definition ObjectMacros.h:119
EMapPropertyFlags
Definition ObjectMacros.h:525
uint64 ScriptPointerType
Definition ObjectMacros.h:22
uint32 ERenameFlags
Definition ObjectMacros.h:2302
EClassFlags
Definition ObjectMacros.h:199
@ CLASS_Constructed
Definition ObjectMacros.h:270
@ CLASS_Hidden
Definition ObjectMacros.h:260
@ CLASS_NeedsDeferredDependencyLoading
Definition ObjectMacros.h:241
@ CLASS_RequiredAPI
Definition ObjectMacros.h:250
@ CLASS_Transient
Definition ObjectMacros.h:209
@ CLASS_Deprecated
Definition ObjectMacros.h:262
@ CLASS_DefaultToInstanced
Definition ObjectMacros.h:253
@ CLASS_Intrinsic
Definition ObjectMacros.h:268
@ CLASS_Native
Definition ObjectMacros.h:217
@ CLASS_DefaultConfig
Definition ObjectMacros.h:205
@ CLASS_GlobalUserConfig
Definition ObjectMacros.h:266
@ CLASS_Abstract
Definition ObjectMacros.h:203
@ CLASS_ProjectUserConfig
Definition ObjectMacros.h:215
@ CLASS_PerPlatformConfig
Definition ObjectMacros.h:236
@ CLASS_ConfigDoNotCheckDefaults
Definition ObjectMacros.h:272
@ CLASS_NewerVersionExists
Definition ObjectMacros.h:274
@ CLASS_CompiledFromBlueprint
Definition ObjectMacros.h:244
@ CLASS_MatchedSerializers
Definition ObjectMacros.h:213
@ CLASS_HasInstancedReference
Definition ObjectMacros.h:258
@ CLASS_TokenStreamAssembled
Definition ObjectMacros.h:256
@ CLASS_EditInlineNew
Definition ObjectMacros.h:230
@ CLASS_Const
Definition ObjectMacros.h:238
@ CLASS_ReplicationDataIsSetUp
Definition ObjectMacros.h:227
@ CLASS_Interface
Definition ObjectMacros.h:234
@ CLASS_None
Definition ObjectMacros.h:201
@ CLASS_NotPlaceable
Definition ObjectMacros.h:222
@ CLASS_PerObjectConfig
Definition ObjectMacros.h:224
@ CLASS_HideDropDown
Definition ObjectMacros.h:264
@ CLASS_MinimalAPI
Definition ObjectMacros.h:247
@ CLASS_Config
Definition ObjectMacros.h:207
@ CLASS_Optional
Definition ObjectMacros.h:211
@ CLASS_CollapseCategories
Definition ObjectMacros.h:232
EStaticConstructor
Definition ObjectMacros.h:174
@ EC_StaticConstructor
Definition ObjectMacros.h:174
EPackageFlags
Definition ObjectMacros.h:129
@ PKG_DisallowExport
Editor should not export asset in this package.
Definition ObjectMacros.h:152
@ PKG_ForDiffing
This package was loaded just for the purposes of diffing.
Definition ObjectMacros.h:135
@ PKG_PlayInEditor
Set if the package was created for the purpose of PIE.
Definition ObjectMacros.h:150
@ PKG_IsSaving
Temporarily set on a package while it is being saved.
Definition ObjectMacros.h:145
@ PKG_CookGenerated
This package was generated by the cooker and does not exist in the WorkspaceDomain.
Definition ObjectMacros.h:157
@ PKG_ClientOptional
Purely optional for clients.
Definition ObjectMacros.h:132
@ PKG_ReloadingForCooker
This package is reloading in the cooker, try to avoid getting data we will never need....
Definition ObjectMacros.h:160
@ PKG_ContainsScript
Package is allowed to contain UClass objects.
Definition ObjectMacros.h:151
@ PKG_ServerSideOnly
Only needed on the server side.
Definition ObjectMacros.h:133
@ PKG_RuntimeGenerated
This package contains elements that are runtime generated, and may not follow standard loading order ...
Definition ObjectMacros.h:159
@ PKG_Compiling
package is currently being compiled
Definition ObjectMacros.h:146
@ PKG_UncookedOnly
Loaded only in uncooked builds (i.e. runtime in editor)
Definition ObjectMacros.h:138
@ PKG_None
No flags.
Definition ObjectMacros.h:130
@ PKG_RequiresLocalizationGather
Set if the package contains any data to be gathered by localization.
Definition ObjectMacros.h:148
@ PKG_EditorOnly
This is editor-only package (for example: editor module script package)
Definition ObjectMacros.h:136
@ PKG_LoadUncooked
This package must be loaded uncooked from IoStore/ZenStore (set only when cooking,...
Definition ObjectMacros.h:149
@ PKG_ContainsMap
Set if the package contains a ULevel/ UWorld object.
Definition ObjectMacros.h:147
@ PKG_ContainsMapData
Contains map data (UObjects only referenced by a single ULevel) but is stored in a different package.
Definition ObjectMacros.h:144
@ PKG_CompiledIn
This package is from "compiled in" classes.
Definition ObjectMacros.h:134
@ PKG_UnversionedProperties
Uses unversioned property serialization instead of versioned tagged property serialization.
Definition ObjectMacros.h:143
@ PKG_AccessSpecifierEpicInternal
Objects in this package can only be referenced in a different plugin or mount point by Epic.
Definition ObjectMacros.h:142
@ PKG_Developer
Developer module.
Definition ObjectMacros.h:137
@ PKG_NotExternallyReferenceable
Objects in this package cannot be referenced in a different plugin or mount point (i....
Definition ObjectMacros.h:141
@ PKG_FilterEditorOnly
Package has editor-only data filtered out.
Definition ObjectMacros.h:161
@ PKG_NewlyCreated
Newly created package, not saved yet. In editor only.
Definition ObjectMacros.h:131
@ PKG_ContainsNoAsset
Package doesn't contain any asset object (although asset tags can be present)
Definition ObjectMacros.h:140
@ PKG_Cooked
Package is cooked.
Definition ObjectMacros.h:139
@ PKG_DynamicImports
This package should resolve dynamic imports from its export at runtime.
Definition ObjectMacros.h:158
ECppProperty
Definition ObjectMacros.h:176
@ EC_CppProperty
Definition ObjectMacros.h:176
EArrayPropertyFlags
Definition ObjectMacros.h:514
@ UsesMemoryImageAllocator
constexpr EObjectFlags RF_InternalMirroredFlags
Definition ObjectMacros.h:607
EInternalObjectFlags
Definition ObjectMacros.h:631
@ AsyncLoadingPhase2
Object is being asynchronously loaded.
@ ReachabilityFlag1
One of the flags used by Garbage Collector to determine UObject's reachability state.
@ Async
Object exists only on a different thread than the game thread.
@ ClusterRoot
Root of a cluster.
@ Unreachable
Object is not reachable on the object graph.
@ ReachabilityFlag2
One of the flags used by Garbage Collector to determine UObject's reachability state.
@ ReachabilityFlag0
One of the flags used by Garbage Collector to determine UObject's reachability state.
@ ReachableInCluster
External reference to object in cluster exists.
@ PendingConstruction
Object didn't have its class constructor called yet (only the UObjectBase one to initialize its most ...
@ 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 EObjectFlag...
@ Native
Native (UClass only).
@ RootSet
Object will not be garbage collected, even if unreferenced.
@ AsyncLoadingPhase1
Object is being asynchronously loaded.
@ AutoRTFMConstructionAborted
constexpr EObjectFlags RF_InternalGarbage
Definition ObjectMacros.h:605
constexpr EObjectFlags RF_InternalPendingKill
Definition ObjectMacros.h:603
void(* FAsyncCompletionCallback)(UObject *LinkerRoot, void *CallbackUserData)
Definition ObjectMacros.h:2329
EObjectFlags
Definition ObjectMacros.h:552
@ RF_ImmutableDefaultObject
Hidden version of the class default object that cannot and will never be mutated.
Definition ObjectMacros.h:591
@ RF_MarkAsRootSet
Object will be marked as root set on construction and not be garbage collected, even if unreferenced ...
Definition ObjectMacros.h:568
@ RF_DuplicateTransient
Object should not be included in any type of duplication (copy/paste, binary duplication,...
Definition ObjectMacros.h:588
@ RF_NoFlags
No flags, used to avoid a cast.
Definition ObjectMacros.h:555
@ RF_ClassDefaultObject
This object is used as the default template for all instances of a class. One object is created for e...
Definition ObjectMacros.h:563
@ RF_HasExternalPackage
This object has an external package assigned and should look it up when getting the outermost package...
Definition ObjectMacros.h:593
@ RF_MirroredGarbage
Garbage from logical point of view and should not be referenced. This flag is mirrored in EInternalOb...
Definition ObjectMacros.h:598
@ RF_StrongRefOnFrame
References to this object from persistent function frame are handled as strong ones.
Definition ObjectMacros.h:589
@ RF_Public
Object is visible outside its package.
Definition ObjectMacros.h:559
@ RF_NeedInitialization
This object has not completed its initialization process. Cleared when ~FObjectInitializer completes.
Definition ObjectMacros.h:572
@ RF_NeedPostLoad
Object needs to be postloaded.
Definition ObjectMacros.h:575
@ RF_Transactional
Object is transactional.
Definition ObjectMacros.h:562
@ RF_MigratingAsset
Objects marked as MigratingAsset can be migrated to another server even if they've been loaded from d...
Definition ObjectMacros.h:594
@ RF_NewerVersionExists
Object has been consigned to oblivion due to its owner package being reloaded, and a newer version cu...
Definition ObjectMacros.h:577
@ UE_DEPRECATED
BulkData identifiers should be regenerated as they are loaded.
Definition ObjectMacros.h:80
@ RF_FinishDestroyed
FinishDestroy has been called on the object.
Definition ObjectMacros.h:579
@ RF_BeingRegenerated
Flagged on UObjects that are used to create UClasses (e.g. Blueprints) while they are regenerating th...
Definition ObjectMacros.h:582
@ RF_BeginDestroyed
BeginDestroy has been called on the object.
Definition ObjectMacros.h:578
@ RF_WillBeLoaded
This object was constructed during load and will be loaded shortly.
Definition ObjectMacros.h:592
@ RF_DefaultSubObject
Flagged on subobject templates that were created in a class constructor, and all instances created fr...
Definition ObjectMacros.h:583
@ RF_AllocatedInSharedPage
Allocated from a ref-counted page shared with other UObjects.
Definition ObjectMacros.h:599
@ RF_TextExportTransient
Do not export object to text form (e.g. copy/paste). Generally used for sub-objects that can be regen...
Definition ObjectMacros.h:585
@ RF_MarkAsNative
Object (UField) will be marked as native on construction (DO NOT USE THIS FLAG in HasAnyFlags() etc)
Definition ObjectMacros.h:561
@ RF_LoadCompleted
Object has been completely serialized by linkerload at least once. DO NOT USE THIS FLAG,...
Definition ObjectMacros.h:586
@ RF_NonPIEDuplicateTransient
Object should not be included for duplication unless it's being duplicated for a PIE session.
Definition ObjectMacros.h:590
@ RF_Standalone
Keep object around for editing even if unreferenced.
Definition ObjectMacros.h:560
@ RF_WasLoaded
Flagged on UObjects that were loaded.
Definition ObjectMacros.h:584
@ RF_Transient
Don't save object.
Definition ObjectMacros.h:565
@ RF_NeedPostLoadSubobjects
During load, indicates that the object still needs to instance subobjects and fixup serialized compon...
Definition ObjectMacros.h:576
@ RF_NeedLoad
During load, indicates object needs loading.
Definition ObjectMacros.h:573
@ RF_ArchetypeObject
This object can be used as a template for instancing objects. This is set on all types of object temp...
Definition ObjectMacros.h:564
@ RF_TagGarbageTemp
This is a temp user flag for various utilities that need to use the garbage collector....
Definition ObjectMacros.h:569
@ RF_InheritableComponentTemplate
Flagged on subobject templates stored inside a class instead of the class default object,...
Definition ObjectMacros.h:587
EEnumFlags
Definition ObjectMacros.h:690
constexpr EObjectFlags RF_HasPlaceholderType
Definition ObjectMacros.h:609
COREUOBJECT_API const TCHAR * LexToString(EPropertyObjectReferenceType Type)
Definition Property.cpp:615
ELoadFlags
Definition ObjectMacros.h:68
@ LOAD_Async
Loads the package using async loading path/ reader.
Definition ObjectMacros.h:70
@ LOAD_EditorOnly
Load for editor-only purposes and by editor-only code.
Definition ObjectMacros.h:72
@ LOAD_Verify
Only verify existance; don't actually load.
Definition ObjectMacros.h:74
@ LOAD_ResolvingDeferredExports
Denotes that we should not defer export loading (as we're resolving them)
Definition ObjectMacros.h:73
@ LOAD_IsVerifying
Is verifying imports.
Definition ObjectMacros.h:78
@ LOAD_FindIfFail
Tries FindObject if a linker cannot be obtained (e.g. package is currently being compiled)
Definition ObjectMacros.h:84
@ LOAD_DisableDependencyPreloading
Bypass dependency preloading system.
Definition ObjectMacros.h:82
@ LOAD_DisableCompileOnLoad
Prevent this load call from running compile on load for the loaded blueprint (intentionally not recur...
Definition ObjectMacros.h:91
@ LOAD_DisableEngineVersionChecks
Prevent this load call from running engine version checks.
Definition ObjectMacros.h:92
@ LOAD_None
No flags.
Definition ObjectMacros.h:69
@ LOAD_NoVerify
Don't verify imports yet.
Definition ObjectMacros.h:77
@ LOAD_SkipLoadImportedPackages
Assume that all import packages are already loaded and don't call LoadPackage when creating imports.
Definition ObjectMacros.h:79
@ LOAD_Quiet
No log warnings.
Definition ObjectMacros.h:83
@ LOAD_NoRedirects
Never follow redirects when loading objects; redirected loads will fail.
Definition ObjectMacros.h:86
@ LOAD_NoWarn
Don't display warning if load fails.
Definition ObjectMacros.h:71
@ LOAD_MemoryReader
Loads the file into memory and serializes from there.
Definition ObjectMacros.h:85
@ LOAD_ForDiff
Loading for diffing in the editor.
Definition ObjectMacros.h:87
@ LOAD_DeferDependencyLoads
Do not load external (blueprint) dependencies (instead, track them for deferred loading)
Definition ObjectMacros.h:89
@ LOAD_PackageForPIE
This package is being loaded for PIE, it must be flagged as such immediately.
Definition ObjectMacros.h:88
@ LOAD_ForFileDiff
Load the package (not for diffing in the editor), instead verify at the two packages serialized outpu...
Definition ObjectMacros.h:90
EPropertyObjectReferenceType
Definition ObjectMacros.h:533
EInternal
Definition ObjectMacros.h:175
@ EC_InternalUseOnlyConstructor
Definition ObjectMacros.h:175
if(Failed) console_printf("Failed.\n")
Definition Archive.h:1208
Definition UObjectGlobals.h:1292
Definition UnrealType.h:3087
Definition UnrealType.h:174
Definition UObjectGlobals.h:2492
Definition ObjectMacros.h:2402
virtual void Restore() const =0
virtual ~FRestoreForUObjectOverwrite()
Definition ObjectMacros.h:2405
Definition ObjectMacros.h:180
FVTableHelper()
Definition ObjectMacros.h:183
Definition ObjectMacros.h:791
@ AdvancedClassDisplay
All the properties of the class are hidden in the main display by default, and are only shown in the ...
Definition ObjectMacros.h:904
@ SparseClassDataType
Some properties are stored once per class in a sidecar structure and not on instances of the class.
Definition ObjectMacros.h:916
@ prioritizeCategories
Specifies category display order, unspecified will follow default display order.
Definition ObjectMacros.h:901
@ perObjectConfig
Handle object configuration on a per-object basis, rather than per-class.
Definition ObjectMacros.h:862
@ notplaceable
This class cannot be placed in the editor (it cancels out an inherited placeable flag).
Definition ObjectMacros.h:835
@ customConstructor
Prevents automatic generation of the constructor declaration.
Definition ObjectMacros.h:818
@ hideCategories
Hides the specified categories in a property viewer. Usage: hideCategories=CategoryName or hideCatego...
Definition ObjectMacros.h:883
@ showCategories
Shows the specified categories in a property viewer. Usage: showCategories=CategoryName or showCatego...
Definition ObjectMacros.h:881
@ Experimental
Marks this class as 'experimental' (a totally unsupported and undocumented prototype)
Definition ObjectMacros.h:910
@ dontCollapseCategories
Display properties in the editor using categories (default behaviour).
Definition ObjectMacros.h:899
@ autoCollapseCategories
Specifies which categories should be automatically collapsed in a property viewer.
Definition ObjectMacros.h:893
@ Blueprintable
Exposes this class as an acceptable base class for creating blueprints. The default is NotBlueprintab...
Definition ObjectMacros.h:808
@ NotBlueprintable
Specifies that this class is NOT an acceptable base class for creating blueprints....
Definition ObjectMacros.h:811
@ Intrinsic
Definition ObjectMacros.h:825
@ nonTransient
This class should be saved normally (it cancels out an inherited transient flag).
Definition ObjectMacros.h:853
@ Const
All properties and functions in this class are const and should be exported as const....
Definition ObjectMacros.h:841
@ NotBlueprintType
Prevents this class from being used for variables in blueprints. This is inherited by subclasses unle...
Definition ObjectMacros.h:805
@ classGroup
This keyword is used to set the actor group that the class is show in, in the editor.
Definition ObjectMacros.h:796
@ config
Definition ObjectMacros.h:860
@ DefaultToInstanced
All instances of this class are considered "instanced". Instanced classes (components) are duplicated...
Definition ObjectMacros.h:838
@ Within
Declares that instances of this class should always have an outer of the specified class....
Definition ObjectMacros.h:799
@ EditorConfig
Mark the editor config file to load from if loading into this object.
Definition ObjectMacros.h:870
@ collapseCategories
Display properties in the editor without using categories.
Definition ObjectMacros.h:897
@ placeable
Allow users to create and place this class in the editor. This flag is inherited by subclasses.
Definition ObjectMacros.h:832
@ defaultconfig
Save object config only to Default INIs, never to local INIs.
Definition ObjectMacros.h:867
@ ConversionRoot
A root convert limits a sub-class to only be able to convert to child classes of the first root class...
Definition ObjectMacros.h:907
@ dontAutoCollapseCategories
Clears the list of auto collapse categories.
Definition ObjectMacros.h:895
@ noexport
Definition ObjectMacros.h:829
@ configdonotcheckdefaults
Determine whether on serialize to configs a check should be done on the base/defaults ini's.
Definition ObjectMacros.h:864
@ CustomThunkTemplates
Specifies the struct that contains the CustomThunk implementations.
Definition ObjectMacros.h:919
@ hidedropdown
Class not shown in editor drop down for class selection.
Definition ObjectMacros.h:878
@ EarlyAccessPreview
Marks this class as an 'early access' preview (while not considered production-ready,...
Definition ObjectMacros.h:913
@ Optional
This class is optional and might not be available in certain context. reference from non optional dat...
Definition ObjectMacros.h:856
@ CustomFieldNotify
Prevents automatic generation of the FieldNotify declaration.
Definition ObjectMacros.h:821
@ Abstract
Class is abstract and can't be instantiated directly.
Definition ObjectMacros.h:844
@ hideFunctions
Hides the specified function in a property viewer. Usage: hideFunctions=FunctionName or hideFunctions...
Definition ObjectMacros.h:889
@ MinimalAPI
Definition ObjectMacros.h:815
@ editinlinenew
Definition ObjectMacros.h:874
@ showFunctions
Shows the specified function in a property viewer. Usage: showFunctions=FunctionName or showFunctions...
Definition ObjectMacros.h:887
@ deprecated
This class is deprecated and objects of this class won't be saved when serializing....
Definition ObjectMacros.h:847
@ Transient
This class can't be saved; null it out at save time. This flag is inherited by subclasses.
Definition ObjectMacros.h:850
@ autoExpandCategories
Specifies which categories should be automatically expanded in a property viewer.
Definition ObjectMacros.h:891
@ BlueprintType
Exposes this class as a type that can be used for variables in blueprints. This is inherited by subcl...
Definition ObjectMacros.h:802
@ noteditinlinenew
Class can't be constructed from editinline New button.
Definition ObjectMacros.h:876
@ ComponentWrapperClass
Indicates that this class is a wrapper class for a component with little intrinsic functionality (thi...
Definition ObjectMacros.h:885
Definition ObjectMacros.h:2385
Definition AdvancedWidgetsModule.cpp:13
Definition ObjectMacros.h:944
@ BlueprintCallable
This function can be called from blueprint code and should be exposed to the user of blueprint editin...
Definition ObjectMacros.h:987
@ Category
Definition ObjectMacros.h:1012
@ Exec
This function is executable from the command line.
Definition ObjectMacros.h:962
@ BlueprintSetter
This function is used as the set accessor for a blueprint exposed property. Implies BlueprintCallable...
Definition ObjectMacros.h:993
@ Client
Definition ObjectMacros.h:970
@ WithValidation
This function must supply a _Validate implementation.
Definition ObjectMacros.h:1018
@ Reliable
Definition ObjectMacros.h:977
@ Unreliable
Definition ObjectMacros.h:981
@ BlueprintNativeEvent
Definition ObjectMacros.h:955
@ IgnoreTypePromotion
[FunctionMetadata] Indicates that the function should be ignored when considered for blueprint type p...
Definition ObjectMacros.h:1040
@ Variadic
Definition ObjectMacros.h:1028
@ BlueprintInternalUseOnly
Indicates that a Blueprint exposed function should not be exposed to the end user.
Definition ObjectMacros.h:1002
@ ForceAsFunction
Definition ObjectMacros.h:1037
@ BlueprintPure
This function will not have visible exec pins by default. Implies BlueprintCallable.
Definition ObjectMacros.h:984
@ CustomThunk
The UnrealHeaderTool code generator will not produce a execFoo thunk for this function; it is up to t...
Definition ObjectMacros.h:1008
@ ServiceRequest
This function is RPC service request.
Definition ObjectMacros.h:1021
@ BlueprintAuthorityOnly
This function will not execute from blueprint code if running on something without network authority.
Definition ObjectMacros.h:996
@ BlueprintGetter
This function is used as the get accessor for a blueprint exposed property. Implies BlueprintPure and...
Definition ObjectMacros.h:990
@ SealedEvent
Definition ObjectMacros.h:959
@ NetMulticast
This function is both executed locally on the server and replicated to all clients,...
Definition ObjectMacros.h:973
@ CallInEditor
This function can be called in the editor on selected instances via a button in the details panel.
Definition ObjectMacros.h:1005
@ ServiceResponse
This function is RPC service response.
Definition ObjectMacros.h:1024
@ InternalUseParam
[FunctionMetadata] Indicates that a particular function parameter is for internal use only,...
Definition ObjectMacros.h:1034
@ BlueprintCosmetic
This function is cosmetic and will not run on dedicated servers.
Definition ObjectMacros.h:999
@ Server
Definition ObjectMacros.h:966
@ BlueprintImplementableEvent
Definition ObjectMacros.h:950
@ ReturnDisplayName
[FunctionMetadata] Indicates the display name of the return value pin
Definition ObjectMacros.h:1031
@ FieldNotify
Generate a field entry for the NotifyFieldValueChanged interface.
Definition ObjectMacros.h:1015
Definition ObjectMacros.h:924
@ ConversionRoot
Sets IsConversionRoot metadata flag for this interface.
Definition ObjectMacros.h:939
@ Blueprintable
Specifies that this interface can be directly implemented by blueprints, this is implied if the inter...
Definition ObjectMacros.h:933
@ NotBlueprintable
Specifies that this interface cannot be implemented by blueprints, equivalent to CannotImplementInter...
Definition ObjectMacros.h:936
@ MinimalAPI
Definition ObjectMacros.h:930
Definition ObjectMacros.h:1201
@ Bitflags
[InterfaceMetadata] Metadata that identifies an enum as a set of explicitly-named bitflags.
Definition ObjectMacros.h:1766
@ ArrayParam
[FunctionMetadata] [InterfaceMetadata] Metadata that flags TArray function parameters that will have ...
Definition ObjectMacros.h:1775
@ LatentInfo
[FunctionMetadata] For Latent BlueprintCallable functions indicates which parameter is the LatentInfo...
Definition ObjectMacros.h:1715
@ ScriptMethodMutable
[FunctionMetadata] Used with ScriptMethod to denote that the first argument of the function should be...
Definition ObjectMacros.h:1677
@ AutoCreateRefTerm
Definition ObjectMacros.h:1619
@ HidePinAssetPicker
[FunctionMetadata] Forcibly hide the asset picker for pins matching any parameter names in this piece...
Definition ObjectMacros.h:1624
@ BlueprintInternalUseOnly
[FunctionMetadata] This function is an internal implementation detail, used to implement another func...
Definition ObjectMacros.h:1627
@ CompactNodeTitle
[FunctionMetadata] Indicates that a BlueprintCallable function should display in the compact display ...
Definition ObjectMacros.h:1639
@ CustomStructureParam
[FunctionMetadata] Used with CustomThunk to declare that a parameter is actually polymorphic
Definition ObjectMacros.h:1642
@ AdvancedDisplay
Definition ObjectMacros.h:1609
@ DefaultToSelf
[FunctionMetadata] For BlueprintCallable functions indicates that the object property named's default...
Definition ObjectMacros.h:1645
@ UseEnumValuesAsMaskValuesInEditor
[InterfaceMetadata] Metadata that signals to the editor that enum values correspond to mask values in...
Definition ObjectMacros.h:1769
@ Latent
[FunctionMetadata] Indicates that a BlueprintCallable function is Latent
Definition ObjectMacros.h:1712
@ MapParam
[FunctionMetadata] [InterfaceMetadata] Metadata that flags TMap function parameters that will have th...
Definition ObjectMacros.h:1751
@ MaterialParameterCollectionFunction
[FunctionMetadata] For BlueprintCallable functions indicates that the material override node should b...
Definition ObjectMacros.h:1718
@ AnimBlueprintFunction
[InterfaceMetadata] Stub function used internally by animation blueprints
Definition ObjectMacros.h:1772
@ ScriptConstant
Definition ObjectMacros.h:1697
@ ScriptConstantHost
[FunctionMetadata] Used with ScriptConstant to override the host type for a constant....
Definition ObjectMacros.h:1700
@ ExpandEnumAsExecs
[ClassMetadata] [FunctionMetadata] Used in conjunction with DeprecatedNode or DeprecatedFunction to c...
Definition ObjectMacros.h:1655
@ BitmaskEnum
[FunctionMetadata] [InterfaceMetadata] Metadata that associates a bitmask property with a bitflag enu...
Definition ObjectMacros.h:1763
@ Bitmask
[FunctionMetadata] [InterfaceMetadata] Metadata that identifies an integral property as a bitmask.
Definition ObjectMacros.h:1760
@ CallableWithoutWorldContext
[FunctionMetadata] Used for BlueprintCallable functions that have a WorldContext pin to indicate that...
Definition ObjectMacros.h:1633
@ HideSpawnParms
[FunctionMetadata] For some functions used by async task nodes, specify this parameter should be skip...
Definition ObjectMacros.h:1706
@ BlueprintProtected
[FunctionMetadata] This function is only accessible from within its class and derived classes.
Definition ObjectMacros.h:1630
@ CommutativeAssociativeBinaryOperator
[FunctionMetadata] Indicates that a BlueprintCallable function should use the Commutative Associative...
Definition ObjectMacros.h:1636
@ DataTablePin
[FunctionMetadata][InterfaceMetadata] Metadata to identify an DataTable Pin. Depending on which DataT...
Definition ObjectMacros.h:1745
@ Keywords
[FunctionMetadata] For BlueprintCallable functions provides additional keywords to be associated with...
Definition ObjectMacros.h:1709
@ UnsafeDuringActorConstruction
[FunctionMetadata] Used by BlueprintCallable functions to indicate that this function is not to be al...
Definition ObjectMacros.h:1727
@ DeterminesOutputType
[FunctionMetadata] [InterfaceMetadata] Metadata that flags function params that govern what type of o...
Definition ObjectMacros.h:1739
@ NotBlueprintThreadSafe
Definition ObjectMacros.h:1736
@ NativeMakeFunc
[FunctionMetadata] For BlueprintCallable functions indicates that the function should be displayed th...
Definition ObjectMacros.h:1724
@ ScriptOperator
Definition ObjectMacros.h:1692
@ HidePin
[FunctionMetadata] For BlueprintCallable functions indicates that the parameter pin should be hidden ...
Definition ObjectMacros.h:1703
@ ArrayParm
[FunctionMetadata] Indicates that a BlueprintCallable function should use a Call Array Function node ...
Definition ObjectMacros.h:1612
@ BlueprintAutocast
[FunctionMetadata] Used only by static BlueprintPure functions from BlueprintLibrary....
Definition ObjectMacros.h:1733
@ DeprecatedFunction
[FunctionMetadata] This function is deprecated, any blueprint references to it cause a compilation wa...
Definition ObjectMacros.h:1648
@ MapValueParam
[FunctionMetadata][InterfaceMetadata] Metadata that flags TMap function parameter that will have thei...
Definition ObjectMacros.h:1757
@ DynamicOutputParam
[FunctionMetadata] [InterfaceMetadata] Metadata that flags the function output param that will be con...
Definition ObjectMacros.h:1742
@ NativeBreakFunc
[FunctionMetadata] For BlueprintCallable functions indicates that the function should be displayed th...
Definition ObjectMacros.h:1721
@ ScriptMethod
[ClassMetadata] [PropertyMetadata] [FunctionMetadata] The name to display for this class,...
Definition ObjectMacros.h:1671
@ UE_DEPRECATED
Definition ObjectMacros.h:1621
@ ArrayTypeDependentParams
[FunctionMetadata] Used when ArrayParm has been specified to indicate other function parameters that ...
Definition ObjectMacros.h:1615
@ ExpandBoolAsExecs
Definition ObjectMacros.h:1658
@ WorldContext
[FunctionMetadata] Used by BlueprintCallable functions to indicate which parameter is used to determi...
Definition ObjectMacros.h:1730
@ SetParam
[FunctionMetadata][InterfaceMetadata] Metadata that flags TSet parameters that will have their type d...
Definition ObjectMacros.h:1748
@ ScriptMethodSelfReturn
[FunctionMetadata] Used with ScriptMethod to denote that the return value of the function should over...
Definition ObjectMacros.h:1674
@ MapKeyParam
[FunctionMetadata] [InterfaceMetadata] Metadata that flags TMap function parameters that will have th...
Definition ObjectMacros.h:1754
@ NoElementDuplicate
[PropertyMetadata] Used for array properties. Indicates that the duplicate icon should not be shown f...
Definition ObjectMacros.h:1458
@ GetAssetFilter
Definition ObjectMacros.h:1548
@ SliderExponent
[PropertyMetadata] Used by numeric properties. Indicates how rapidly the value will grow when moving ...
Definition ObjectMacros.h:1491
@ NoSpinbox
[PropertyMetadata] Used for integer and float properties. Indicates that the spin box element of the ...
Definition ObjectMacros.h:1467
@ AllowPreserveRatio
[PropertyMetadata] Used for FVector properties. It causes a ratio lock to be added when displaying th...
Definition ObjectMacros.h:1306
@ ForceRebuildProperty
[PropertyMetaData] Force the specified sibling Editor PropertyNode to refresh itself when this proper...
Definition ObjectMacros.h:1394
@ AllowPrivateAccess
[PropertyMetadata] Indicates that a private member marked as BluperintReadOnly or BlueprintReadWrite ...
Definition ObjectMacros.h:1309
@ ConfigHierarchyEditable
[PropertyMetadata] Property is serialized to config and we should be able to set it anywhere along th...
Definition ObjectMacros.h:1330
@ ShowTreeView
[PropertyMetadata] Used for Subclass and SoftClass properties. Shows the picker as a tree view instea...
Definition ObjectMacros.h:1488
@ MetaClass
[PropertyMetadata] Used FSoftClassPath properties. Indicates the parent class that the class picker w...
Definition ObjectMacros.h:1437
@ GetDisallowedClasses
Definition ObjectMacros.h:1566
@ DisallowedClasses
[PropertyMetadata] Used for FSoftObjectPath, ActorComponentReference and UClass properties....
Definition ObjectMacros.h:1354
@ BlueprintBaseOnly
[PropertyMetadata] Used for Subclass and SoftClass properties. Indicates whether the class picker sho...
Definition ObjectMacros.h:1318
@ TitleProperty
[PropertyMetadata] Used by arrays of structs. Indicates a single property inside of the struct that s...
Definition ObjectMacros.h:1494
@ ForceUnits
[PropertyMetadata] Used instead of 'Units' metadata to forcibly show a property in a fixed unit,...
Definition ObjectMacros.h:1508
@ HideViewOptions
[PropertyMetadata] Used for Subclass and SoftClass properties. Specifies to hide the ability to chang...
Definition ObjectMacros.h:1409
@ RelativeToGameContentDir
[PropertyMetadata] Used by FDirectoryPath properties. Indicates that the directory dialog will output...
Definition ObjectMacros.h:1476
@ HideInDetailPanel
[PropertyMetadata] Indicates that the property should be hidden in the details panel....
Definition ObjectMacros.h:1406
@ ValidEnumValues
[PropertyMetadata] Used for enum properties to define the subset of valid values as a comma-separated...
Definition ObjectMacros.h:1533
@ DisplayAfter
[PropertyMetadata] Indicates that the property should be displayed immediately after the property nam...
Definition ObjectMacros.h:1357
@ GetRestrictedEnumValues
Definition ObjectMacros.h:1542
@ Delta
[PropertyMetadata] Used for float and integer properties. Specifies the step size when the slider is ...
Definition ObjectMacros.h:1336
@ BlueprintCompilerGeneratedDefaults
[PropertyMetadata] Property defaults are generated by the Blueprint compiler and will not be copied w...
Definition ObjectMacros.h:1321
@ AllowEditInlineCustomization
[PropertyMetadata] Used for edit inline UObject* properties, enables detail class customization for i...
Definition ObjectMacros.h:1569
@ OnlyPlaceable
[PropertyMetadata] Used for Subclass properties. Indicates whether only placeable classes should be s...
Definition ObjectMacros.h:1470
@ DevelopmentOnly
[PropertyMetadata] For functions that should be compiled in development mode only.
Definition ObjectMacros.h:1514
@ RelativeToGameDir
[PropertyMetadata] Used by FFilePath properties. Indicates that the FilePicker dialog will output a p...
Definition ObjectMacros.h:1388
@ LatentCallbackTarget
[PropertyMetadata] (Internal use only) Used for the latent action manager to track where it's re-entr...
Definition ObjectMacros.h:1520
@ FixedIncrement
[PropertyMetadata] Deprecated.
Definition ObjectMacros.h:1391
@ GetOptions
Definition ObjectMacros.h:1527
@ ForceShowPluginContent
[PropertyMetadata] Used by asset properties. Indicates that the asset pickers should always show plug...
Definition ObjectMacros.h:1400
@ LinearDeltaSensitivity
Definition ObjectMacros.h:1422
@ ContentDir
[PropertyMetadata] Used by FDirectoryPath properties. Indicates that the path will be picked using th...
Definition ObjectMacros.h:1333
@ ClampMin
[PropertyMetadata] Used for float and integer properties. Specifies the minimum value that may be ent...
Definition ObjectMacros.h:1324
@ GetAllowedClasses
Definition ObjectMacros.h:1560
@ ExposeFunctionCategories
[PropertyMetadata] Specifies a list of categories whose functions should be exposed when building a f...
Definition ObjectMacros.h:1379
@ DisallowedAssetDataTags
[ClassMetadata] [PropertyMetadata] [FunctionMetadata] Used in conjunction with DeprecatedNode,...
Definition ObjectMacros.h:1351
@ ForceShowEngineContent
[PropertyMetadata] Used by asset properties. Indicates that the asset pickers should always show engi...
Definition ObjectMacros.h:1397
@ ShowOnlyInnerProperties
[PropertyMetadata] Used by struct properties. Indicates that the inner properties will not be shown i...
Definition ObjectMacros.h:1485
@ ObjectMustImplement
[PropertyMetadata] Used for object properties. Indicates the selected object must be of a class which...
Definition ObjectMacros.h:1443
@ HideAlphaChannel
[PropertyMetadata] Used for FColor and FLinearColor properties. Indicates that the Alpha property sho...
Definition ObjectMacros.h:1403
@ ExactClass
[PropertyMetadata] Used for FSoftObjectPath properties in conjunction with AllowedClasses....
Definition ObjectMacros.h:1376
@ PasswordField
[PropertyMetadata] Used for FString and FText properties. Indicates that the edit field is a secret f...
Definition ObjectMacros.h:1455
@ UIMax
[PropertyMetadata] Used for float and integer properties. Specifies the highest that the value slider...
Definition ObjectMacros.h:1500
@ InlineEditConditionToggle
[PropertyMetadata] Signifies that the bool property is only displayed inline as an edit condition tog...
Definition ObjectMacros.h:1415
@ MakeStructureDefaultValue
[PropertyMetadata] For properties in a structure indicates the default value of the property in a blu...
Definition ObjectMacros.h:1434
@ RequiredAssetDataTags
[PropertyMetadata] Used by asset properties. Filters out asset that do not have matching data registr...
Definition ObjectMacros.h:1479
@ FilePathFilter
[PropertyMetadata] Used by FFilePath properties. Indicates the path filter to display in the file pic...
Definition ObjectMacros.h:1385
@ Units
Definition ObjectMacros.h:1505
@ AllowAbstract
[PropertyMetadata] Used for Subclass and SoftClass properties. Indicates whether abstract class types...
Definition ObjectMacros.h:1297
@ GetClassFilter
Definition ObjectMacros.h:1554
@ MultiLine
[PropertyMetadata] Used for FString and FText properties. Indicates that the edit field should be mul...
Definition ObjectMacros.h:1452
@ EditCondition
[PropertyMetadata] Specifies a boolean property that is used to indicate whether editing of this prop...
Definition ObjectMacros.h:1367
@ MakeEditWidget
[PropertyMetadata] Used for Transform/Rotator properties (also works on arrays of them)....
Definition ObjectMacros.h:1431
@ MustImplement
[PropertyMetadata] Used for Subclass and SoftClass properties. Indicates the selected class must impl...
Definition ObjectMacros.h:1440
@ DisplayPriority
Definition ObjectMacros.h:1361
@ PinHiddenByDefault
[PropertyMetadata] The property can be exposed as a data pin, but is hidden by default.
Definition ObjectMacros.h:1530
@ DeprecatedProperty
[PropertyMetadata] This property is deprecated, any blueprint references to it cause a compilation wa...
Definition ObjectMacros.h:1339
@ NoResetToDefault
[PropertyMetadata] Property wont have a 'reset to default' button when displayed in property windows
Definition ObjectMacros.h:1461
@ ExposeOnSpawn
[PropertyMetadata] Specifies whether the property should be exposed on a Spawn Actor for the class ty...
Definition ObjectMacros.h:1382
@ NeedsLatentFixup
[PropertyMetadata] (Internal use only) Used for the latent action manager to fix up a latent action w...
Definition ObjectMacros.h:1517
@ InvalidEnumValues
[PropertyMetadata] Used for enum properties to define the subset of invalid values as a comma-separat...
Definition ObjectMacros.h:1536
@ ClampMax
[PropertyMetadata] Used for float and integer properties. Specifies the maximum value that may be ent...
Definition ObjectMacros.h:1327
@ AllowAnyActor
[PropertyMetadata] Used for ComponentReference properties. Indicates whether other actor that are not...
Definition ObjectMacros.h:1300
@ ArrayClamp
[PropertyMetadata] Used for integer properties. Clamps the valid values that can be entered in the UI...
Definition ObjectMacros.h:1312
@ LongPackageName
[ClassMetadata] [PropertyMetadata] Used by TObjectPtr properties. Allows the referenced object to be ...
Definition ObjectMacros.h:1428
@ Multiple
[PropertyMetadata] Used for numeric properties. Stipulates that the value must be a multiple of the m...
Definition ObjectMacros.h:1446
@ IgnoreForMemberInitializationTest
[PropertyMetadata] Used for bypassing property initialization tests when the property cannot be safel...
Definition ObjectMacros.h:1412
@ RelativePath
[PropertyMetadata] Used by FDirectoryPath properties. Indicates that the directory dialog will output...
Definition ObjectMacros.h:1473
@ NoEditInline
[PropertyMetadata] Object properties pointing to an UObject instance whos class is marked editinline ...
Definition ObjectMacros.h:1464
@ DisplayThumbnail
[PropertyMetadata] Indicates that the property is an asset type and it should display the thumbnail o...
Definition ObjectMacros.h:1364
@ MaxLength
[PropertyMetadata] Used for FString and FText properties. Indicates the maximum length of the value t...
Definition ObjectMacros.h:1449
@ EditFixedOrder
[PropertyMetadata] Keeps the elements of an array from being reordered by dragging
Definition ObjectMacros.h:1373
@ ScriptNoExport
[PropertyMetadata] [FunctionMetadata] Flag set on a property or function to prevent it being exported...
Definition ObjectMacros.h:1482
@ AssetBundles
[PropertyMetadata] Used for SoftObjectPtr/SoftObjectPath properties. Comma separated list of Bundle n...
Definition ObjectMacros.h:1315
@ AllowedClasses
[PropertyMetadata] Used for FSoftObjectPath, ComponentReference and UClass properties....
Definition ObjectMacros.h:1303
@ Untracked
[PropertyMetadata] Used for SoftObjectPtr/SoftObjectPath properties to specify a reference should not...
Definition ObjectMacros.h:1511
@ EditConditionHides
[PropertyMetadata] Specifies a boolean property that is used to indicate whether this property should...
Definition ObjectMacros.h:1370
@ UIMin
[PropertyMetadata] Used for float and integer properties. Specifies the lowest that the value slider ...
Definition ObjectMacros.h:1497
@ CannotImplementInterfaceInBlueprint
[InterfaceMetadata] This interface cannot be implemented by a blueprint (e.g., it has only non-expose...
Definition ObjectMacros.h:1782
@ CannotGenerateMessageNodes
Definition ObjectMacros.h:1795
@ ProhibitedInterfaces
[ClassMetadata] Specifies interfaces that are not compatible with the class.
Definition ObjectMacros.h:1255
@ DebugTreeLeaf
[ClassMetadata] Used for objects with hundreds of nested properties like animation data to stop the e...
Definition ObjectMacros.h:1228
@ DontUseGenericSpawnObject
Definition ObjectMacros.h:1265
@ LoadBehavior
[ClassMetadata] [PropertyMetadata] Used by TObjectPtr properties. Specifies that references to object...
Definition ObjectMacros.h:1252
@ DeprecationMessage
[ClassMetadata] [PropertyMetadata] [FunctionMetadata] Used in conjunction with DeprecatedNode,...
Definition ObjectMacros.h:1237
@ ExposedAsyncProxy
Definition ObjectMacros.h:1268
@ BlueprintThreadSafe
Definition ObjectMacros.h:1271
@ DisplayName
[ClassMetadata] [PropertyMetadata] [FunctionMetadata] The name to display for this class,...
Definition ObjectMacros.h:1240
@ BlueprintSpawnableComponent
[ClassMetadata] Used for Actor Component classes. If present indicates that it can be spawned by a Bl...
Definition ObjectMacros.h:1219
@ ChildCanTick
[ClassMetadata] Used for Actor and Component classes. If the native class cannot tick,...
Definition ObjectMacros.h:1222
@ RestrictedToClasses
[ClassMetadata] Used by BlueprintFunctionLibrary classes to restrict the graphs the functions in the ...
Definition ObjectMacros.h:1258
@ DeprecatedNode
[ClassMetadata] For BehaviorTree nodes indicates that the class is deprecated and will display a warn...
Definition ObjectMacros.h:1234
@ ChildCannotTick
[ClassMetadata] Used for Actor and Component classes. If the native class cannot tick,...
Definition ObjectMacros.h:1225
@ ScriptName
[ClassMetadata] [PropertyMetadata] [FunctionMetadata] The name to use for this class,...
Definition ObjectMacros.h:1243
@ UsesHierarchy
[ClassMetadata] Indicates the class uses hierarchical data. Used to instantiate hierarchical editing ...
Definition ObjectMacros.h:1274
@ ShowWorldContextPin
Definition ObjectMacros.h:1262
@ IgnoreCategoryKeywordsInSubclasses
[ClassMetadata] Used to make the first subclass of a class ignore all inherited showCategories and hi...
Definition ObjectMacros.h:1231
@ IsBlueprintBase
[ClassMetadata] Specifies that this class is an acceptable base class for creating blueprints.
Definition ObjectMacros.h:1246
@ KismetHideOverrides
[ClassMetadata] Comma delimited list of blueprint events that are not be allowed to be overridden in ...
Definition ObjectMacros.h:1249
@ HasNativeMake
[StructMetadata] Indicates that the struct has a custom make node (and what the path to the Blueprint...
Definition ObjectMacros.h:1284
@ HiddenByDefault
[StructMetadata] Pins in Make and Break nodes are hidden by default.
Definition ObjectMacros.h:1287
@ HasNativeBreak
[StructMetadata] Indicates that the struct has a custom break node (and what the path to the Blueprin...
Definition ObjectMacros.h:1281
@ DisableSplitPin
[StructMetadata] Indicates that node pins of this struct type cannot be split
Definition ObjectMacros.h:1290
@ RequiredInput
[PropertyMetadata] Used for FMaterialExpression properties in MaterialExpression classes....
Definition ObjectMacros.h:1600
@ OverridingInputProperty
[PropertyMetadata] Used for float properties in MaterialExpression classes. If the specified FMateria...
Definition ObjectMacros.h:1597
@ NeverAsPin
[PropertyMetadata] The property is not exposed as a data pin and is only be editable in the details p...
Definition ObjectMacros.h:1580
@ PinShownByDefault
[PropertyMetadata] The property can be exposed as a data pin and is visible by default....
Definition ObjectMacros.h:1583
@ AlwaysAsPin
[PropertyMetadata] The property is always exposed as a data pin. Applicable only to properties that w...
Definition ObjectMacros.h:1586
@ CustomizeProperty
[PropertyMetadata] Indicates that the property has custom code to display and should not generate a s...
Definition ObjectMacros.h:1589
@ ShortTooltip
A short tooltip that is used in some contexts where the full tooltip might be overwhelming (such as t...
Definition ObjectMacros.h:1209
@ ToolTip
Overrides the automatically generated tooltip from the class comment.
Definition ObjectMacros.h:1206
@ DocumentationPolicy
A setting to determine validation of tooltips and comments. Needs to be set to "Strict".
Definition ObjectMacros.h:1212
Definition ObjectMacros.h:1045
@ SaveGame
Definition ObjectMacros.h:1152
@ AdvancedDisplay
Properties are in the advanced dropdown in a details panel.
Definition ObjectMacros.h:1113
@ Interp
Interpolatable property for use with cinematics. Always user-settable in the editor.
Definition ObjectMacros.h:1095
@ Replicated
Property is relevant to network replication.
Definition ObjectMacros.h:1086
@ NonTransactional
Property isn't transacted.
Definition ObjectMacros.h:1098
@ AssetRegistrySearchable
Definition ObjectMacros.h:1148
@ BlueprintSetter
This property has an accessor to set the value. Implies BlueprintReadWrite. (usage: BlueprintSetter=F...
Definition ObjectMacros.h:1143
@ BlueprintReadOnly
This property can be read by blueprints, but not modified.
Definition ObjectMacros.h:1134
@ VisibleAnywhere
Indicates that this property is visible in property windows, but cannot be edited at all.
Definition ObjectMacros.h:1125
@ BlueprintGetter
This property has an accessor to return the value. Implies BlueprintReadOnly if BlueprintSetter or Bl...
Definition ObjectMacros.h:1137
@ Transient
Property is transient: shouldn't be saved, zero-filled at load time.
Definition ObjectMacros.h:1062
@ Export
Object property can be exported with it's owner.
Definition ObjectMacros.h:1077
@ FieldNotify
Generate a field entry for the NotifyFieldValueChanged interface.
Definition ObjectMacros.h:1170
@ BlueprintAuthorityOnly
MC Delegates only. This delegate accepts (only in blueprint) only events with BlueprintAuthorityOnly.
Definition ObjectMacros.h:1158
@ NonPIETransient
Property should always be reset to the default value unless it's being duplicated for a PIE session -...
Definition ObjectMacros.h:1068
@ Instanced
Property is a component reference. Implies EditInline and Export.
Definition ObjectMacros.h:1101
@ BlueprintReadWrite
This property can be read or written from a blueprint.
Definition ObjectMacros.h:1140
@ GlobalConfig
Same as above but load config from base class, not subclass.
Definition ObjectMacros.h:1056
@ Category
Specifies the category of the property. Usage: Category=CategoryName.
Definition ObjectMacros.h:1107
@ EditAnywhere
Indicates that this property can be edited by property windows in the editor.
Definition ObjectMacros.h:1116
@ DuplicateTransient
Property should always be reset to the default value during any type of duplication (copy/paste,...
Definition ObjectMacros.h:1065
@ SimpleDisplay
Properties appear visible by default in a details panel.
Definition ObjectMacros.h:1110
@ TextExportTransient
Property shouldn't be exported to text format (e.g. copy/paste)
Definition ObjectMacros.h:1161
@ NoClear
Hide clear button in the editor.
Definition ObjectMacros.h:1080
@ NonPIEDuplicateTransient
Property should always be reset to the default value unless it's being duplicated for a PIE session.
Definition ObjectMacros.h:1071
@ EditInstanceOnly
Indicates that this property can be edited by property windows, but only on instances,...
Definition ObjectMacros.h:1119
@ EditFixedSize
Indicates that elements of an array can be modified, but its size cannot be changed.
Definition ObjectMacros.h:1083
@ Config
Property should be loaded/saved to ini file as permanent profile.
Definition ObjectMacros.h:1053
@ SkipSerialization
Property shouldn't be serialized, can still be exported to text.
Definition ObjectMacros.h:1164
@ Const
This property is const and should be exported as const.
Definition ObjectMacros.h:1050
@ NotReplicated
Skip replication (only for struct members and parameters in service request functions).
Definition ObjectMacros.h:1092
@ BlueprintCallable
MC Delegates only. Property should be exposed for calling in blueprint code.
Definition ObjectMacros.h:1155
@ ReplicatedUsing
Property is relevant to network replication. Notify actors when a property is replicated (usage: Repl...
Definition ObjectMacros.h:1089
@ HideSelfPin
If true, the self pin should not be shown or connectable regardless of purity, const,...
Definition ObjectMacros.h:1167
@ Ref
Value is copied out after function call. Only valid on function param declaration.
Definition ObjectMacros.h:1074
@ VisibleDefaultsOnly
Indicates that this property is only visible in property windows for archetypes, and cannot be edited...
Definition ObjectMacros.h:1131
@ VisibleInstanceOnly
Indicates that this property is only visible in property windows for instances, not for archetypes,...
Definition ObjectMacros.h:1128
@ Localized
Property should be loaded as localizable text. Implies ReadOnly.
Definition ObjectMacros.h:1059
@ EditDefaultsOnly
Indicates that this property can be edited by property windows, but only on archetypes.
Definition ObjectMacros.h:1122
@ BlueprintAssignable
MC Delegates only. Property should be exposed for assigning in blueprints.
Definition ObjectMacros.h:1104
Definition ObjectMacros.h:1175
@ NoExport
No autogenerated code will be created for this class; the header is only provided to parse metadata f...
Definition ObjectMacros.h:1180
@ Immutable
Immutable is only legal in Object.h and is being phased out, do not use on new structs!
Definition ObjectMacros.h:1186
@ BlueprintType
Exposes this struct as a type that can be used for variables in blueprints.
Definition ObjectMacros.h:1189
@ Atomic
Indicates that this struct should always be serialized as a single unit.
Definition ObjectMacros.h:1183
@ BlueprintInternalUseOnly
Indicates that a BlueprintType struct should not be exposed to the end user.
Definition ObjectMacros.h:1192
@ BlueprintInternalUseOnlyHierarchical
Indicates that a BlueprintType struct and its derived structs should not be exposed to the end user.
Definition ObjectMacros.h:1195
Definition UObjectBase.h:498
Definition TopLevelAssetPath.h:38
Definition ObjectMacros.h:2059
AddReferencedObjectsType GetAddReferencedObjects() const
Definition ObjectMacros.h:2114
bool IsInitialized() const
Definition ObjectMacros.h:2102
void(* AddReferencedObjectsType)(UObject *ThisObject, FReferenceCollector &Ar)
Definition ObjectMacros.h:2061
constexpr FUObjectCppClassStaticFunctions(AddReferencedObjectsType InAddReferencedObjects)
Definition ObjectMacros.h:2076
void Reset()
Definition ObjectMacros.h:2108
FUObjectCppClassStaticFunctions()=default
consteval FUObjectCppClassStaticFunctions(TClass *Null)
Definition ObjectMacros.h:2071
void SetAddReferencedObjects(AddReferencedObjectsType InAddReferencedObjects)
Definition ObjectMacros.h:2118