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

#include <InterchangeManager.h>

+ Inheritance diagram for UInterchangeManager:

Public Member Functions

 UInterchangeManager (const FObjectInitializer &ObjectInitializer)
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FInterchangeOnAssetPostImport, UObject *)
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FInterchangeOnAssetPostReimport, UObject *)
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FInterchangeOnBatchImportComplete, TStrongObjectPtr< UInterchangeResultsContainer >)
 
INTERCHANGEENGINE_API void SanitizeNameInline (FString &NameToSanitize, const ESanitizeNameTypeFlags NameType)
 
INTERCHANGEENGINE_API bool RegisterTranslator (const UClass *TranslatorClass)
 
INTERCHANGEENGINE_API bool RegisterFactory (const UClass *Factory)
 
INTERCHANGEENGINE_API bool RegisterWriter (const UClass *Writer)
 
INTERCHANGEENGINE_API bool RegisterImportDataConverter (const UClass *Converter)
 
INTERCHANGEENGINE_API bool ConvertImportData (UObject *Asset, const FString &Extension) const
 
INTERCHANGEENGINE_API bool ConvertImportData (const UObject *SourceImportData, FImportAssetParameters &ImportAssetParameters) const
 
INTERCHANGEENGINE_API bool ConvertImportData (const UObject *SourceImportData, const UClass *DestinationClass, UObject **DestinationImportData) const
 
INTERCHANGEENGINE_API TArray< FString > GetSupportedFormats (const EInterchangeTranslatorType ForTranslatorType) const
 
INTERCHANGEENGINE_API TArray< FString > GetSupportedAssetTypeFormats (const EInterchangeTranslatorAssetType ForTranslatorAssetType, const EInterchangeTranslatorType ForTranslatorType=EInterchangeTranslatorType::Invalid, bool bStrictMatchTranslatorType=false) const
 
INTERCHANGEENGINE_API TArray< FString > GetSupportedFormatsForObject (const UObject *Object, int32 SourceFileIndex) const
 
INTERCHANGEENGINE_API bool CanTranslateSourceData (const UInterchangeSourceData *SourceData, bool bSceneImportOnly=false) const
 
INTERCHANGEENGINE_API bool CanReimport (const UObject *Object, TArray< FString > &OutFilenames) const
 
INTERCHANGEENGINE_API bool ImportAsset (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters, TArray< UObject * > &OutImportedObjects)
 
INTERCHANGEENGINE_API bool ImportAsset (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API UE::Interchange::FAssetImportResultRef ImportAssetWithResult (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API UE::Interchange::FAssetImportResultRef ImportAssetAsync (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ScriptedImportAssetAsync (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ReimportAsset (UObject *ObjectToReimport, const FImportAssetParameters &ImportAssetParameters, TArray< UObject * > &OutImportedObjects)
 
INTERCHANGEENGINE_API UE::Interchange::FAssetImportResultRef ReimportAssetAsync (UObject *ObjectToReimport, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ScriptedReimportAssetAsync (UObject *ObjectToReimport, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ImportScene (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ScriptedImportSceneAsync (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API TTuple< UE::Interchange::FAssetImportResultRef, UE::Interchange::FSceneImportResultRefImportSceneAsync (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API bool ExportAsset (const UObject *Asset, bool bIsAutomated=false)
 
INTERCHANGEENGINE_API bool ExportScene (const UObject *World, bool bIsAutomated=false)
 
INTERCHANGEENGINE_API const UClassGetRegisteredFactoryClass (const UClass *ClassToMake) const
 
INTERCHANGEENGINE_API TSharedRef< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafeCreateAsyncHelper (const UE::Interchange::FImportAsyncHelperData &Data, const FImportAssetParameters &ImportAssetParameters)
 
INTERCHANGEENGINE_API void ReleaseAsyncHelper (TWeakPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > AsyncHelper)
 
INTERCHANGEENGINE_API TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafeGetAsyncHelper (int32 UniqueId)
 
INTERCHANGEENGINE_API UInterchangeTranslatorBaseGetTranslatorForSourceData (const UInterchangeSourceData *SourceData) const
 
INTERCHANGEENGINE_API bool IsInterchangeActive ()
 
INTERCHANGEENGINE_API bool WarnIfInterchangeIsActive ()
 
INTERCHANGEENGINE_API UInterchangeAssetImportDataGetAssetImportData (UObject *Asset) const
 
INTERCHANGEENGINE_API bool CanTranslateSourceDataWithPayloadInterface (const UInterchangeSourceData *SourceData, const UClass *PayloadInterfaceClass) const
 
INTERCHANGEENGINE_API UInterchangeTranslatorBaseGetTranslatorSupportingPayloadInterfaceForSourceData (const UInterchangeSourceData *SourceData, const UClass *PayloadInterfaceClass) const
 
INTERCHANGEENGINE_API bool IsObjectBeingImported (UObject *Object) const
 
INTERCHANGEENGINE_API bool EnqueuePostImportTask (TSharedPtr< FInterchangePostImportTask > PostImportTask)
 
INTERCHANGEENGINE_API void SetEditorUtilities (UClass *EditorUtilitiesClass)
 
INTERCHANGEENGINE_API UInterchangeEditorUtilitiesBaseGetEditorUtilities () const
 
INTERCHANGEENGINE_API bool CanUseTranslator (UInterchangeTranslatorBase *Translator) 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 PostLoad ()
 
virtual COREUOBJECT_API void PostLoadSubobjects (FObjectInstancingGraph *OuterInstanceGraph)
 
virtual COREUOBJECT_API void BeginDestroy ()
 
virtual bool IsReadyForFinishDestroy ()
 
virtual COREUOBJECT_API void FinishDestroy ()
 
virtual COREUOBJECT_API void Serialize (FArchive &Ar)
 
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 NeedsLoadForClient () const
 
virtual COREUOBJECT_API bool NeedsLoadForServer () const
 
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 UInterchangeManagerGetInterchangeManagerScripted ()
 
static INTERCHANGEENGINE_API UInterchangeManagerGetInterchangeManager ()
 
static INTERCHANGEENGINE_API bool IsInterchangeImportEnabled ()
 
static INTERCHANGEENGINE_API void SetInterchangeImportEnabled (bool bEnabled)
 
static INTERCHANGEENGINE_API bool IsImporting ()
 
static INTERCHANGEENGINE_API UInterchangeSourceDataCreateSourceData (const FString &InFileName)
 
static INTERCHANGEENGINE_API void SetReplaceExistingAlldialogAnswer (bool bReplaceExistingAllDialogAnswer)
 
static INTERCHANGEENGINE_API void ResetReplaceExistingAlldialogAnswerSet ()
 
static INTERCHANGEENGINE_API TOptional< boolGetReplaceExistingAlldialogAnswer ()
 
- 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

FInterchangeOnAssetPostImport OnAssetPostImport
 
FInterchangeOnAssetPostReimport OnAssetPostReimport
 
FInterchangeOnBatchImportComplete OnBatchImportComplete
 
FOnImportStarted OnImportStarted
 
FOnImportFinished OnImportFinished
 
FOnSanitizeName OnSanitizeName
 
FSimpleMulticastDelegate OnPreDestroyInterchangeManager
 

Protected Member Functions

INTERCHANGEENGINE_API void FindPipelineCandidate (TArray< UClass * > &PipelineCandidates)
 
INTERCHANGEENGINE_API void CancelAllTasks ()
 
INTERCHANGEENGINE_API void WaitUntilAllTasksDone (bool bCancel)
 
INTERCHANGEENGINE_API void SetActiveMode (bool IsActive)
 
INTERCHANGEENGINE_API void StartQueuedTasks (bool bCancelAllTasks=false)
 
INTERCHANGEENGINE_API TTuple< UE::Interchange::FAssetImportResultRef, UE::Interchange::FSceneImportResultRefImportInternal (const FString &ContentPath, const UInterchangeSourceData *SourceData, const FImportAssetParameters &ImportAssetParameters, const UE::Interchange::EImportType ImportType)
 
TOptional< FString > ValidateReimportParameter (UObject *ObjectToReimport, const FImportAssetParameters &ImportAssetParameters, bool bRunSynchronous)
 
int32 GetImportTaskCount () const
 
TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafeGetImportTaskForIndex (int32 Index) const
 
TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafeGetImportTaskForAsyncHelperUniqueId (int32 AsyncHelperUniqueId) const
 
int32 AddImportTask (TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > ImportTask)
 
void RemoveImportTask (TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > ImportTask)
 
void RemoveImportTask (int32 AsyncHelperUniqueId)
 
- 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 INTERCHANGEENGINE_API bool IsAttended ()
 

Friends

class UE::Interchange::FScopedTranslator
 
class UInterchangeAssetImportData
 

Additional Inherited Members

- Public Types inherited from UObject
enum class  ENetFields_Private { NETFIELD_REP_START = 0 , NETFIELD_REP_END = -1 }
 
typedef UObject WithinClass
 

Constructor & Destructor Documentation

◆ UInterchangeManager()

UInterchangeManager::UInterchangeManager ( const FObjectInitializer ObjectInitializer)

Member Function Documentation

◆ AddImportTask()

int32 UInterchangeManager::AddImportTask ( TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe ImportTask)
protected

◆ CancelAllTasks()

void UInterchangeManager::CancelAllTasks ( )
protected

This function cancels all tasks and finishes them as fast as possible. We use this if the user cancels the work or if the editor exits.

Note
- This is a asynchronous call. Tasks will be completed (canceled) soon.

◆ CanReimport()

bool UInterchangeManager::CanReimport ( const UObject Object,
TArray< FString > &  OutFilenames 
) const

Returns true if Interchange can create this type of asset and is able to translate its source files. @Param Object - The object we want to reimport. @Param OutFilenames - An array that is filled with the object's source filenames if the operation is successful.

◆ CanTranslateSourceData()

bool UInterchangeManager::CanTranslateSourceData ( const UInterchangeSourceData SourceData,
bool  bSceneImportOnly = false 
) const

Check whether there is a registered translator for this source data. This allows us to bypass the original asset tools system to import supported assets. @Param SourceData - The source data input we want to translate to Uod.

Returns
True if there is a registered translator that can handle handle this source data, or false otherwise, when bSceneImportOnly is false. Otherwise, returns true only if the translator supports level import @Note: Temporary until FBX level import is production ready

◆ CanTranslateSourceDataWithPayloadInterface()

bool UInterchangeManager::CanTranslateSourceDataWithPayloadInterface ( const UInterchangeSourceData SourceData,
const UClass PayloadInterfaceClass 
) const

Check whether there is a translator registered that can translate the source data with the specified PayloadInterface. @Param SourceData - The source data input you want to translate to Uod.

Returns
true if the source data can be translated using the specified PayloadInterface, or false otherwise.

◆ CanUseTranslator()

bool UInterchangeManager::CanUseTranslator ( UInterchangeTranslatorBase Translator) const

Check if a non-parallel translator is unlocked for using.

◆ ConvertImportData() [1/3]

bool UInterchangeManager::ConvertImportData ( const UObject SourceImportData,
const UClass DestinationClass,
UObject **  DestinationImportData 
) const

Call all the registered converter, until one can convert the source data to the destination @Param SourceImportData - The source import data options. @Param DestinationImportData - The destination import data options we have to create and fill. @Param DestinationClass - The class representing the DestinationImportData

Returns
true if one of the converter has convert the data. False otherwise.

◆ ConvertImportData() [2/3]

bool UInterchangeManager::ConvertImportData ( const UObject SourceImportData,
FImportAssetParameters ImportAssetParameters 
) const

Call all the registered converter, until one can convert the source import data to UInterchangeAssetImportData @Param SourceImportData - The source import data options. @Param ImportAssetParameters - The interchange import asset parameters.

Returns
true if one of the converter has convert the data. False otherwise.

◆ ConvertImportData() [3/3]

bool UInterchangeManager::ConvertImportData ( UObject Asset,
const FString &  Extension 
) const

Call all the registered converters to see if any converter can convert the data. @Param Asset - The asset we want to convert the import data. @Param Extension - The file extension we want to import.

Returns
true if one of the converter has converted the data, or false otherwise.

◆ CreateAsyncHelper()

TSharedRef< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > UInterchangeManager::CreateAsyncHelper ( const UE::Interchange::FImportAsyncHelperData Data,
const FImportAssetParameters ImportAssetParameters 
)

Return a pointer to an FImportAsyncHelper. The pointer is deleted when ReleaseAsyncHelper is called.

Parameters
Data- The data to pass to the different import tasks.

◆ CreateSourceData()

UInterchangeSourceData * UInterchangeManager::CreateSourceData ( const FString &  InFileName)
static

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [1/3]

UInterchangeManager::DECLARE_MULTICAST_DELEGATE_OneParam ( FInterchangeOnAssetPostImport  ,
UObject  
)

Delegate type that is fired when new assets have been imported. Note: InCreatedObject can be NULL if the import failed. Params: UFactory* InFactory, UObject* InCreatedObject.

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [2/3]

UInterchangeManager::DECLARE_MULTICAST_DELEGATE_OneParam ( FInterchangeOnAssetPostReimport  ,
UObject  
)

Delegate type that is fired when new assets have been reimported. Note: InCreatedObject can be NULL if the import failed. Params: UObject* InCreatedObject.

◆ DECLARE_MULTICAST_DELEGATE_OneParam() [3/3]

UInterchangeManager::DECLARE_MULTICAST_DELEGATE_OneParam ( FInterchangeOnBatchImportComplete  ,
TStrongObjectPtr< UInterchangeResultsContainer  
)

Delegate type that is fired when the import results in an error.

◆ EnqueuePostImportTask()

bool UInterchangeManager::EnqueuePostImportTask ( TSharedPtr< FInterchangePostImportTask PostImportTask)

Queue task that are not directly a import or re-import of assets. The post import tasks are execute only when the QueuedTasks is empty (no more import task running) Example: if a skeletal mesh re-import cannot apply the existing alternate skinning data, it will enqueue a post import task to re-import those alternate skinning files.

◆ ExportAsset()

bool UInterchangeManager::ExportAsset ( const UObject Asset,
bool  bIsAutomated = false 
)

Call this to start an asset export process. The caller must specify a source data.

@Param Asset - The asset to export. @Param bIsAutomated - If true, the exporter will not show any UI or dialogs.

Returns
true if the export succeeds, or false otherwise.

◆ ExportScene()

bool UInterchangeManager::ExportScene ( const UObject World,
bool  bIsAutomated = false 
)

Call this to start a scene export process. The caller must specify a source data. @Param World - The scene to export. @Param bIsAutomated - If true, the import process will not show any UI or dialogs.

Returns
true if the export succeeds, or false otherwise.

◆ FindPipelineCandidate()

void UInterchangeManager::FindPipelineCandidate ( TArray< UClass * > &  PipelineCandidates)
protected

◆ GetAssetImportData()

UInterchangeAssetImportData * UInterchangeManager::GetAssetImportData ( UObject Asset) const

Returns the list of supported formats for a given translator type.

◆ GetAsyncHelper()

TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > UInterchangeManager::GetAsyncHelper ( int32  UniqueId)

Return a pointer to an FImportAsyncHelper that is the specified UniqueId. Return an empty shared pointer if the unique id is not matching any async helper The return asynchelper should be release before the end of the import process to make sure all resource are release when the import is completed.

◆ GetEditorUtilities()

UInterchangeEditorUtilitiesBase * UInterchangeManager::GetEditorUtilities ( ) const

Get the editor utilities, those are use for editor operation like saving an asset.

◆ GetImportTaskCount()

int32 UInterchangeManager::GetImportTaskCount ( ) const
protected

◆ GetImportTaskForAsyncHelperUniqueId()

TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > UInterchangeManager::GetImportTaskForAsyncHelperUniqueId ( int32  AsyncHelperUniqueId) const
protected

◆ GetImportTaskForIndex()

TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe > UInterchangeManager::GetImportTaskForIndex ( int32  Index) const
protected

◆ GetInterchangeManager()

UInterchangeManager & UInterchangeManager::GetInterchangeManager ( )
static

Return the Interchange Manager singleton.

◆ GetInterchangeManagerScripted()

static UInterchangeManager * UInterchangeManager::GetInterchangeManagerScripted ( )
inlinestatic

Return the pointer to the Interchange Manager singleton.

Note
- We need to return a pointer to have a valid Blueprint-callable function.

◆ GetRegisteredFactoryClass()

const UClass * UInterchangeManager::GetRegisteredFactoryClass ( const UClass ClassToMake) const

Script helper to get a registered factory for a specified class. @Param FactoryClass: The class whose registered factory you want to find.

Returns
: The registered factory class if found, or NULL if no registered factory was found.

◆ GetReplaceExistingAlldialogAnswer()

TOptional< bool > UInterchangeManager::GetReplaceExistingAlldialogAnswer ( )
static

Gets the bReplaceExistingAllDialogAnswer.

◆ GetSupportedAssetTypeFormats()

TArray< FString > UInterchangeManager::GetSupportedAssetTypeFormats ( const EInterchangeTranslatorAssetType  ForTranslatorAssetType,
const EInterchangeTranslatorType  ForTranslatorType = EInterchangeTranslatorType::Invalid,
bool  bStrictMatchTranslatorType = false 
) const

Returns the list of formats supporting the specified translator asset type.

◆ GetSupportedFormats()

TArray< FString > UInterchangeManager::GetSupportedFormats ( const EInterchangeTranslatorType  ForTranslatorType) const

Returns the list of supported formats for a given translator type.

◆ GetSupportedFormatsForObject()

TArray< FString > UInterchangeManager::GetSupportedFormatsForObject ( const UObject Object,
int32  SourceFileIndex 
) const

Returns the list of supported formats for a given Object.

◆ GetTranslatorForSourceData()

UInterchangeTranslatorBase * UInterchangeManager::GetTranslatorForSourceData ( const UInterchangeSourceData SourceData) const

◆ GetTranslatorSupportingPayloadInterfaceForSourceData()

UInterchangeTranslatorBase * UInterchangeManager::GetTranslatorSupportingPayloadInterfaceForSourceData ( const UInterchangeSourceData SourceData,
const UClass PayloadInterfaceClass 
) const

◆ ImportAsset() [1/2]

bool UInterchangeManager::ImportAsset ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start a synchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import succeeds, or false otherwise.

◆ ImportAsset() [2/2]

bool UInterchangeManager::ImportAsset ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters,
TArray< UObject * > &  OutImportedObjects 
)

Call this to start a synchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import succeeds, or false otherwise.

@Note - In blueprint depending on the event you use to start the import its possible to have a deadlock, use the async function if its what you are experimenting

◆ ImportAssetAsync()

UE::Interchange::FAssetImportResultRef UInterchangeManager::ImportAssetAsync ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start an asynchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
return an import result which can be use to know when the asynchronous import is terminate.

◆ ImportAssetWithResult()

UE::Interchange::FAssetImportResultRef UInterchangeManager::ImportAssetWithResult ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start a synchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
return an import result which can be use to know when the asynchronous import is terminate.

◆ ImportInternal()

TTuple< UE::Interchange::FAssetImportResultRef, UE::Interchange::FSceneImportResultRef > UInterchangeManager::ImportInternal ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters,
const UE::Interchange::EImportType  ImportType 
)
protected

Called by the public Import functions.

◆ ImportScene()

bool UInterchangeManager::ImportScene ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start a synchronous scene import process. This process can import many different assets and their transforms (USceneComponent).

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate. This object will be duplicated to allow thread-safe operations.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import succeeds, or false otherwise.

@Note - In blueprint depending on the event you use to start the import its possible to have a deadlock, use the async function if its what you are experimenting

◆ ImportSceneAsync()

TTuple< UE::Interchange::FAssetImportResultRef, UE::Interchange::FSceneImportResultRef > UInterchangeManager::ImportSceneAsync ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start a asynchronous scene import process. This process can import many different assets and their transforms (USceneComponent), store the result in a Blueprint, and add the Blueprint to the level.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate. This object will be duplicated to allow thread-safe operations.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
return a pair of import result which can be use to know when the asynchronous import is terminate.

◆ IsAttended()

bool UInterchangeManager::IsAttended ( )
staticprotected

Return true if Interchange can show UI.

◆ IsImporting()

bool UInterchangeManager::IsImporting ( )
static

Checks if there are any imports in progress.

◆ IsInterchangeActive()

bool UInterchangeManager::IsInterchangeActive ( )

Return true if Interchange is actively importing or exporting, or false otherwise.

◆ IsInterchangeImportEnabled()

bool UInterchangeManager::IsInterchangeImportEnabled ( )
static

Return the CVar that enables or disables Interchange.

◆ IsObjectBeingImported()

bool UInterchangeManager::IsObjectBeingImported ( UObject Object) const

Return true if the object is being imported, or false otherwise. If the user imports multiple file in the same folder, it's possible to have the same asset name in two different files.

◆ RegisterFactory()

bool UInterchangeManager::RegisterFactory ( const UClass Factory)

All factories must be registered with the manager. @Param Factory - The UClass of the factory you want to register.

Returns
true if the factory class can be registered, or false otherwise.

@Note If you register the same class multiple time, this returns true for every call.

◆ RegisterImportDataConverter()

bool UInterchangeManager::RegisterImportDataConverter ( const UClass Converter)

All converters must be registered with the manager. @Param Converter - The UClass of the converter you want to register.

Returns
true if the converter class can be registered, or false otherwise.

@Note If you register the same class multiple time, this returns true for every call.

◆ RegisterTranslator()

bool UInterchangeManager::RegisterTranslator ( const UClass TranslatorClass)

All translators must be registered with the manager. @Param Translator - The UClass of the translator you want to register.

Returns
true if the translator class can be registered, or false otherwise.

@Note If you register the same class multiple times, this returns true for every call. @Note The order in which the translators are registered will be the same as the order used to select a translator to import a file.

◆ RegisterWriter()

bool UInterchangeManager::RegisterWriter ( const UClass Writer)

All writers must be registered with the manager, @Param Writer - The UClass of the writer you want to register,

Returns
true if the writer class can be registered, or false otherwise.

@Note If you register the same class multiple time, this returns true for every call.

◆ ReimportAsset()

bool UInterchangeManager::ReimportAsset ( UObject ObjectToReimport,
const FImportAssetParameters ImportAssetParameters,
TArray< UObject * > &  OutImportedObjects 
)

Call this to start a synchronous asset re-import process. This process can re-import many different assets into the game content.

@Param ObjectToReimport - The object to re-import.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import succeeds, or false otherwise.

@Note - The interchange manager will by default use the last file use to re-import the ObjectToReimport. If the file doesn't exist and the bAutomated flag is:

  • true, the function will return false and log a warning
  • false, a dialog will ask @Note - In blueprint depending on the event you use to start the import its possible to have a deadlock, use the async function if its what you are experimenting

◆ ReimportAssetAsync()

UE::Interchange::FAssetImportResultRef UInterchangeManager::ReimportAssetAsync ( UObject ObjectToReimport,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start an asynchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
return an import result which can be use to know when the asynchronous import is terminate.

◆ ReleaseAsyncHelper()

void UInterchangeManager::ReleaseAsyncHelper ( TWeakPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe AsyncHelper)

Delete the specified AsyncHelper and remove it from the array that was holding it.

◆ RemoveImportTask() [1/2]

void UInterchangeManager::RemoveImportTask ( int32  AsyncHelperUniqueId)
protected

◆ RemoveImportTask() [2/2]

void UInterchangeManager::RemoveImportTask ( TSharedPtr< UE::Interchange::FImportAsyncHelper, ESPMode::ThreadSafe ImportTask)
protected

◆ ResetReplaceExistingAlldialogAnswerSet()

void UInterchangeManager::ResetReplaceExistingAlldialogAnswerSet ( )
static

Checks if the bReplaceExistingAllDialogAnswer.

◆ SanitizeNameInline()

void UInterchangeManager::SanitizeNameInline ( FString &  NameToSanitize,
const ESanitizeNameTypeFlags  NameType 
)

◆ ScriptedImportAssetAsync()

bool UInterchangeManager::ScriptedImportAssetAsync ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this from blueprint or python to start an asynchronous asset import process. This process can import many different assets into the game content.

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import was started, or false otherwise.

◆ ScriptedImportSceneAsync()

bool UInterchangeManager::ScriptedImportSceneAsync ( const FString &  ContentPath,
const UInterchangeSourceData SourceData,
const FImportAssetParameters ImportAssetParameters 
)

Call this to start a asynchronous scene import process. This process can import many different assets and their transforms (USceneComponent).

@Param ContentPath - The path where the imported assets will be created. @Param SourceData - The source data input to translate. This object will be duplicated to allow thread-safe operations.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import was started, or false otherwise.

◆ ScriptedReimportAssetAsync()

bool UInterchangeManager::ScriptedReimportAssetAsync ( UObject ObjectToReimport,
const FImportAssetParameters ImportAssetParameters 
)

Call this from blueprint or python to start an asynchronous asset import process. This process can import many different assets into the game content.

@Param ObjectToReimport - The object to re-import.

Parameters
ImportAssetParameters- All parameters that need to be passed to the import asset function.
Returns
true if the import was started, or false otherwise.

@Note - The interchange manager will by default use the last file use to re-import the ObjectToReimport. If the file doesn't exist and the bAutomated flag is:

  • true, the function will return false and log a warning
  • false, a dialog will ask @Note - If you need an event for when the import is done use the ImportAssetParameters events.

◆ SetActiveMode()

void UInterchangeManager::SetActiveMode ( bool  IsActive)
protected

If we set the mode to active, we will setup the timer and add the thread that will block the GC. If the we set the mode to inactive, we will remove the timer and finish the thread that blocks the GC.

◆ SetEditorUtilities()

void UInterchangeManager::SetEditorUtilities ( UClass EditorUtilitiesClass)

Set the editor utilities, those are use for editor operation like saving an asset.

◆ SetInterchangeImportEnabled()

void UInterchangeManager::SetInterchangeImportEnabled ( bool  bEnabled)
static

Set the CVar that enables or disables Interchange.

◆ SetReplaceExistingAlldialogAnswer()

void UInterchangeManager::SetReplaceExistingAlldialogAnswer ( bool  bReplaceExistingAllDialogAnswer)
static

Sets the bReplaceExistingAllDialogAnswer which is responsible for: if the Import process will override or not all existing assets this Import stack tries to override.

◆ StartQueuedTasks()

void UInterchangeManager::StartQueuedTasks ( bool  bCancelAllTasks = false)
protected

Start tasks until we reach the taskgraph worker number.

Parameters
bCancelAllTasks- If true, we will start all tasks but with the cancel state set, so tasks will complete fast and call the completion task.

◆ ValidateReimportParameter()

TOptional< FString > UInterchangeManager::ValidateReimportParameter ( UObject ObjectToReimport,
const FImportAssetParameters ImportAssetParameters,
bool  bRunSynchronous 
)
protected

◆ WaitUntilAllTasksDone()

void UInterchangeManager::WaitUntilAllTasksDone ( bool  bCancel)
protected

Wait synchronously until all tasks are done.

◆ WarnIfInterchangeIsActive()

bool UInterchangeManager::WarnIfInterchangeIsActive ( )

Return false if Interchange is not actively importing or exporting. If Interchange is active, it will display a notification to let the user know they can cancel the asynchronous import/export to be able to complete the operation they requested. (This is called by the exit editor operation.)

Friends And Related Symbol Documentation

◆ UE::Interchange::FScopedTranslator

◆ UInterchangeAssetImportData

Member Data Documentation

◆ OnAssetPostImport

FInterchangeOnAssetPostImport UInterchangeManager::OnAssetPostImport

◆ OnAssetPostReimport

FInterchangeOnAssetPostReimport UInterchangeManager::OnAssetPostReimport

◆ OnBatchImportComplete

FInterchangeOnBatchImportComplete UInterchangeManager::OnBatchImportComplete

◆ OnImportFinished

FOnImportFinished UInterchangeManager::OnImportFinished

◆ OnImportStarted

FOnImportStarted UInterchangeManager::OnImportStarted

◆ OnPreDestroyInterchangeManager

FSimpleMulticastDelegate UInterchangeManager::OnPreDestroyInterchangeManager

◆ OnSanitizeName

FOnSanitizeName UInterchangeManager::OnSanitizeName

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