UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UEnum Class Reference

#include <Class.h>

+ Inheritance diagram for UEnum:

Classes

class  FNameData
 

Public Types

enum class  ECppForm : uint8 { Regular , Namespaced , EnumClass }
 
- Public Types inherited from UField
typedef UField BaseFieldClass
 
typedef UClass FieldTypeClass
 
using FLinkedListBuilder = TObjectPtrLinkedListBuilder< UField >
 
- Public Types inherited from UObject
enum class  ENetFields_Private { NETFIELD_REP_START = 0 , NETFIELD_REP_END = -1 }
 
typedef UObject WithinClass
 

Public Member Functions

COREUOBJECT_API UEnum (const FObjectInitializer &ObjectInitialzer)
 
int32 GetIndexByValue (int64 InValue) const
 
int64 GetValueByIndex (int32 Index) const
 
COREUOBJECT_API FName GetNameByIndex (int32 Index) const
 
COREUOBJECT_API int32 GetIndexByName (FName InName, EGetByNameFlags Flags=EGetByNameFlags::None) const
 
COREUOBJECT_API FName GetNameByValue (int64 InValue) const
 
COREUOBJECT_API int64 GetValueByName (FName InName, EGetByNameFlags Flags=EGetByNameFlags::None) const
 
COREUOBJECT_API int64 GetValueOrBitfieldFromString (FStringView InString, EGetByNameFlags LookupFlags=EGetByNameFlags::None) const
 
COREUOBJECT_API FString GetNameStringByIndex (int32 InIndex) const
 
COREUOBJECT_API int32 GetIndexByNameString (const FString &SearchString, EGetByNameFlags Flags=EGetByNameFlags::None) const
 
COREUOBJECT_API FString GetNameStringByValue (int64 InValue) const
 
COREUOBJECT_API FString GetValueOrBitfieldAsString (int64 InValue) const
 
COREUOBJECT_API FString GetValueOrBitfieldAsAuthoredNameString (int64 InValue) const
 
COREUOBJECT_API FText GetValueOrBitfieldAsDisplayNameText (int64 InValue) const
 
COREUOBJECT_API bool FindNameStringByValue (FString &Out, int64 InValue) const
 
COREUOBJECT_API int64 GetValueByNameString (const FString &SearchString, EGetByNameFlags Flags=EGetByNameFlags::None) const
 
virtual COREUOBJECT_API FText GetDisplayNameTextByIndex (int32 InIndex) const
 
COREUOBJECT_API FText GetDisplayNameTextByValue (int64 InValue) const
 
COREUOBJECT_API bool FindDisplayNameTextByValue (FText &Out, int64 InValue) const
 
virtual COREUOBJECT_API FString GetAuthoredNameStringByIndex (int32 InIndex) const
 
COREUOBJECT_API FString GetAuthoredNameStringByValue (int64 InValue) const
 
COREUOBJECT_API bool FindAuthoredNameStringByValue (FString &Out, int64 InValue) const
 
COREUOBJECT_API int64 GetMaxEnumValue () const
 
COREUOBJECT_API bool IsValidEnumValue (int64 InValue) const
 
COREUOBJECT_API bool IsValidEnumValueOrBitfield (int64 InValue) const
 
COREUOBJECT_API bool IsValidEnumName (FName InName) const
 
void RemoveNamesFromMasterList ()
 
COREUOBJECT_API void RemoveNamesFromPrimaryList ()
 
virtual COREUOBJECT_API int64 ResolveEnumerator (FArchive &Ar, int64 EnumeratorIndex) const
 
void SetEnumDisplayNameFn (FEnumDisplayNameFn InEnumDisplayNameFn)
 
ECppForm GetCppForm () const
 
void SetEnumFlags (EEnumFlags FlagsToSet)
 
bool HasAnyEnumFlags (EEnumFlags InFlags) const
 
virtual COREUOBJECT_API FString GenerateFullEnumName (const TCHAR *InEnumName) const
 
COREUOBJECT_API bool ContainsExistingMax () const
 
virtual COREUOBJECT_API bool SetEnums (TArray< TPair< FName, int64 > > &InNames, ECppForm InCppForm, EEnumFlags InFlags=EEnumFlags::None, bool bAddMaxKeyIfMissing=true)
 
int32 NumEnums () const
 
COREUOBJECT_API FString GenerateEnumPrefix () const
 
virtual COREUOBJECT_API void Serialize (FArchive &Ar) override
 
virtual COREUOBJECT_API void BeginDestroy () override
 
COREUOBJECT_API ~UEnum ()
 
- Public Member Functions inherited from UField
 UField (const FObjectInitializer &ObjectInitializer)
 
 UField (EStaticConstructor, EObjectFlags InFlags)
 
 ~UField ()=default
 
virtual COREUOBJECT_API void PostLoad () override
 
virtual COREUOBJECT_API bool NeedsLoadForClient () const override
 
virtual COREUOBJECT_API bool NeedsLoadForServer () const override
 
virtual COREUOBJECT_API void AddCppProperty (FProperty *Property)
 
virtual COREUOBJECT_API void Bind ()
 
COREUOBJECT_API UClassGetOwnerClass () const
 
COREUOBJECT_API UStructGetOwnerStruct () const
 
COREUOBJECT_API FString GetAuthoredName () const
 
COREUOBJECT_API bool HasAnyCastFlags (const uint64 InCastFlags) const
 
COREUOBJECT_API bool HasAllCastFlags (const uint64 InCastFlags) const
 
- Public Member Functions inherited from UObject
COREUOBJECT_API UObject ()
 
COREUOBJECT_API UObject (const FObjectInitializer &ObjectInitializer)
 
COREUOBJECT_API UObject (EStaticConstructor, EObjectFlags InFlags)
 
COREUOBJECT_API UObject (FVTableHelper &Helper)
 
COREUOBJECT_API UObjectCreateDefaultSubobject (FName SubobjectFName, UClass *ReturnType, UClass *ClassToCreateByDefault, bool bIsRequired, bool bIsTransient)
 
template<class TReturnType >
TReturnTypeCreateEditorOnlyDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
template<class TReturnType , class TClassToConstructByDefault >
TReturnTypeCreateOptionalDefaultSubobject (FName SubobjectName, bool bTransient=false)
 
COREUOBJECT_API void GetDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects)
 
COREUOBJECT_API UObjectGetDefaultSubobjectByName (FName ToFind)
 
virtual COREUOBJECT_API void PostInitProperties ()
 
virtual COREUOBJECT_API void PostReinitProperties ()
 
virtual void PostCDOContruct ()
 
virtual COREUOBJECT_API void PreSaveRoot (FObjectPreSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PostSaveRoot (FObjectPostSaveRootContext ObjectSaveContext)
 
virtual COREUOBJECT_API void PreSave (FObjectPreSaveContext SaveContext)
 
virtual COREUOBJECT_API void CollectSaveOverrides (FObjectCollectSaveOverridesContext SaveContext)
 
UE_FORCEINLINE_HINT bool Modify (bool bAlwaysMarkDirty=true)
 
UE_FORCEINLINE_HINT bool IsCapturingAsRootObjectForTransaction () const
 
virtual bool ResolveSubobject (const TCHAR *SubObjectPath, UObject *&OutObject, bool bLoadIfExists)
 
virtual bool IsReadyForAsyncPostLoad () const
 
virtual COREUOBJECT_API void PostLoadSubobjects (FObjectInstancingGraph *OuterInstanceGraph)
 
virtual bool IsReadyForFinishDestroy ()
 
virtual COREUOBJECT_API void FinishDestroy ()
 
virtual COREUOBJECT_API void Serialize (FStructuredArchive::FRecord Record)
 
virtual void ShutdownAfterError ()
 
virtual void PostInterpChange (FProperty *PropertyThatChanged)
 
virtual COREUOBJECT_API void PostRename (UObject *OldOuter, const FName OldName)
 
virtual void PreDuplicate (FObjectDuplicationParameters &DupParams)
 
virtual void PostDuplicate (bool bDuplicateForPIE)
 
virtual void PostDuplicate (EDuplicateMode::Type DuplicateMode)
 
virtual COREUOBJECT_API bool NeedsLoadForTargetPlatform (const class ITargetPlatform *TargetPlatform) const
 
virtual bool NeedsLoadForEditorGame () const
 
virtual bool IsEditorOnly () const
 
virtual bool HasNonEditorOnlyReferences () const
 
virtual bool IsPostLoadThreadSafe () const
 
virtual COREUOBJECT_API bool IsDestructionThreadSafe () const
 
virtual COREUOBJECT_API void GetPreloadDependencies (TArray< UObject * > &OutDeps)
 
virtual void GetPrestreamPackages (TArray< UObject * > &OutPrestream)
 
virtual void ExportCustomProperties (FOutputDevice &Out, uint32 Indent)
 
virtual void ImportCustomProperties (const TCHAR *SourceText, FFeedbackContext *Warn)
 
virtual void PostEditImport ()
 
virtual void PostReloadConfig (class FProperty *PropertyThatWasLoaded)
 
virtual COREUOBJECT_API bool Rename (const TCHAR *NewName=nullptr, UObject *NewOuter=nullptr, ERenameFlags Flags=REN_None)
 
virtual FString GetDesc ()
 
COREUOBJECT_API UScriptStructGetSparseClassDataStruct () const
 
virtual bool GetNativePropertyValues (TMap< FString, FString > &out_PropertyValues, uint32 ExportFlags=0) const
 
virtual COREUOBJECT_API void GetResourceSizeEx (FResourceSizeEx &CumulativeResourceSize)
 
SIZE_T GetResourceSizeBytes (EResourceSizeMode::Type Mode)
 
virtual FName GetExporterName (void)
 
COREUOBJECT_API void CallAddReferencedObjects (FReferenceCollector &Collector)
 
virtual FRestoreForUObjectOverwriteGetRestoreForUObjectOverwrite ()
 
virtual bool AreNativePropertiesIdenticalTo (UObject *Other) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context) const
 
virtual COREUOBJECT_API void GetAssetRegistryTags (TArray< FAssetRegistryTag > &OutTags) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetData &Out) const
 
COREUOBJECT_API void GetAssetRegistryTags (FAssetRegistryTagsContext Context, FAssetData &Out) const
 
virtual COREUOBJECT_API bool IsAsset () const
 
virtual COREUOBJECT_API FPrimaryAssetId GetPrimaryAssetId () const
 
virtual COREUOBJECT_API bool IsLocalizedResource () const
 
virtual COREUOBJECT_API bool IsSafeForRootSet () const
 
virtual COREUOBJECT_API void TagSubobjects (EObjectFlags NewFlags)
 
virtual COREUOBJECT_API void GetLifetimeReplicatedProps (TArray< class FLifetimeProperty > &OutLifetimeProps) const
 
virtual COREUOBJECT_API void GetReplicatedCustomConditionState (FCustomPropertyConditionState &OutActiveState) const
 
virtual COREUOBJECT_API void RegisterReplicationFragments (UE::Net::FFragmentRegistrationContext &Context, UE::Net::EFragmentRegistrationFlags RegistrationFlags)
 
virtual COREUOBJECT_API bool IsNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsFullNameStableForNetworking () const
 
virtual COREUOBJECT_API bool IsSupportedForNetworking () const
 
virtual void GetSubobjectsWithStableNamesForNetworking (TArray< UObject * > &ObjList)
 
virtual COREUOBJECT_API void PreNetReceive ()
 
virtual COREUOBJECT_API void PostNetReceive ()
 
virtual void PostRepNotifies ()
 
virtual COREUOBJECT_API void PreDestroyFromReplication ()
 
COREUOBJECT_API bool IsSelected () const
 
COREUOBJECT_API void SerializeScriptProperties (FArchive &Ar) const
 
COREUOBJECT_API void SerializeScriptProperties (FStructuredArchive::FSlot Slot) const
 
COREUOBJECT_API void ReinitializeProperties (UObject *SourceObject=NULL, struct FObjectInstancingGraph *InstanceGraph=NULL)
 
COREUOBJECT_API FString GetDetailedInfo () const
 
COREUOBJECT_API bool ConditionalBeginDestroy ()
 
COREUOBJECT_API bool ConditionalFinishDestroy ()
 
COREUOBJECT_API void ConditionalPostLoad ()
 
COREUOBJECT_API void ConditionalPreload ()
 
COREUOBJECT_API void ConditionalPostLoadSubobjects (struct FObjectInstancingGraph *OuterInstanceGraph=NULL)
 
bool IsBasedOnArchetype (const UObject *const SomeObject) const
 
COREUOBJECT_API UFunctionFindFunction (FName InName) const
 
COREUOBJECT_API UFunctionFindFunctionChecked (FName InName) const
 
virtual COREUOBJECT_API void BuildSubobjectMapping (UObject *OtherObject, TMap< UObject *, UObject * > &ObjectMapping) const
 
COREUOBJECT_API void CollectDefaultSubobjects (TArray< UObject * > &OutDefaultSubobjects, bool bIncludeNestedSubobjects=false) const
 
COREUOBJECT_API bool CheckDefaultSubobjects (bool bForceCheck=false) const
 
COREUOBJECT_API void SaveConfig (uint64 RequiredPropertyFlags=CPF_Config, const TCHAR *Filename=nullptr, FConfigCacheIni *Config=GConfig, bool bAllowCopyToDefaultObject=true)
 
COREUOBJECT_API void SaveConfig (const FSaveConfigContext &Context)
 
COREUOBJECT_API void UpdateDefaultConfigFile (const FString &SpecificFileLocation="")
 
COREUOBJECT_API bool TryUpdateDefaultConfigFile (const FString &SpecificFileLocation="", bool bWarnIfFail=true)
 
COREUOBJECT_API void UpdateGlobalUserConfigFile ()
 
COREUOBJECT_API void UpdateProjectUserConfigFile ()
 
COREUOBJECT_API void UpdateSinglePropertyInConfigFile (const FProperty *InProperty, const FString &InConfigIniName)
 
COREUOBJECT_API FString GetDefaultConfigFilename () const
 
COREUOBJECT_API FString GetGlobalUserConfigFilename () const
 
COREUOBJECT_API FString GetProjectUserConfigFilename () const
 
virtual const TCHARGetConfigOverridePlatform () const
 
virtual void OverrideConfigSection (FString &SectionName)
 
virtual void OverridePerObjectConfigSection (FString &SectionName)
 
COREUOBJECT_API void LoadConfig (UClass *ConfigClass=nullptr, const TCHAR *Filename=nullptr, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=nullptr, TArray< UE::ConfigAccessTracking::FConfigAccessData > *OutAccessedKeys=nullptr)
 
COREUOBJECT_API void ReloadConfig (UClass *ConfigClass=NULL, const TCHAR *Filename=NULL, uint32 PropagationFlags=UE::LCPF_None, class FProperty *PropertyToLoad=NULL)
 
COREUOBJECT_API void ParseParms (const TCHAR *Parms)
 
COREUOBJECT_API void OutputReferencers (FOutputDevice &Ar, FReferencerInformationList *Referencers=NULL)
 
COREUOBJECT_API void RetrieveReferencers (TArray< FReferencerInformation > *OutInternalReferencers, TArray< FReferencerInformation > *OutExternalReferencers)
 
COREUOBJECT_API void SetLinker (FLinkerLoad *LinkerLoad, int32 LinkerIndex, bool bShouldDetachExisting=true, bool bSilenceLogs=false)
 
COREUOBJECT_API UObjectGetArchetype () const
 
COREUOBJECT_API void GetArchetypeInstances (TArray< UObject * > &Instances)
 
COREUOBJECT_API void InstanceSubobjectTemplates (struct FObjectInstancingGraph *InstanceGraph=NULL)
 
template<class T >
bool Implements () const
 
virtual COREUOBJECT_API void ProcessEvent (UFunction *Function, void *Parms)
 
virtual int32 GetFunctionCallspace (UFunction *Function, FFrame *Stack)
 
virtual bool CallRemoteFunction (UFunction *Function, void *Parms, struct FOutParmRec *OutParms, FFrame *Stack)
 
COREUOBJECT_API bool CallFunctionByNameWithArguments (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor, bool bForceCallWithNonExec=false)
 
COREUOBJECT_API void CallFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
 DECLARE_FUNCTION (ProcessInternal)
 
virtual bool ProcessConsoleExec (const TCHAR *Cmd, FOutputDevice &Ar, UObject *Executor)
 
COREUOBJECT_API void SkipFunction (FFrame &Stack, RESULT_DECL, UFunction *Function)
 
virtual UClassRegenerateClass (UClass *ClassToRegenerate, UObject *PreviousCDO)
 
COREUOBJECT_API bool IsInBlueprint () const
 
COREUOBJECT_API void DestroyNonNativeProperties ()
 
virtual void MarkAsEditorOnlySubobject ()
 
COREUOBJECT_API void AbortInsideMemberFunction () const
 
 DECLARE_FUNCTION (execUndefined)
 
 DECLARE_FUNCTION (execLocalVariable)
 
 DECLARE_FUNCTION (execInstanceVariable)
 
 DECLARE_FUNCTION (execDefaultVariable)
 
 DECLARE_FUNCTION (execLocalOutVariable)
 
 DECLARE_FUNCTION (execInterfaceVariable)
 
 DECLARE_FUNCTION (execClassSparseDataVariable)
 
 DECLARE_FUNCTION (execInterfaceContext)
 
 DECLARE_FUNCTION (execArrayElement)
 
 DECLARE_FUNCTION (execBoolVariable)
 
 DECLARE_FUNCTION (execClassDefaultVariable)
 
 DECLARE_FUNCTION (execEndFunctionParms)
 
 DECLARE_FUNCTION (execNothing)
 
 DECLARE_FUNCTION (execNothingInt32)
 
 DECLARE_FUNCTION (execNothingOp4a)
 
 DECLARE_FUNCTION (execBreakpoint)
 
 DECLARE_FUNCTION (execTracepoint)
 
 DECLARE_FUNCTION (execWireTracepoint)
 
 DECLARE_FUNCTION (execInstrumentation)
 
 DECLARE_FUNCTION (execEndOfScript)
 
 DECLARE_FUNCTION (execReturnNothing)
 
 DECLARE_FUNCTION (execEmptyParmValue)
 
 DECLARE_FUNCTION (execJump)
 
 DECLARE_FUNCTION (execJumpIfNot)
 
 DECLARE_FUNCTION (execAssert)
 
 DECLARE_FUNCTION (execPushExecutionFlow)
 
 DECLARE_FUNCTION (execPopExecutionFlow)
 
 DECLARE_FUNCTION (execComputedJump)
 
 DECLARE_FUNCTION (execPopExecutionFlowIfNot)
 
 DECLARE_FUNCTION (execLet)
 
 DECLARE_FUNCTION (execLetObj)
 
 DECLARE_FUNCTION (execLetWeakObjPtr)
 
 DECLARE_FUNCTION (execLetBool)
 
 DECLARE_FUNCTION (execLetDelegate)
 
 DECLARE_FUNCTION (execLetMulticastDelegate)
 
 DECLARE_FUNCTION (execAddMulticastDelegate)
 
 DECLARE_FUNCTION (execClearMulticastDelegate)
 
 DECLARE_FUNCTION (execEatReturnValue)
 
 DECLARE_FUNCTION (execRemoveMulticastDelegate)
 
 DECLARE_FUNCTION (execSelf)
 
 DECLARE_FUNCTION (execContext)
 
 DECLARE_FUNCTION (execContext_FailSilent)
 
 DECLARE_FUNCTION (execStructMemberContext)
 
 DECLARE_FUNCTION (execVirtualFunction)
 
 DECLARE_FUNCTION (execFinalFunction)
 
 DECLARE_FUNCTION (execLocalVirtualFunction)
 
 DECLARE_FUNCTION (execLocalFinalFunction)
 
 DECLARE_FUNCTION (execStructCmpEq)
 
 DECLARE_FUNCTION (execStructCmpNe)
 
 DECLARE_FUNCTION (execStructMember)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execNotEqual_DelegateDelegate)
 
 DECLARE_FUNCTION (execEqualEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execNotEqual_DelegateFunction)
 
 DECLARE_FUNCTION (execIntConst)
 
 DECLARE_FUNCTION (execInt64Const)
 
 DECLARE_FUNCTION (execUInt64Const)
 
 DECLARE_FUNCTION (execSkipOffsetConst)
 
 DECLARE_FUNCTION (execFloatConst)
 
 DECLARE_FUNCTION (execDoubleConst)
 
 DECLARE_FUNCTION (execStringConst)
 
 DECLARE_FUNCTION (execUnicodeStringConst)
 
 DECLARE_FUNCTION (execTextConst)
 
 DECLARE_FUNCTION (execPropertyConst)
 
 DECLARE_FUNCTION (execObjectConst)
 
 DECLARE_FUNCTION (execSoftObjectConst)
 
 DECLARE_FUNCTION (execFieldPathConst)
 
 DECLARE_FUNCTION (execInstanceDelegate)
 
 DECLARE_FUNCTION (execNameConst)
 
 DECLARE_FUNCTION (execByteConst)
 
 DECLARE_FUNCTION (execIntZero)
 
 DECLARE_FUNCTION (execIntOne)
 
 DECLARE_FUNCTION (execTrue)
 
 DECLARE_FUNCTION (execFalse)
 
 DECLARE_FUNCTION (execNoObject)
 
 DECLARE_FUNCTION (execNullInterface)
 
 DECLARE_FUNCTION (execIntConstByte)
 
 DECLARE_FUNCTION (execRotationConst)
 
 DECLARE_FUNCTION (execVectorConst)
 
 DECLARE_FUNCTION (execVector3fConst)
 
 DECLARE_FUNCTION (execTransformConst)
 
 DECLARE_FUNCTION (execStructConst)
 
 DECLARE_FUNCTION (execSetArray)
 
 DECLARE_FUNCTION (execSetSet)
 
 DECLARE_FUNCTION (execSetMap)
 
 DECLARE_FUNCTION (execArrayConst)
 
 DECLARE_FUNCTION (execSetConst)
 
 DECLARE_FUNCTION (execMapConst)
 
 DECLARE_FUNCTION (execBitFieldConst)
 
 DECLARE_FUNCTION (execNew)
 
 DECLARE_FUNCTION (execClassContext)
 
 DECLARE_FUNCTION (execNativeParm)
 
 DECLARE_FUNCTION (execCast)
 
 DECLARE_FUNCTION (execDynamicCast)
 
 DECLARE_FUNCTION (execMetaCast)
 
 DECLARE_FUNCTION (execInterfaceCast)
 
 DECLARE_FUNCTION (execDoubleToFloatCast)
 
 DECLARE_FUNCTION (execFloatToDoubleCast)
 
 DECLARE_FUNCTION (execObjectToBool)
 
 DECLARE_FUNCTION (execInterfaceToBool)
 
 DECLARE_FUNCTION (execObjectToInterface)
 
 DECLARE_FUNCTION (execInterfaceToInterface)
 
 DECLARE_FUNCTION (execInterfaceToObject)
 
 DECLARE_FUNCTION (execGetDynArrayElement)
 
 DECLARE_FUNCTION (execSetDynArrayElement)
 
 DECLARE_FUNCTION (execGetDynArrayLength)
 
 DECLARE_FUNCTION (execSetDynArrayLength)
 
 DECLARE_FUNCTION (execDynArrayInsert)
 
 DECLARE_FUNCTION (execDynArrayRemove)
 
 DECLARE_FUNCTION (execDynArrayFind)
 
 DECLARE_FUNCTION (execDynArrayFindStruct)
 
 DECLARE_FUNCTION (execDynArrayAdd)
 
 DECLARE_FUNCTION (execDynArrayAddItem)
 
 DECLARE_FUNCTION (execDynArrayInsertItem)
 
 DECLARE_FUNCTION (execDynArrayRemoveItem)
 
 DECLARE_FUNCTION (execDynArraySort)
 
 DECLARE_FUNCTION (execBindDelegate)
 
 DECLARE_FUNCTION (execCallMulticastDelegate)
 
 DECLARE_FUNCTION (execLetValueOnPersistentFrame)
 
 DECLARE_FUNCTION (execCallMathFunction)
 
 DECLARE_FUNCTION (execSwitchValue)
 
 DECLARE_FUNCTION (execArrayGetByRef)
 
 DECLARE_FUNCTION (execAutoRtfmTransact)
 
 DECLARE_FUNCTION (execAutoRtfmStopTransact)
 
 DECLARE_FUNCTION (execAutoRtfmAbortIfNot)
 
void ExecuteUbergraph (int32 EntryPoint)
 
virtual void ValidateGeneratedRepEnums (const TArray< struct FRepRecord > &ClassReps) const
 
virtual uint64 GetNetPushIdDynamic () const
 
- Public Member Functions inherited from UObjectBaseUtility
 UObjectBaseUtility ()
 
 UObjectBaseUtility (EObjectFlags InFlags)
 
void SetFlags (EObjectFlags NewFlags)
 
void ClearFlags (EObjectFlags FlagsToClear)
 
bool HasAnyFlags (EObjectFlags FlagsToCheck) const
 
bool HasAllFlags (EObjectFlags FlagsToCheck) const
 
UE_FORCEINLINE_HINT EObjectFlags GetMaskedFlags (EObjectFlags Mask=RF_AllFlags) const
 
UE_FORCEINLINE_HINT void Mark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT void UnMark (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAnyMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT bool HasAllMarks (EObjectMark Marks) const
 
UE_FORCEINLINE_HINT EObjectMark GetAllMarks () const
 
void MarkAsGarbage ()
 
void ClearGarbage ()
 
UE_FORCEINLINE_HINT void AddToRoot ()
 
UE_FORCEINLINE_HINT void RemoveFromRoot ()
 
UE_FORCEINLINE_HINT bool IsRooted () const
 
UE_FORCEINLINE_HINT int32 GetRefCount () const
 
bool ThisThreadAtomicallyClearedRFUnreachable ()
 
UE_FORCEINLINE_HINT bool IsUnreachable () const
 
UE_FORCEINLINE_HINT bool IsNative () const
 
void SetInternalFlags (EInternalObjectFlags FlagsToSet) const
 
UE_FORCEINLINE_HINT EInternalObjectFlags GetInternalFlags () const
 
UE_FORCEINLINE_HINT bool HasAnyInternalFlags (EInternalObjectFlags FlagsToCheck) const
 
void ClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
bool AtomicallyClearInternalFlags (EInternalObjectFlags FlagsToClear) const
 
COREUOBJECT_API FString GetFullName (const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (const UObject *StopOuter, FString &ResultString, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API void GetFullName (FStringBuilderBase &ResultString, const UObject *StopOuter=NULL, EObjectFullNameFlags Flags=EObjectFullNameFlags::None) const
 
COREUOBJECT_API FString GetPathName (const UObject *StopOuter=NULL) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FString &ResultString) const
 
COREUOBJECT_API void GetPathName (const UObject *StopOuter, FStringBuilderBase &ResultString) const
 
virtual bool CanBeClusterRoot () const
 
virtual COREUOBJECT_API bool CanBeInCluster () const
 
virtual COREUOBJECT_API void CreateCluster ()
 
virtual void OnClusterMarkedAsPendingKill ()
 
COREUOBJECT_API void AddToCluster (UObjectBaseUtility *ClusterRootOrObjectFromCluster, bool bAddAsMutableObject=false)
 
COREUOBJECT_API FString GetFullGroupName (bool bStartWithOuter) const
 
UE_FORCEINLINE_HINT FString GetName () const
 
UE_FORCEINLINE_HINT void GetName (FString &ResultString) const
 
UE_FORCEINLINE_HINT void AppendName (FString &ResultString) const
 
COREUOBJECT_API bool IsPackageExternal () const
 
COREUOBJECT_API void DetachExternalPackage ()
 
COREUOBJECT_API void ReattachExternalPackage ()
 
COREUOBJECT_API UObjectGetOutermostObject () const
 
COREUOBJECT_API UPackageGetPackage () const
 
UE_INTERNAL virtual COREUOBJECT_API UE::Core::FVersePath GetVersePath () const
 
COREUOBJECT_API UPackageGetOutermost () const
 
COREUOBJECT_API bool MarkPackageDirty () const
 
COREUOBJECT_API bool IsTemplate (EObjectFlags TemplateTypes=RF_ArchetypeObject|RF_ClassDefaultObject) const
 
COREUOBJECT_API UObjectGetTypedOuter (UClass *Target) const
 
template<typename T >
T * GetTypedOuter () const
 
template<typename InterfaceClassType >
InterfaceClassTypeGetImplementingOuter () const
 
COREUOBJECT_API UObjectBaseUtilityGetImplementingOuterObject (const UClass *InInterfaceClass) const
 
COREUOBJECT_API bool IsIn (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsIn (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInOuter (const UObject *SomeOuter) const
 
COREUOBJECT_API bool IsInPackage (const UPackage *SomePackage) const
 
COREUOBJECT_API bool IsInA (const UClass *SomeBaseClass) const
 
COREUOBJECT_API bool RootPackageHasAnyFlags (uint32 CheckFlagMask) const
 
template<typename OtherClassType >
bool IsA (OtherClassType SomeBase) const
 
template<class T >
bool IsA () const
 
COREUOBJECT_API const UClassFindNearestCommonBaseClass (const UClass *TestClass) const
 
COREUOBJECT_API voidGetInterfaceAddress (UClass *InterfaceClass)
 
COREUOBJECT_API voidGetNativeInterfaceAddress (UClass *InterfaceClass)
 
const voidGetNativeInterfaceAddress (UClass *InterfaceClass) const
 
COREUOBJECT_API bool IsTemplateForSubobjects (EObjectFlags TemplateTypes=RF_ClassDefaultObject|RF_DefaultSubObject|RF_InheritableComponentTemplate) const
 
COREUOBJECT_API bool IsDefaultSubobject () const
 
COREUOBJECT_API class FLinkerLoadGetLinker () const
 
COREUOBJECT_API int32 GetLinkerIndex () const
 
COREUOBJECT_API FPackageFileVersion GetLinkerUEVersion () const
 
int32 GetLinkerUE4Version () const
 
COREUOBJECT_API int32 GetLinkerLicenseeUEVersion () const
 
int32 GetLinkerLicenseeUE4Version () const
 
COREUOBJECT_API int32 GetLinkerCustomVersion (FGuid CustomVersionKey) const
 
UE_FORCEINLINE_HINT bool operator< (const UObjectBaseUtility &Other) const
 
TStatId GetStatID (bool bForDeferredUse=false) const
 
- Public Member Functions inherited from UObjectBase
COREUOBJECT_API UObjectBase (UClass *InClass, EObjectFlags InFlags, EInternalObjectFlags InInternalFlags, UObject *InOuter, FName InName, int32 InInternalIndex=-1, int32 InSerialNumber=0, FRemoteObjectId InRemoteId=FRemoteObjectId())
 
virtual COREUOBJECT_API ~UObjectBase ()
 
COREUOBJECT_API bool IsValidLowLevel () const
 
COREUOBJECT_API bool IsValidLowLevelFast (bool bRecursive=true) const
 
FORCEINLINE uint32 GetUniqueID () const
 
FORCEINLINE UClassGetClass () const
 
FORCEINLINE UObjectGetOuter () const
 
FORCEINLINE FName GetFName () const
 
virtual COREUOBJECT_API FName GetFNameForStatID () const
 
COREUOBJECT_API UPackageGetExternalPackage () const
 
COREUOBJECT_API void SetExternalPackage (UPackage *InPackage)
 
COREUOBJECT_API UPackageGetExternalPackageInternal () const
 
COREUOBJECT_API void MarkAsReachable () const
 
COREUOBJECT_API void AddRef () const
 
COREUOBJECT_API void ReleaseRef () const
 
FORCEINLINE EObjectFlags GetFlags () const
 
FORCENOINLINE void AtomicallySetFlags (EObjectFlags FlagsToAdd)
 
FORCENOINLINE void AtomicallyClearFlags (EObjectFlags FlagsToClear)
 

Static Public Member Functions

static bool IsFullEnumName (const TCHAR *InEnumName)
 
static COREUOBJECT_API int64 LookupEnumName (FName PackageName, FName TestName, EFindFirstObjectOptions Options=EFindFirstObjectOptions::None, UEnum **OutFoundEnum=nullptr)
 
static int64 LookupEnumName (FName TestName, UEnum **FoundEnum=nullptr)
 
static COREUOBJECT_API int64 LookupEnumNameSlow (FName PackageName, const TCHAR *InTestShortName, EFindFirstObjectOptions Options=EFindFirstObjectOptions::None, UEnum **OutFoundEnum=nullptr)
 
static int64 LookupEnumNameSlow (const TCHAR *InTestShortName, UEnum **FoundEnum=nullptr)
 
static COREUOBJECT_API int64 ParseEnum (const TCHAR *&Str)
 
static COREUOBJECT_API FString GenerateEnumPrefix (const TArray< TPair< FName, int64 > > &InNames, FName InEnumName)
 Find the longest common prefix of all enum names in the provided list.
 
template<typename T >
static FString GetValueAsString (const TCHAR *EnumPath, const T EnumeratorValue)
 
template<typename T >
static UE_FORCEINLINE_HINT FString GetValueAsString (const TCHAR *EnumPath, const TEnumAsByte< T > EnumeratorValue)
 
template<class T >
static UE_FORCEINLINE_HINT void GetValueAsString (const TCHAR *EnumPath, const T EnumeratorValue, FString &out_StringValue)
 
template<typename T >
static FString GetValueOrBitfieldAsString (const TCHAR *EnumPath, const T EnumeratorValue)
 
template<typename T >
static UE_FORCEINLINE_HINT FString GetValueOrBitfieldAsString (const TCHAR *EnumPath, const TEnumAsByte< T > EnumeratorValue)
 
template<class T >
static UE_FORCEINLINE_HINT void GetValueOrBitfieldAsString (const TCHAR *EnumPath, const T EnumeratorValue, FString &out_StringValue)
 
template<typename T >
static FText GetDisplayValueAsText (const TCHAR *EnumPath, const T EnumeratorValue)
 
template<typename T >
static UE_FORCEINLINE_HINT FText GetDisplayValueAsText (const TCHAR *EnumPath, const TEnumAsByte< T > EnumeratorValue)
 
template<class T >
static UE_FORCEINLINE_HINT void GetDisplayValueAsText (const TCHAR *EnumPath, const T EnumeratorValue, FText &out_TextValue)
 
template<typename EnumType >
static FName GetValueAsName (const EnumType EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT FName GetValueAsName (const TEnumAsByte< EnumType > EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT void GetValueAsName (const EnumType EnumeratorValue, FName &out_NameValue)
 
template<typename EnumType >
static FString GetValueAsString (const EnumType EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT FString GetValueAsString (const TEnumAsByte< EnumType > EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT void GetValueAsString (const EnumType EnumeratorValue, FString &out_StringValue)
 
template<typename EnumType >
static FString GetValueOrBitfieldAsString (const EnumType EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT FString GetValueOrBitfieldAsString (const TEnumAsByte< EnumType > EnumeratorValue)
 
template<typename EnumType , typename IntegralType >
static FString GetValueOrBitfieldAsString (const IntegralType EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT void GetValueOrBitfieldAsString (const EnumType EnumeratorValue, FString &out_StringValue)
 
template<typename EnumType , typename IntegralType >
static UE_FORCEINLINE_HINT void GetValueOrBitfieldAsString (const IntegralType EnumeratorValue, FString &out_StringValue)
 
template<typename EnumType >
static FText GetDisplayValueAsText (const EnumType EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT FText GetDisplayValueAsText (const TEnumAsByte< EnumType > EnumeratorValue)
 
template<typename EnumType >
static UE_FORCEINLINE_HINT void GetDisplayValueAsText (const EnumType EnumeratorValue, FText &out_TextValue)
 
static consteval int64 CalculateMaxEnumValue (std::initializer_list< int64 > Values, EEnumFlags InFlags)
 
- Static Public Member Functions inherited from UObject
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedServer (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API void UpdateClassesExcludedFromDedicatedClient (const TArray< FString > &InClassNames, const TArray< FString > &InModulesNames)
 
static COREUOBJECT_API bool CanCreateInCurrentContext (UObject *Template)
 
static COREUOBJECT_API void AddReferencedObjects (UObject *InThis, FReferenceCollector &Collector)
 
static COREUOBJECT_API const FNameSourceFileTagName ()
 
static COREUOBJECT_API UObjectGetArchetypeFromRequiredInfo (const UClass *Class, const UObject *Outer, FName Name, EObjectFlags ObjectFlags)
 
- Static Public Member Functions inherited from UObjectBaseUtility
static bool IsGarbageEliminationEnabled ()
 
static bool IsPendingKillEnabled ()
 
static void SetGarbageEliminationEnabled (bool bEnabled)
 
static COREUOBJECT_API void ReloadObjectsFromModifiedConfigSections (const class FConfigModificationTracker *ChangeTracker)
 
- Static Public Member Functions inherited from UObjectBase
static COREUOBJECT_API FString RemoveClassPrefix (const TCHAR *ClassName)
 
static void PrefetchClass (UObject *Object)
 
static void PrefetchOuter (UObject *Object)
 

Public Attributes

union { 
 
   FString   CppType = {} 
 
};  
 
- Public Attributes inherited from UField
TObjectPtr< UFieldNext
 

Protected Member Functions

void AddNamesToMasterList ()
 
COREUOBJECT_API void AddNamesToPrimaryList ()
 
- Protected Member Functions inherited from UObject
virtual FString GetDetailedInfoInternal () const
 
COREUOBJECT_API bool CanCheckDefaultSubObjects (bool bForceCheck, bool &bResult) const
 
virtual COREUOBJECT_API bool CheckDefaultSubobjectsInternal () const
 
- Protected Member Functions inherited from UObjectBase
 UObjectBase ()
 
COREUOBJECT_API UObjectBase (EObjectFlags InFlags)
 
COREUOBJECT_API void LowLevelRename (FName NewName, UObject *NewOuter=NULL)
 
virtual void RegisterDependencies ()
 
COREUOBJECT_API void Register (class UClass *(*StaticClassFn)(), const TCHAR *PackageName, const TCHAR *Name)
 
COREUOBJECT_API void Register (const TCHAR *PackageName, const TCHAR *Name)
 
virtual COREUOBJECT_API void DeferredRegister (UClass *UClassStaticClass, const TCHAR *PackageName, const TCHAR *Name)
 
FORCEINLINE void SetFlagsTo (EObjectFlags NewFlags)
 

Static Protected Member Functions

static COREUOBJECT_API int64 GetMaxEnumValue (const TArray< TPair< FName, int64 > > &InNames, EEnumFlags InFlags)
 

Protected Attributes

class UEnum::FNameData Names
 
ECppForm CppForm
 
EEnumFlags EnumFlags
 
FName EnumPackage
 
FEnumDisplayNameFn EnumDisplayNameFn
 

Static Protected Attributes

static FRWLock AllEnumNamesLock
 
static TMap< FName, TMap< FName, UEnum * > > AllEnumNames
 

Member Enumeration Documentation

◆ ECppForm

enum class UEnum::ECppForm : uint8
strong

How this enum is declared in C++, affects the internal naming of enum values

Enumerator
Regular 
Namespaced 
EnumClass 

Constructor & Destructor Documentation

◆ UEnum()

UEnum::UEnum ( const FObjectInitializer ObjectInitialzer)

◆ ~UEnum()

UEnum::~UEnum ( )

Member Function Documentation

◆ AddNamesToMasterList()

void UEnum::AddNamesToMasterList ( )
inlineprotected

adds the Names in this enum to the primary AllEnumNames list

◆ AddNamesToPrimaryList()

void UEnum::AddNamesToPrimaryList ( )
protected

adds the Names in this enum to the primary AllEnumNames list

◆ BeginDestroy()

void UEnum::BeginDestroy ( )
overridevirtual

Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

Reimplemented from UObject.

◆ CalculateMaxEnumValue()

static consteval int64 UEnum::CalculateMaxEnumValue ( std::initializer_list< int64 Values,
EEnumFlags  InFlags 
)
inlinestatic

◆ ContainsExistingMax()

bool UEnum::ContainsExistingMax ( ) const

Tests if the enum contains a MAX value

Returns
true if the enum contains a MAX enum, false otherwise.

◆ FindAuthoredNameStringByValue()

bool UEnum::FindAuthoredNameStringByValue ( FString &  Out,
int64  InValue 
) const

Looks for a display name with a given value and returns true and writes the unlocalized logical name to Out if one was found

◆ FindDisplayNameTextByValue()

bool UEnum::FindDisplayNameTextByValue ( FText Out,
int64  InValue 
) const

Looks for a display name with a given value and returns true and writes the name to Out if one was found

◆ FindNameStringByValue()

bool UEnum::FindNameStringByValue ( FString &  Out,
int64  InValue 
) const

Looks for a name with a given value and returns true and writes the name to Out if one was found

◆ GenerateEnumPrefix() [1/2]

FString UEnum::GenerateEnumPrefix ( ) const

Find the longest common prefix of all items in the enumeration.

Returns
the longest common prefix between all items in the enum. If a common prefix cannot be found, returns the full name of the enum.

◆ GenerateEnumPrefix() [2/2]

static COREUOBJECT_API FString UEnum::GenerateEnumPrefix ( const TArray< TPair< FName, int64 > > &  InNames,
FName  InEnumName 
)
static

Find the longest common prefix of all enum names in the provided list.

Returns
the longest common prefix between all items in the enum. If a common prefix cannot be found, returns the full name of the enum.

◆ GenerateFullEnumName()

FString UEnum::GenerateFullEnumName ( const TCHAR InEnumName) const
virtual

Generates full name including EnumName:: given enum name.

Parameters
InEnumNameEnum name.
Returns
Full enum name.

Reimplemented in UUserDefinedEnum.

◆ GetAuthoredNameStringByIndex()

FString UEnum::GetAuthoredNameStringByIndex ( int32  InIndex) const
virtual

Returns the unlocalized logical name originally assigned to the enum at creation. By default this is the same as the short name but it is overridden in child classes with different internal name storage. This name is consistent in cooked and editor builds and is useful for things like external data import/export.

Parameters
InIndexIndex of the enum value to get Display Name for
Returns
The author-specified name, or an empty string if Index is invalid

Reimplemented in UUserDefinedEnum.

◆ GetAuthoredNameStringByValue()

FString UEnum::GetAuthoredNameStringByValue ( int64  InValue) const

Version of GetAuthoredNameByIndex that takes a value instead

◆ GetCppForm()

ECppForm UEnum::GetCppForm ( ) const
inline

Returns the type of enum: whether it's a regular enum, namespaced enum or C++11 enum class.

Returns
The enum type.

◆ GetDisplayNameTextByIndex()

FText UEnum::GetDisplayNameTextByIndex ( int32  InIndex) const
virtual

Finds the localized display name or native display name as a fallback. If called from a cooked build this will normally return the short name as Metadata is not available.

Parameters
InIndexIndex of the enum value to get Display Name for
Returns
The display name for this object, or an empty text if Index is invalid

Reimplemented in UUserDefinedEnum.

◆ GetDisplayNameTextByValue()

FText UEnum::GetDisplayNameTextByValue ( int64  InValue) const

Version of GetDisplayNameTextByIndex that takes a value instead

◆ GetDisplayValueAsText() [1/6]

template<typename EnumType >
static FText UEnum::GetDisplayValueAsText ( const EnumType  EnumeratorValue)
inlinestatic
Parameters
EnumeratorValueEnumerator Value.
Returns
the localized display string associated with the specified enum value for the enum specified by the template type.

◆ GetDisplayValueAsText() [2/6]

template<typename EnumType >
static UE_FORCEINLINE_HINT void UEnum::GetDisplayValueAsText ( const EnumType  EnumeratorValue,
FText out_TextValue 
)
inlinestatic

◆ GetDisplayValueAsText() [3/6]

template<typename T >
static FText UEnum::GetDisplayValueAsText ( const TCHAR EnumPath,
const T  EnumeratorValue 
)
inlinestatic
Parameters
EnumPathFull enum path.
EnumeratorValueEnumerator Value.
Returns
the localized display string associated with the specified enum value for the enum specified by a path

◆ GetDisplayValueAsText() [4/6]

template<class T >
static UE_FORCEINLINE_HINT void UEnum::GetDisplayValueAsText ( const TCHAR EnumPath,
const T  EnumeratorValue,
FText out_TextValue 
)
inlinestatic

◆ GetDisplayValueAsText() [5/6]

template<typename T >
static UE_FORCEINLINE_HINT FText UEnum::GetDisplayValueAsText ( const TCHAR EnumPath,
const TEnumAsByte< T >  EnumeratorValue 
)
inlinestatic

◆ GetDisplayValueAsText() [6/6]

template<typename EnumType >
static UE_FORCEINLINE_HINT FText UEnum::GetDisplayValueAsText ( const TEnumAsByte< EnumType >  EnumeratorValue)
inlinestatic

◆ GetIndexByName()

int32 UEnum::GetIndexByName ( FName  InName,
EGetByNameFlags  Flags = EGetByNameFlags::None 
) const

Gets index of name in enum, returns INDEX_NONE and optionally errors when name is not found. This is faster than ByNameString if the FName is exact, but will fall back if needed

◆ GetIndexByNameString()

int32 UEnum::GetIndexByNameString ( const FString &  SearchString,
EGetByNameFlags  Flags = EGetByNameFlags::None 
) const

Gets index of name in enum, returns INDEX_NONE and optionally errors when name is not found. Handles full or short names.

◆ GetIndexByValue()

int32 UEnum::GetIndexByValue ( int64  InValue) const
inline

Gets the internal index for an enum value. Returns INDEX_None if not valid

◆ GetMaxEnumValue() [1/2]

int64 UEnum::GetMaxEnumValue ( ) const

Gets max value of Enum. Defaults to zero if there are no entries.

◆ GetMaxEnumValue() [2/2]

int64 UEnum::GetMaxEnumValue ( const TArray< TPair< FName, int64 > > &  InNames,
EEnumFlags  InFlags 
)
staticprotected

Gets max value of Enum. Defaults to zero if there are no entries. Static version to calculate during construction.

◆ GetNameByIndex()

FName UEnum::GetNameByIndex ( int32  Index) const

Gets enum name by index in Names array. Returns NAME_None if Index is not valid.

◆ GetNameByValue()

FName UEnum::GetNameByValue ( int64  InValue) const

Gets enum name by value. Returns NAME_None if value is not found.

◆ GetNameStringByIndex()

FString UEnum::GetNameStringByIndex ( int32  InIndex) const

Returns the short name at the enum index, returns empty string if invalid

◆ GetNameStringByValue()

FString UEnum::GetNameStringByValue ( int64  InValue) const

Returns the short name matching the enum Value, returns empty string if invalid

◆ GetValueAsName() [1/3]

template<typename EnumType >
static FName UEnum::GetValueAsName ( const EnumType  EnumeratorValue)
inlinestatic
Parameters
EnumeratorValueEnumerator Value.
Returns
the name associated with the enumerator for the specified enum value for the enum specified by the template type.

◆ GetValueAsName() [2/3]

template<typename EnumType >
static UE_FORCEINLINE_HINT void UEnum::GetValueAsName ( const EnumType  EnumeratorValue,
FName out_NameValue 
)
inlinestatic

◆ GetValueAsName() [3/3]

template<typename EnumType >
static UE_FORCEINLINE_HINT FName UEnum::GetValueAsName ( const TEnumAsByte< EnumType >  EnumeratorValue)
inlinestatic

◆ GetValueAsString() [1/6]

template<typename EnumType >
static FString UEnum::GetValueAsString ( const EnumType  EnumeratorValue)
inlinestatic
Parameters
EnumeratorValueEnumerator Value.
Returns
the string associated with the enumerator for the specified enum value for the enum specified by the template type.

◆ GetValueAsString() [2/6]

template<typename EnumType >
static UE_FORCEINLINE_HINT void UEnum::GetValueAsString ( const EnumType  EnumeratorValue,
FString &  out_StringValue 
)
inlinestatic

◆ GetValueAsString() [3/6]

template<typename T >
static FString UEnum::GetValueAsString ( const TCHAR EnumPath,
const T  EnumeratorValue 
)
inlinestatic
Parameters
EnumPathFull enum path.
EnumeratorValueEnumerator VAlue.
Returns
the string associated with the enumerator for the specified enum value for the enum specified by a path.

◆ GetValueAsString() [4/6]

template<class T >
static UE_FORCEINLINE_HINT void UEnum::GetValueAsString ( const TCHAR EnumPath,
const T  EnumeratorValue,
FString &  out_StringValue 
)
inlinestatic

◆ GetValueAsString() [5/6]

template<typename T >
static UE_FORCEINLINE_HINT FString UEnum::GetValueAsString ( const TCHAR EnumPath,
const TEnumAsByte< T >  EnumeratorValue 
)
inlinestatic

◆ GetValueAsString() [6/6]

template<typename EnumType >
static UE_FORCEINLINE_HINT FString UEnum::GetValueAsString ( const TEnumAsByte< EnumType >  EnumeratorValue)
inlinestatic

◆ GetValueByIndex()

int64 UEnum::GetValueByIndex ( int32  Index) const
inline

Gets enum value by index in Names array. Asserts on invalid index

◆ GetValueByName()

int64 UEnum::GetValueByName ( FName  InName,
EGetByNameFlags  Flags = EGetByNameFlags::None 
) const

Gets enum value by name, returns INDEX_NONE and optionally errors when name is not found. This is faster than ByNameString if the FName is exact, but will fall back if needed

◆ GetValueByNameString()

int64 UEnum::GetValueByNameString ( const FString &  SearchString,
EGetByNameFlags  Flags = EGetByNameFlags::None 
) const

Gets enum value by name, returns INDEX_NONE and optionally errors when name is not found. Handles full or short names

◆ GetValueOrBitfieldAsAuthoredNameString()

FString UEnum::GetValueOrBitfieldAsAuthoredNameString ( int64  InValue) const

If the enumeration is declared as UENUM(Flags), returns a string of the form A | B | C representing set bits A, B, and C. If it is not a bitfield, the result is the same as calling GetAuthoredNameStringByValue

◆ GetValueOrBitfieldAsDisplayNameText()

FText UEnum::GetValueOrBitfieldAsDisplayNameText ( int64  InValue) const

If the enumeration is declared as UENUM(Flags), returns a string of the form A | B | C representing set bits A, B, and C. If it is not a bitfield, the result is the same as calling GetDisplayNameTextByValue

◆ GetValueOrBitfieldAsString() [1/9]

template<typename EnumType >
static FString UEnum::GetValueOrBitfieldAsString ( const EnumType  EnumeratorValue)
inlinestatic
Parameters
EnumeratorValueEnumerator Value.
Returns
a string representing the combination of set bits in the bitfield or, if not a bitfield/flags enumeration, the string associated with the enumerator for the specified enum value for the enum specified by the template type.

◆ GetValueOrBitfieldAsString() [2/9]

template<typename EnumType >
static UE_FORCEINLINE_HINT void UEnum::GetValueOrBitfieldAsString ( const EnumType  EnumeratorValue,
FString &  out_StringValue 
)
inlinestatic

◆ GetValueOrBitfieldAsString() [3/9]

template<typename EnumType , typename IntegralType >
static FString UEnum::GetValueOrBitfieldAsString ( const IntegralType  EnumeratorValue)
inlinestatic

◆ GetValueOrBitfieldAsString() [4/9]

template<typename EnumType , typename IntegralType >
static UE_FORCEINLINE_HINT void UEnum::GetValueOrBitfieldAsString ( const IntegralType  EnumeratorValue,
FString &  out_StringValue 
)
inlinestatic

◆ GetValueOrBitfieldAsString() [5/9]

template<typename T >
static FString UEnum::GetValueOrBitfieldAsString ( const TCHAR EnumPath,
const T  EnumeratorValue 
)
inlinestatic

◆ GetValueOrBitfieldAsString() [6/9]

template<class T >
static UE_FORCEINLINE_HINT void UEnum::GetValueOrBitfieldAsString ( const TCHAR EnumPath,
const T  EnumeratorValue,
FString &  out_StringValue 
)
inlinestatic

◆ GetValueOrBitfieldAsString() [7/9]

template<typename T >
static UE_FORCEINLINE_HINT FString UEnum::GetValueOrBitfieldAsString ( const TCHAR EnumPath,
const TEnumAsByte< T >  EnumeratorValue 
)
inlinestatic

◆ GetValueOrBitfieldAsString() [8/9]

template<typename EnumType >
static UE_FORCEINLINE_HINT FString UEnum::GetValueOrBitfieldAsString ( const TEnumAsByte< EnumType >  EnumeratorValue)
inlinestatic

◆ GetValueOrBitfieldAsString() [9/9]

FString UEnum::GetValueOrBitfieldAsString ( int64  InValue) const

If the enumeration is declared as UENUM(Flags), returns a string of the form A | B | C representing set bits A, B, and C. If it is not a bitfield, the result is the same as calling GetNameStringByValue

◆ GetValueOrBitfieldFromString()

int64 UEnum::GetValueOrBitfieldFromString ( FStringView  InString,
EGetByNameFlags  LookupFlags = EGetByNameFlags::None 
) const

Gets enum value by name, returns INDEX_NONE and optionally errors when name is not found. This is faster than ByNameString if the FName is exact, but will fall back if needed

◆ HasAnyEnumFlags()

bool UEnum::HasAnyEnumFlags ( EEnumFlags  InFlags) const
inline

◆ IsFullEnumName()

static bool UEnum::IsFullEnumName ( const TCHAR InEnumName)
inlinestatic

Checks if a enum name is fully qualified name.

Parameters
InEnumNameName to check.
Returns
true if the specified name is full enum name, false otherwise.

◆ IsValidEnumName()

bool UEnum::IsValidEnumName ( FName  InName) const

Checks if enum has entry with given name. Includes autogenerated _MAX entry.

◆ IsValidEnumValue()

bool UEnum::IsValidEnumValue ( int64  InValue) const

Checks if enum has entry with given value. Includes autogenerated _MAX entry.

◆ IsValidEnumValueOrBitfield()

bool UEnum::IsValidEnumValueOrBitfield ( int64  InValue) const

Checks if enum has entry with given value, or combination of flag values. If the enum is not a bitfield, this is equivalent to IsValidEnumValue.

◆ LookupEnumName() [1/2]

int64 UEnum::LookupEnumName ( FName  PackageName,
FName  TestName,
EFindFirstObjectOptions  Options = EFindFirstObjectOptions::None,
UEnum **  OutFoundEnum = nullptr 
)
static

Searches the list of all enum value names for the specified name

Parameters
PackageNamePackage where the enum was defined (/Script/ModuleName or uasset package name in case of script defined enums). If an empty (None) name is specified the function will look through all enums to find a match
TestNameFully qualified enum value name (EEnumName::ValueName) @Param Options Optional options that may limit search results or define ambiguous search result behavior
OutFoundEnumOptional address of a variable where the resulting UEnum object should be stored
Returns
The value the specified name represents if found, otherwise INDEX_NONE

◆ LookupEnumName() [2/2]

static int64 UEnum::LookupEnumName ( FName  TestName,
UEnum **  FoundEnum = nullptr 
)
inlinestatic

searches the list of all enum value names for the specified name

Returns
the value the specified name represents if found, otherwise INDEX_NONE

◆ LookupEnumNameSlow() [1/2]

static int64 UEnum::LookupEnumNameSlow ( const TCHAR InTestShortName,
UEnum **  FoundEnum = nullptr 
)
inlinestatic

searches the list of all enum value names for the specified name

Returns
the value the specified name represents if found, otherwise INDEX_NONE

◆ LookupEnumNameSlow() [2/2]

int64 UEnum::LookupEnumNameSlow ( FName  PackageName,
const TCHAR InTestShortName,
EFindFirstObjectOptions  Options = EFindFirstObjectOptions::None,
UEnum **  OutFoundEnum = nullptr 
)
static

Searches the list of all enum value names for the specified name

Parameters
PackageNamePackage where the enum was defined (/Script/ModuleName or uasset package name in case of script defined enums). If an empty (None) name is specified the function will look through all native enums to find a match
InTestShortNameFully qualified or short enum value name (EEnumName::ValueName or ValueName) @Param Options Optional Options that may limit search results or define ambiguous search result behavior
OutFoundEnumOptional address of a variable where the resulting UEnum object should be stored
Returns
The value the specified name represents if found, otherwise INDEX_NONE

◆ NumEnums()

int32 UEnum::NumEnums ( ) const
inline
Returns
The number of enum names.

◆ ParseEnum()

int64 UEnum::ParseEnum ( const TCHAR *&  Str)
static

parses the passed in string for a name, then searches for that name in any Enum (in any package)

Parameters
Strpointer to string to parse; if we successfully find an enum, this pointer is advanced past the name found
Returns
index of the value the parsed enum name matches, or INDEX_NONE if no matches

◆ RemoveNamesFromMasterList()

void UEnum::RemoveNamesFromMasterList ( )
inline

Removes the Names in this enum from the primary AllEnumNames list

◆ RemoveNamesFromPrimaryList()

void UEnum::RemoveNamesFromPrimaryList ( )

Removes the Names in this enum from the primary AllEnumNames list

◆ ResolveEnumerator()

int64 UEnum::ResolveEnumerator ( FArchive Ar,
int64  EnumeratorIndex 
) const
virtual

Try to update an out-of-date enum index after an enum changes at runtime

Reimplemented in UUserDefinedEnum.

◆ Serialize()

void UEnum::Serialize ( FArchive Ar)
overridevirtual

Handles reading, writing, and reference collecting using FArchive. This implementation handles all FProperty serialization, but can be overridden for native variables.

Reimplemented from UField.

Reimplemented in UVerseEnum, and UUserDefinedEnum.

◆ SetEnumDisplayNameFn()

void UEnum::SetEnumDisplayNameFn ( FEnumDisplayNameFn  InEnumDisplayNameFn)
inline

Associate a function for looking up Enum display names by index, only intended for use by generated code

◆ SetEnumFlags()

void UEnum::SetEnumFlags ( EEnumFlags  FlagsToSet)
inline

◆ SetEnums()

bool UEnum::SetEnums ( TArray< TPair< FName, int64 > > &  InNames,
UEnum::ECppForm  InCppForm,
EEnumFlags  InFlags = EEnumFlags::None,
bool  bAddMaxKeyIfMissing = true 
)
virtual

Sets the array of enums.

Parameters
InNamesList of enum names.
InCppFormThe form of enum.
bAddMaxKeyIfMissingShould a default Max item be added.
Returns
true unless the MAX enum already exists and isn't the last enum.

Reimplemented in UUserDefinedEnum.

Member Data Documentation

◆ [union]

union { ... } UEnum

◆ AllEnumNames

TMap< FName, TMap< FName, UEnum * > > UEnum::AllEnumNames
staticprotected

global list of all value names used by all enums in memory, used for property text import

◆ AllEnumNamesLock

FRWLock UEnum::AllEnumNamesLock
staticprotected

lock to be taken when accessing AllEnumNames

◆ CppForm

ECppForm UEnum::CppForm
protected

How the enum was originally defined.

◆ CppType

FString UEnum::CppType = {}

This will be the true type of the enum as a string, e.g. "ENamespacedEnum::InnerType" or "ERegularEnum" or "EEnumClass"

◆ EnumDisplayNameFn

FEnumDisplayNameFn UEnum::EnumDisplayNameFn
protected

pointer to function used to look up the enum's display name. Currently only assigned for UEnums generated for nativized blueprints

◆ EnumFlags

EEnumFlags UEnum::EnumFlags
protected

Enum flags.

◆ EnumPackage

FName UEnum::EnumPackage
protected

Package name this enum was in when its names were being added to the primary list

◆ Names

class UEnum::FNameData UEnum::Names
protected

The documentation for this class was generated from the following files: