description: Replace the internal functions that are called to create/destroy the sub-objects owned by the ITC.Bydoing this, clients of the ITF can provide their own subclass implementations, or do other custom setup/teardown as necessary. See comments above CreateInputRouterFunc below

code: virtual void SetCreateInputRouterFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< [UInputRouter](API\Runtime\InteractiveToolsFramework\UInputRouter) *(const [FContextInitInfo](API\Runtime\InteractiveToolsFramework\UInteractiveToolsContext\FContextInitInfo) &)> Func )


module: InteractiveToolsFramework

code: virtual void SetCreateToolManagerFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< [UInteractiveToolManager](API\Runtime\InteractiveToolsFramework\UInteractiveToolManager) *(const [FContextInitInfo](API\Runtime\InteractiveToolsFramework\UInteractiveToolsContext\FContextInitInfo) &)> Func )


code: virtual void SetCreateToolTargetManagerFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< [UToolTargetManager](API\Runtime\InteractiveToolsFramework\UToolTargetManager) *(const [FContextInitInfo](API\Runtime\InteractiveToolsFramework\UInteractiveToolsContext\FContextInitInfo) &)> Func )


code: virtual void SetShutdownContextStoreFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void([UContextObjectStore](API\Runtime\InteractiveToolsFramework\UContextObjectStore) *)> Func )


code: virtual void SetShutdownGizmoManagerFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void([UInteractiveGizmoManager](API\Runtime\InteractiveToolsFramework\UInteractiveGizmoManager) *)> Func )


code: virtual void SetShutdownInputRouterFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void([UInputRouter](API\Runtime\InteractiveToolsFramework\UInputRouter) *)> Func )


code: virtual void SetShutdownToolManagerFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void([UInteractiveToolManager](API\Runtime\InteractiveToolsFramework\UInteractiveToolManager) *)> Func )


code: virtual void SetShutdownToolTargetManagerFunc ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< void([UToolTargetManager](API\Runtime\InteractiveToolsFramework\UToolTargetManager) *)> Func )


description: Shutdown Context by destroying InputRouter and ToolManager

code: virtual void Shutdown()


code: bool StartTool ( EToolSide WhichSide, const [FString](API\Runtime\Core\Containers\FString) & ToolTypeIdentifier )


code: UInteractiveToolsContext()


className: UInteractiveToolsContext

description: InteractiveToolsContext owns the core parts of an Interactive Tools Framework implementation - the InputRouter, ToolManager, GizmoManager, TargetManager, and ContextStore. In the simplest use case,UInteractiveToolsContextis just a top-level container that will keep the various UObjects alive, and provide an easy way to access them. However in a more complex situation it may be desirable to subclass and extend the ToolsContext. For example,UEdModeInteractiveToolsContextallows a ToolsContext to live within aUEdMode.

code: class UInteractiveToolsContext : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

ContextObjectStore

type: TObjectPtr<UCo...

description: Current Context Object Store for this Context.

CreateContextStoreFunc

type: TUniqueFunction...

CreateInputRouterFunc

description: Initialize()calls these functions to create the main child objects needed to operate the Tools Framework - InputRouter, ToolManager, GizmoManager, TargetManager, ContextStore.

GizmoManager

type: TObjectPtr<UIn...

description: CurrentUInteractiveGizmoManagerfor this Context

InputRouter

description: CurrentUInputRouterfor this Context

OnToolNotificationMessage

type: FToolsContextTo...

ShutdownInputRouterFunc

description: Analogous to the CreateX() functions above, these function are called byShutdown()to terminate and clean up after the various elements.

TargetManager

type: TObjectPtr<UTo...

description: CurrentUToolTargetManagerfor this Context

ToolManager

description: CurrentUInteractiveToolManagerfor this Context

ToolManagerClass

type: TSoftClassPtr< ...

description: Todo: deprecate and remove this, can now be accomplished viaCreateToolManagerFunc()


description: Gives the target requirements of the associated tool. Usually, it is the tool builder will use this function in CanBuildTool and BuildTool to find and create any necessary targets.

code: virtual const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & GetTargetRequirements() const


className: UInteractiveToolWithToolTargetsBuilder

description: AUInteractiveToolWithToolTargetsBuildercreates a new instance of an InteractiveTool that uses tool targets. See ToolTarget.h for more information on tool targets and their usage. This class defines the common interface(s) for defining the tool target requirements of the tool it builds. This is an abstract base class, you must subclass it in order to create your particular Tool instance.

code: class UInteractiveToolWithToolTargetsBuilder : public [UInteractiveToolBuilder](API\Runtime\InteractiveToolsFramework\UInteractiveToolBuilder)


description: IInputBehaviorSource.

code: virtual const [UInputBehaviorSet](API\Runtime\InteractiveToolsFramework\UInputBehaviorSet) * GetInputBehaviors() const


className: ULocalInputBehaviorSource

description: An implementation ofIInputBehaviorSourcethat forwards to a user provided-lambda, to allow a tool to supply a behavior source different from the one it is implementing itself. Useful, for instance, when a tool wants to supply different behaviors to separate input routers.

code: class ULocalInputBehaviorSource : public [UObject](API\Runtime\CoreUObject\UObject\UObject), public [IInputBehaviorSource](API\Runtime\InteractiveToolsFramework\IInputBehaviorSource)


description: no duplicate detection is currently done

code: void AddIndices ( EMeshSelectionElementType ElementType, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & Indices )


code: void AddIndices ( EMeshSelectionElementType ElementType, const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & Indices )


description: current selected elements of the given ElementType

code: [TArray](API\Runtime\Core\Containers\TArray)< int > & GetElements ( EMeshSelectionElementType ElementType )


code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetElements ( EMeshSelectionElementType ElementType ) const


description: Remove list of Indices from the current selection for the given ElementType

code: void RemoveIndices ( EMeshSelectionElementType ElementType, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & Indices )


code: void RemoveIndices ( EMeshSelectionElementType ElementType, const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & Indices )


code: UMeshSelectionSet()


className: UMeshSelectionSet

description: UMeshSelectionSetis an implementation ofUSelectionSetthat represents selections on indexed meshes. Vertices, Edges, Faces, and Groups can be selected.

code: class UMeshSelectionSet : public [USelectionSet](API\Runtime\InteractiveToolsFramework\USelectionSet)

Edges

type: TArray< int32 >


description: true if all ComponentTargets of this tool are still valid

code: virtual bool AreAllTargetsValid() const


description: true if this Tool is currently in a state where it can be Accepted. This may be false if for example there was an error in the Tool.

code: virtual bool CanAccept() const


description: the current Focus Box

code: virtual FBox GetWorldSpaceFocusBox()


description: true if a Focus Point was found, can return false if (eg) the ray missed the target objects

code: virtual bool GetWorldSpaceFocusPoint ( const FRay & WorldRay, FVector & PointOut )


code: void SetTargets ( [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) >> TargetsIn )


description: IInteractiveToolCameraFocusAPIimplementation.


description: true if the implementation can provide a Focus Point


className: UMultiSelectionTool

code: class UMultiSelectionTool : public [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool), public [IInteractiveToolCameraFocusAPI](API\Runtime\InteractiveToolsFramework\IInteractiveToolCameraFocusAPI)

Targets

type: TArray<TObject...


description: the multicast delegate that is called when properties are modified


description: Posts a message to the OnModified delegate with the modifiedFProperty

code: void NotifySelectionSetModified()


className: USelectionSet

description: USelectionSetis a base class for Selection objects. For example theUMeshSelectionSetimplementation stores information on selected triangles, vertices, etc.

code: class USelectionSet : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

OnModified

type: FSelectionSetMo...


description: true if all ToolTargets of this tool are still valid


description: the ToolTarget for the Tool

code: virtual [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) * GetTarget()


description: Set the ToolTarget for the Tool

code: virtual void SetTarget ( [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) * TargetIn )


className: USingleSelectionTool

code: class USingleSelectionTool : public [UInteractiveTool](API\Runtime\InteractiveToolsFramework\UInteractiveTool), public [IInteractiveToolCameraFocusAPI](API\Runtime\InteractiveToolsFramework\IInteractiveToolCameraFocusAPI)


className: UToolContextTransactionProvider

code: class UToolContextTransactionProvider : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


className: UToolFrameworkComponent

description: UInterfaceforIToolFrameworkComponent.

code: class UToolFrameworkComponent : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


description: Add a new ToolTargetFactory

code: virtual void AddTargetFactory ( [UToolTargetFactory](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTargetFactory) * Factory )


description: Looks through the current selected components and actors and builds all targets that satisfy the requirements.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) > > BuildAllSelectedTargetable ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements )


description: Looks through the currently selected components and actors and builds a target out of the first encountered element that satisfies the requirements.

code: virtual [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) * BuildFirstSelectedTargetable ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements )


description:
Uses one of the stored factories to build a tool target out of the given input object that satisfies the given requirements. If multiple factories are capable of building a qualifying target, the first encountered one will be used. If none are capable, a nullptr is returned.
Tool target that staisfies given requirements, or nullptr if none could be created.

code: virtual [UToolTarget](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTarget) * BuildTarget ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * SourceObject, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements )


description: Much like BuildTarget, but casts the target to the template argument before returning.

code: template<typename CastToType> CastToType * BuildTarget ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * SourceObject, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetType )


description: Examines stored target factories to see if one can build the requested type of target.

code: virtual bool CanBuildTarget ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * SourceObject, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements ) const


description: Looks through the currently selected components and actors and counts the number of inputs that could be used to create qualifying tool targets.

code: virtual int32 CountSelectedAndTargetable ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements ) const


description: Looks through the currently selected components and actors and counts the number of inputs that could be used to create qualifying tool targets with an additional test predicate.

code: virtual int32 CountSelectedAndTargetableWithPredicate ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool([UActorComponent](API\Runtime\Engine\Components\UActorComponent) &)> ComponentPred ) const


code: virtual void EnumerateSelectedAndTargetableComponents ( const [FToolBuilderState](API\Runtime\InteractiveToolsFramework\FToolBuilderState) & SceneState, const [FToolTargetTypeRequirements](API\Runtime\InteractiveToolsFramework\ToolTargets\FToolTargetTypeRequirements) & TargetRequirements, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void([UActorComponent](API\Runtime\Engine\Components\UActorComponent) *)> ComponentFunc ) const


description: Find the first ToolTargetFactory that passes the Predicate function

code: virtual [UToolTargetFactory](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTargetFactory) * FindFirstFactoryByPredicate ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool([UToolTargetFactory](API\Runtime\InteractiveToolsFramework\ToolTargets\UToolTargetFactory) *)> Predicate )


description: Find the first ToolTargetFactory of a given type

code: template<typename CastToType> CastToType * FindFirstFactoryByType()


description: Initialize the ToolTargetManager.UInteractiveToolsContextcalls this, you should not.

code: virtual void Initialize()


description: true if ToolManager is currently active, ie betweenInitialize()andShutdown()

code: bool IsActive() const


description: Shutdown the ToolTargetManager. Called byUInteractiveToolsContext.

code: virtual void Shutdown()


code: UToolTargetManager()


className: UToolTargetManager

description: See the class comment forUToolTargetfor more info.

code: class UToolTargetManager : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bIsActive

type: bool

description: This flag is set to true onInitialize()and false onShutdown().


className: GUID

description: The GUID for this custom version number.

module: InterchangeCore

code: static const [FGuid](API\Runtime\Core\Misc\FGuid) GUID;


className: Type

code: enum Type { BeforeCustomVersionWasAdded = 0, SerializedInterchangeObjectStoring, VersionPlusOne, LatestVersion = VersionPlusOne - 1, }


className: FInterchangeCustomVersion

description: No constructors are accessible with public or protected access.

code: struct FInterchangeCustomVersion


bVisible

description: If true, the property is visible.


description: Return true if the property is locked.

code: bool IsPropertyLocked() const


description: Return true if the property is visible for the specified context.

code: bool IsPropertyVisible ( const bool bIsReimportContext ) const


code: void SetPropertyLocked ( const bool bLockValue )


code: void SetPropertyVisible ( const bool bIsReimportContext, const bool bVisibleValue )


className: FInterchangePipelinePropertyStates

bLocked

description: If true, the property is locked.

ImportStates

type: FInterchangePip...

description: The property states for the import context

ReimportStates

description: The property states for the reimport context


className: FApplyAttributeToAsset

code: typedef TBaseDelegate_OneParam< bool, [UObject](API\Runtime\CoreUObject\UObject\UObject) * > FApplyAttributeToAsset


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & AssetNameKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ClassTypeAttributeKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & DisplayLabelKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & IsEnabledKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ParentIDKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & TargetAssetIDsKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & UniqueIDKey()


className: FBaseNodeStaticData

description: The static data are mainly for holding Attribute keys. All attributes that are always available for a node should be in this class or a derived class.

code: struct FBaseNodeStaticData


code: static const [FString](API\Runtime\Core\Containers\FString) & FactoryDependenciesBaseKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ReimportStrategyFlagsKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeContainerTypeKey()


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & SkipNodeImportKey()


className: FFactoryBaseNodeStaticData

code: struct FFactoryBaseNodeStaticData : public [UE::Interchange::FBaseNodeStaticData](API\Runtime\InterchangeCore\Nodes\FBaseNodeStaticData)


className: FFillAttributeToAsset

code: typedef TBaseDelegate_OneParam< bool, [UObject](API\Runtime\CoreUObject\UObject\UObject) * > FFillAttributeToAsset


className: FInterchangeUserDefinedAttributeInfo

Name

type: FString

PayloadKey

type: TOptional<FStr...


code: static const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ForceNodeReimportKey()


description:
Finds a property by name in Outer and supports looking into FStructProperties (embedded structs) with a '.' separating the property names.
The Property matching the last name in the PropertyPath.

code: namespace InterchangePrivateNodeBase { [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * InterchangePrivateNodeBase::FindPropertyByPathChecked ( [TVariant](API\Runtime\Core\Misc\TVariant)< [UObject](API\Runtime\CoreUObject\UObject\UObject) *, uint8 * > & Container, [UStruct](API\Runtime\CoreUObject\UObject\UStruct) * Outer, FStringView PropertyPath ) }


description: Retrieve a custom attribute if the attribute exist

code: namespace InterchangePrivateNodeBase { template<typename ValueType> bool InterchangePrivateNodeBase::GetCustomAttribute ( const [UE::Interchange::FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & Attributes, const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & AttributeKey, const [FString](API\Runtime\Core\Containers\FString) & OperationName, ValueType & OutAttributeValue ) }


description: Add or update a custom attribute value in the specified storage

code: namespace InterchangePrivateNodeBase { template<typename ValueType> bool InterchangePrivateNodeBase::SetCustomAttribute ( [UE::Interchange::FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & Attributes, const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & AttributeKey, const [FString](API\Runtime\Core\Containers\FString) & OperationName, const ValueType & AttributeValue ) }


code: bool AddItem ( const ItemType & Item )


code: void GetItem ( const int32 Index, ItemType & OutItem ) const


code: void GetItems ( [TArray](API\Runtime\Core\Containers\TArray)< ItemType > & OutItems ) const


code: static const [FString](API\Runtime\Core\Containers\FString) & IndexKey()


code: void Initialize ( const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage), ESPMode::ThreadSafe > & InAttributes, const [FString](API\Runtime\Core\Containers\FString) & BaseKeyName )


code: bool RemoveItem ( const ItemType & ItemToDelete )


className: TArrayAttributeHelper

description: Helper class to manage an array of items inside an attribute storage

code: template<typename ItemType> class TArrayAttributeHelper


code: void Empty ( int32 NumOfExpectedElements )


code: bool GetValue ( const KeyType & InKey, ValueType & OutValue ) const


code: bool GetValueByHash ( uint32 Hash, const KeyType & InKey, ValueType & OutValue ) const


code: void Initialize ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage), ESPMode::ThreadSafe > & InAttributes, const [FString](API\Runtime\Core\Containers\FString) & BaseKeyName )


code: [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) & operator= ( const [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) & )


code: [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) & operator= ( const [TMap](API\Runtime\Core\Containers\TMap)< KeyType, ValueType > & InMap )


code: [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) & operator= ( [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) && )


code: bool RemoveKey ( const KeyType & InKey )


code: bool RemoveKeyAndGetValue ( const KeyType & InKey, ValueType & OutValue )


code: bool RemoveKeyByHash ( uint32 Hash, const KeyType & InKey )


code: bool RemoveKeyAndGetValueByHash ( uint32 Hash, const KeyType & InKey, ValueType & OutValue )


code: void Reserve ( int32 Number )


code: bool SetKeyValue ( const KeyType & InKey, const ValueType & InValue )


code: bool SetKeyValueByHash ( uint32 Hash, const KeyType & InKey, const ValueType & InValue )


className: TAttributeHandle

code: typedef [FAttributeStorage::TAttributeHandle](API\Runtime\InterchangeCore\Types\FAttributeStorage\TAttributeHandle)< T > TAttributeHandle


code: [TMap](API\Runtime\Core\Containers\TMap)< KeyType, ValueType > ToMap() const


code: TMapAttributeHelper ( const [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) & )


code: TMapAttributeHelper ( [TMapAttributeHelper](API\Runtime\InterchangeCore\Nodes\TMapAttributeHelper) && )


className: TMapAttributeHelper

description: Helper class to manage aTMapwhere the key and value type can be any type support by theFAttributeStorage

code: template<typename KeyType, typename ValueType> class TMapAttributeHelper


description: Add a boolean attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddBooleanAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const bool & Value )


description: Add a float attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddFloatAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const float & Value )


description: Add a guid attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddGuidAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const [FGuid](API\Runtime\Core\Misc\FGuid) & Value )


description: Add aFLinearColorattribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddLinearColorAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const [FLinearColor](API\Runtime\Core\Math\FLinearColor) & Value )


description: Add a string attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddStringAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const [FString](API\Runtime\Core\Containers\FString) & Value )


description: Add a int32 attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddInt32Attribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const int32 & Value )


code: virtual void AppendAssetRegistryTags ( [TArray](API\Runtime\Core\Containers\TArray)< [FAssetRegistryTag](API\Runtime\CoreUObject\UObject\UObject\FAssetRegistryTag) > & OutTags ) const


description: Add a Vector2 attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddVector2Attribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const FVector2f & Value )


description: Add asset node UID relating to this object.

code: bool AddTargetNodeUid ( const [FString](API\Runtime\Core\Containers\FString) & AssetUid ) const


description: Add a double attribute to this node. Return false if the attribute do not exist or if we cannot add it

code: bool AddDoubleAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const double & Value )


code: static void CompareNodeStorage ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * NodeA, const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * NodeB, [TArray](API\Runtime\Core\Containers\TArray)< [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & RemovedAttributes, [TArray](API\Runtime\Core\Containers\TArray)< [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AddedAttributes, [TArray](API\Runtime\Core\Containers\TArray)< [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & ModifiedAttributes )


code: static void CopyStorage ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * SourceNode, [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * DestinationNode )


code: static void CopyStorageAttributes ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * SourceNode, [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * DestinationNode, [TArray](API\Runtime\Core\Containers\TArray)< [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AttributeKeys )


description: Optional, Any node that can import/export an asset should set the proper name we will give to the asset. If the attribute was never set, it will return GetDisplayLabel.

code: virtual [FString](API\Runtime\Core\Containers\FString) GetAssetName() const


code: template<typename AttributeType> bool GetAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, AttributeType & OutValue ) const


description: UI that inspect node attribute call this to display the attribute under the returned category

code: virtual [FString](API\Runtime\Core\Containers\FString) GetAttributeCategory ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


code: template<typename AttributeType> AttributeType GetAttributeChecked ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey ) const


description: This function return an attribute handle for the specified Key. If there is an issue with the KEY or storage the method will trip a check, always make sure you have a valid key before calling this

code: template<typename T> [UE::Interchange::FAttributeStorage::TAttributeHandle](API\Runtime\InterchangeCore\Types\FAttributeStorage\TAttributeHandle)< T > GetAttributeHandle ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


description: Use this function to query all the node attribute keys

code: void GetAttributeKeys ( [TArray](API\Runtime\Core\Containers\TArray)< [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AttributeKeys ) const


description: This function return an attribute type for the specified Key. Return type None if the key is invalid

code: virtual [UE::Interchange::EAttributeTypes](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeTypes) GetAttributeType ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


description: Get a boolean attribute from this node. Return false if the attribute do not exist

code: bool GetBooleanAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, bool & OutValue ) const


description: Return the display label.


description: Get a double attribute from this node. Return false if the attribute do not exist

code: bool GetDoubleAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, double & OutValue ) const


description: Get a float attribute from this node. Return false if the attribute do not exist

code: bool GetFloatAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, float & OutValue ) const


description: Get a guid attribute from this node. Return false if the attribute do not exist

code: bool GetGuidAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [FGuid](API\Runtime\Core\Misc\FGuid) & OutValue ) const


description: the attribute are sorted by key when building theFSHA1data. The hash will be deterministic for the same data whatever the order we add the attributes. This function interface is pure virtual

code: virtual [FGuid](API\Runtime\Core\Misc\FGuid) GetHash() const


description: Icon name, use to retrieve the brush when we display the node in any UI

code: virtual [FName](API\Runtime\Core\UObject\FName) GetIconName() const


description: Get a int32 attribute from this node. Return false if the attribute do not exist

code: bool GetInt32Attribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, int32 & OutValue ) const


description: UI that inspect node attribute call this to give a readable name to attribute key

code: virtual [FString](API\Runtime\Core\Containers\FString) GetKeyDisplayName ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


description: Get aFLinearColorattribute from this node. Return false if the attribute do not exist

code: bool GetLinearColorAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [FLinearColor](API\Runtime\Core\Math\FLinearColor) & OutValue ) const


description: Return the node container type which define the purpose of the node (Factory node, translated scene node or translated asset node).


description: Return the parent unique id. In case the attribute does not exist it will returnInvalidNodeUid()


description: Get a string attribute from this node. Return false if the attribute do not exist

code: bool GetStringAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [FString](API\Runtime\Core\Containers\FString) & OutValue ) const


description: Get number of target assets relating to this object.

code: int32 GetTargetNodeCount() const


description: Get target assets relating to this object.

code: void GetTargetNodeUids ( [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & OutTargetAssets ) const


description: Return the unique id pass in the constructor.


description: Return the node type name of the class, we use this when reporting error

code: virtual [FString](API\Runtime\Core\Containers\FString) GetTypeName() const


description: Get a Vector2 attribute from this node. Return false if the attribute do not exist

code: bool GetVector2Attribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, FVector2f & OutValue ) const


description: Return true if the node contain an attribute with the specified Key

code: virtual bool HasAttribute ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


className: HierarchySeparator

code: static constexpr const TCHAR * HierarchySeparator = TEXT("\\");


description: Return the invalid unique ID


description: Initialize the base data of the node

code: void InitializeNode ( const [FString](API\Runtime\Core\Containers\FString) & UniqueID, const [FString](API\Runtime\Core\Containers\FString) & DisplayLabel, const EInterchangeNodeContainerType NodeContainerType )


description: IsEnable true mean that the node will be import/export, if false it will be discarded. Return false if this node was disabled. Return true if the attribute is not there or if it was enabled.

code: bool IsEnabled() const


description: Add an attribute to the node

code: template<typename T> [UE::Interchange::FAttributeStorage::TAttributeHandle](API\Runtime\InterchangeCore\Types\FAttributeStorage\TAttributeHandle)< T > RegisterAttribute ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey, const T & Value )


description: Remove asset node UID relating to this object.

code: bool RemoveTargetNodeUid ( const [FString](API\Runtime\Core\Containers\FString) & AssetUid ) const


description: Remove any attribute from this node. Return false if we cannot remove it. If the attribute do not exist it will return true.

code: bool RemoveAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey )


description: Serialize the node, by default only the attribute storage is serialize for a node

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Set the name we want for the imported asset this node represent. The asset factory will callGetAssetName()

code: virtual bool SetAssetName ( const [FString](API\Runtime\Core\Containers\FString) & AssetName )


code: template<typename AttributeType> bool SetAttribute ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, const AttributeType & Value )


description:
Set the IsEnable attribute to determine if this node should be part of the import/export process
true if it was able to set the attribute, false otherwise.

code: bool SetEnabled ( const bool bIsEnabled )


description: Change the display label.

code: bool SetDisplayLabel ( const [FString](API\Runtime\Core\Containers\FString) & DisplayName )


description: Set the parent unique id.

code: bool SetParentUid ( const [FString](API\Runtime\Core\Containers\FString) & ParentUid )


description: UI that inspect node attribute call this to display or hide an attribute

code: virtual bool ShouldHideAttribute ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


className: UInterchangeBaseNode

description: This struct is used to store and retrieve key value attributes. The attributes are store in a generic FAttributeStorage which serialize the value in a TArray64SeeUE::Interchange::EAttributeTypesto know the supported template types This is an abstract class. This is the base class of the interchange node graph format, all class in this format should derive from this class

code: class UInterchangeBaseNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Attributes

description: The storage use to store the Key value attribute for this node.

TargetNodes

description: This tracks the IDs of asset nodes which are the target of factories


code: [FString](API\Runtime\Core\Containers\FString) AddNode ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * Node )


description: Recursively traverse the hierarchy starting with the specified node unique ID. If the iteration lambda return true the iteration will stop. If the iteration lambda return false the iteration will continue.

code: bool BreakableIterateNodeChildren ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) *)> IterationLambda ) const


description: Unordered iteration of the all nodes, but I can be stop early by returning true

code: void BreakableIterateNodes ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(const [FString](API\Runtime\Core\Containers\FString) &, [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) *)> IterationLambda ) const


code: template<typename T> void BreakableIterateNodesOfType ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(const [FString](API\Runtime\Core\Containers\FString) &, T *)> IterationLambda ) const


description: Fill the children uids cache to optimize the GetNodeChildrenUids call.

code: void ComputeChildrenCache()


description: Get a factory node pointer

code: [UInterchangeFactoryBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeFactoryBaseNode) * GetFactoryNode ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID ) const


description: Get a node pointer. Once added to the container, nodes are considered const

code: const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * GetNode ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID ) const


description: Get the node nth const children

code: [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * GetNodeChildren ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, int32 ChildIndex )


description: Get the node children count

code: int32 GetNodeChildrenCount ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID ) const


description: Get the node nth const children. Const version

code: const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * GetNodeChildren ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, int32 ChildIndex ) const


description: Get all children Uid

code: [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > GetNodeChildrenUids ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID ) const


description: Return all nodes that are of the ClassNode type

code: void GetNodes ( const [UClass](API\Runtime\CoreUObject\UObject\UClass) * ClassNode, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & OutNodes ) const


description: Return all nodes that do not have any parent

code: void GetRoots ( [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & RootNodes ) const


description: Return true if the node unique ID exist in the container

code: bool IsNodeUidValid ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID ) const


code: void IterateNodeChildren ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) *)> IterationLambda ) const


description: Unordered iteration of the all nodes

code: void IterateNodes ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FString](API\Runtime\Core\Containers\FString) &, [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) *)> IterationLambda ) const


code: template<typename T> void IterateNodesOfType ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FString](API\Runtime\Core\Containers\FString) &, T *)> IterationLambda ) const


code: void ReplaceNode ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, [UInterchangeFactoryBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeFactoryBaseNode) * NewNode )


description: Serialize the node container from the specified file.

code: void LoadFromFile ( const [FString](API\Runtime\Core\Containers\FString) & Filename )


description: Reset the children uids cache.

code: void ResetChildrenCache()


description: Serialize the node container into the specified file.

code: void SaveToFile ( const [FString](API\Runtime\Core\Containers\FString) & Filename )


description: Set node ParentUid

code: bool SetNodeParentUid ( const [FString](API\Runtime\Core\Containers\FString) & NodeUniqueID, const [FString](API\Runtime\Core\Containers\FString) & NewParentNodeUid )


description: This function serialize the node container and all node sub-objects point by it. Out of process translator like fbx will dump a file containing this data and the editor will read the file and regenerate the container from the saved data.

code: void SerializeNodeContainerData ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


className: UInterchangeBaseNodeContainer

description: Translators are filling this container and the Import/Export managers are reading it to execute the import/export process

code: class UInterchangeBaseNodeContainer : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: UInterchangeBaseNodeContainer()


description: Adds the delegates that will read and write the attribute value to aUObject.

code: template<typename AttributeType> void AddApplyAndFillDelegates ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [UClass](API\Runtime\CoreUObject\UObject\UClass) * ObjectClass, const [FName](API\Runtime\Core\UObject\FName) PropertyName )


description: Add one dependency to this object.

code: bool AddFactoryDependencyUid ( const [FString](API\Runtime\Core\Containers\FString) & DependencyUid )


description: Each Attribute that was set and have a delegate set for the specified UObject->UClasswill get the delegate execute so it apply the attribute to theUObjectproperty. See the macros IMPLEMENT_NODE_ATTRIBUTE_SETTER at the top of the file to know how delegates are setup for property.

code: void ApplyAllCustomAttributeToObject ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object ) const


description:
Writes an attribute value to aUObject.
True if we succeeded.

code: template<typename AttributeType> bool ApplyAttributeToObject ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object, const [FName](API\Runtime\Core\UObject\FName) PropertyName ) const


description: Specialized version of ApplyAttributeToObject for strings. If the target property is aFObjectPropertyBase, treat the string as an object path.

code: template<> bool ApplyAttributeToObject ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object, const [FName](API\Runtime\Core\UObject\FName) PropertyName ) const


description: Specialized version of ApplyAttributeToObject for bools. If the target property is aFBoolProperty, treat the propertyg as a bitfield.


code: static [FString](API\Runtime\Core\Containers\FString) BuildFactoryNodeUid ( const [FString](API\Runtime\Core\Containers\FString) & TranslatedNodeUid )


description: Copies all the attributes from SourceNode to this node.

code: virtual void CopyWithObject ( const [UInterchangeFactoryBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeFactoryBaseNode) * SourceNode, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


description: Copies all the custom attributes from SourceNode to this node and gets the appropriate values from Object.

code: static [UInterchangeFactoryBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeFactoryBaseNode) * DuplicateWithObject ( const [UInterchangeFactoryBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeFactoryBaseNode) * SourceNode, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object )


code: void FillAllCustomAttributeFromObject ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object ) const


description:
Reads an attribute value from aUObject.
True if we succeeded.

code: template<typename AttributeType> bool FillAttributeFromObject ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object, const [FName](API\Runtime\Core\UObject\FName) PropertyName )


description: Specialized version of FillAttributeFromObject for strings. If the target property is aFObjectPropertyBase, treat the string as an object path.

code: template<> bool FillAttributeFromObject ( const [FString](API\Runtime\Core\Containers\FString) & NodeAttributeKey, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object, const [FName](API\Runtime\Core\UObject\FName) PropertyName )


description: Specialized version of FillAttributeFromObject for bools. If the target property is aFBoolProperty, treat the property as a bitfield.


description: UI that inspect node attribute call this to display the attribute under the returned category

code: virtual [FString](API\Runtime\Core\Containers\FString) GetAttributeCategory ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


description: Return the custom ReferenceObject. TheUObjectthis factory node has created.

code: bool GetCustomReferenceObject ( [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) & AttributeValue ) const


description: Return the custom sub-path under PackageBasePath, where the assets will be created.

code: bool GetCustomSubPath ( [FString](API\Runtime\Core\Containers\FString) & AttributeValue ) const


description: This function allow to retrieve the dependency for this object.

code: void GetFactoryDependencies ( [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & OutDependencies ) const


description: This function allow to retrieve the number of factory dependencies for this object.


description: This function allow to retrieve one dependency for this object.

code: void GetFactoryDependency ( const int32 Index, [FString](API\Runtime\Core\Containers\FString) & OutDependency ) const


description: UI that inspect node attribute call this to give a readable name to attribute key

code: virtual [FString](API\Runtime\Core\Containers\FString) GetKeyDisplayName ( const [UE::Interchange::FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & NodeAttributeKey ) const


description: Return theUClassof the object we represent so we can find factory/writer

code: virtual [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetObjectClass() const


description: Return the reimport strategy flags.


description: Remove one dependency from this object.

code: bool RemoveFactoryDependencyUid ( const [FString](API\Runtime\Core\Containers\FString) & DependencyUid )


description: Set the custom ReferenceObject. TheUObjectthis factory node has created.

code: bool SetCustomReferenceObject ( const [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) & AttributeValue )


description: Allow the creation of the unreal object even if it has been previously deleted in the editor.

code: bool SetForceNodeReimport()


description: Set the custom sub-path under PackageBasePath where the assets will be created.

code: bool SetCustomSubPath ( const [FString](API\Runtime\Core\Containers\FString) & AttributeValue )


description: Change the reimport strategy flags.

code: bool SetReimportStrategyFlags ( const EReimportStrategyFlags & ReimportStrategyFlags )


description: Add the skip node attribute. Use this function to cancel the creation of the unreal asset, see ShouldSkipNodeImport for more documentation.

code: bool SetSkipNodeImport()


description: Return whether or not an object should be created even if it has been deleted in the editor. Return false by default

code: bool ShouldForceNodeReimport() const


description: Return true if this node should skip the factory import process, false otherwise. Node can be in a situation where we have to skip the import process because we cannot import the associated asset for multiple reason.

code: bool ShouldSkipNodeImport() const


description: Disallow the creation of the unreal object if it has been previously deleted in the editor.

code: bool UnsetForceNodeReimport()


description: Remove the skip node attribute. See ShouldSkipNodeImport for more documentation.

code: bool UnsetSkipNodeImport()


className: UInterchangeFactoryBaseNode

description: This struct is used to store and retrieve key value attributes. The attributes are store in a generic FAttributeStorage which serialize the value in a TArray64SeeUE::Interchange::EAttributeTypesto know the supported template types This is an abstract class. This is the base class of the interchange node graph format, all class in this format should derive from this class

code: class UInterchangeFactoryBaseNode : public [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode)

ApplyCustomAttributeDelegates

type: TMap<UClass&#...

description: This array hold the delegate to apply the attribute that has to be set on anUObject

FactoryDependencies

description: Those dependencies are use by the interchange parsing task to make sure the asset are created in the correct order.


code: UInterchangeFactoryBaseNode()


description: The translators that want to modify the common data should ensure they create the unique common pipeline node.

code: static [UInterchangeSourceNode](API\Runtime\InterchangeCore\Nodes\UInterchangeSourceNode) * FindOrCreateUniqueInstance ( [UInterchangeBaseNodeContainer](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNodeContainer) * NodeContainer )


description: Query the source animated time start.

code: bool GetCustomAnimatedTimeStart ( double & AttributeValue ) const


description: Query the source animated time end.

code: bool GetCustomImportUnusedMaterial ( bool & AttributeValue ) const


description: Query the source animated time end.

code: bool GetCustomAnimatedTimeEnd ( double & AttributeValue ) const


description: Query the source frame rate numerator.

code: bool GetCustomSourceFrameRateNumerator ( int32 & AttributeValue ) const


description: Query the source frame rate denominator.

code: bool GetCustomSourceFrameRateDenominator ( int32 & AttributeValue ) const


description: Query the source time line start.

code: bool GetCustomSourceTimelineStart ( double & AttributeValue ) const


description: Query the source time line end.

code: bool GetCustomSourceTimelineEnd ( double & AttributeValue ) const


description: Return the node type name of the class, we use this when reporting error

code: virtual [FString](API\Runtime\Core\Containers\FString) GetTypeName() const


description: Initialize the base data of the node

code: void InitializeSourceNode ( const [FString](API\Runtime\Core\Containers\FString) & UniqueID, const [FString](API\Runtime\Core\Containers\FString) & DisplayLabel )


description: If the unique instance doesn't exist it will return nullptr. This function should be use by the pipelines, to avoid creating a node.

code: static const [UInterchangeSourceNode](API\Runtime\InterchangeCore\Nodes\UInterchangeSourceNode) * GetUniqueInstance ( const [UInterchangeBaseNodeContainer](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNodeContainer) * NodeContainer )


description: Store the source animated time start.

code: bool SetCustomAnimatedTimeStart ( const double & AttributeValue )


description: Store the source animated time end.

code: bool SetCustomAnimatedTimeEnd ( const double & AttributeValue )


description: Store the source animated time end.

code: bool SetCustomImportUnusedMaterial ( const bool & AttributeValue )


description: Store the source frame rate numerator.

code: bool SetCustomSourceFrameRateNumerator ( const int32 & AttributeValue )


description: Store the source frame rate denominator.

code: bool SetCustomSourceFrameRateDenominator ( const int32 & AttributeValue )


description: Store the source time line start.

code: bool SetCustomSourceTimelineStart ( const double & AttributeValue )


description: Store the source time line end.

code: bool SetCustomSourceTimelineEnd ( const double & AttributeValue )


className: UInterchangeSourceNode

description: No constructors are accessible with public or protected access.

code: class UInterchangeSourceNode : public [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode)


description: Create user defined attribute with a value and a optional payload key param UserDefinedAttributeName - The name of the user defined attribute param Value - The value of the user defined attribute param PayloadKey - The translator payload key to retrieve theFRichCurveanimation for this user defined attribute note - User defined attributes are the DCC translated node user custom attributes (i.e. Maya extra attributes) Payload key will point on aFRichCurvepayload.

code: template<typename ValueType> static bool CreateUserDefinedAttribute ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const ValueType & Value, const [TOptional](API\Runtime\Core\IO\TOptional)< [FString](API\Runtime\Core\Containers\FString) > & PayloadKey )


code: static bool CreateUserDefinedAttribute_Boolean ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const bool & Value, const [FString](API\Runtime\Core\Containers\FString) & PayloadKey )


code: static bool CreateUserDefinedAttribute_Float ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const float & Value, const [FString](API\Runtime\Core\Containers\FString) & PayloadKey )


code: static bool CreateUserDefinedAttribute_Int32 ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const int32 & Value, const [FString](API\Runtime\Core\Containers\FString) & PayloadKey )


code: static bool CreateUserDefinedAttribute_FString ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const [FString](API\Runtime\Core\Containers\FString) & Value, const [FString](API\Runtime\Core\Containers\FString) & PayloadKey )


code: static bool CreateUserDefinedAttribute_Double ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, const double & Value, const [FString](API\Runtime\Core\Containers\FString) & PayloadKey )


code: static void DuplicateAllUserDefinedAttribute ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeSourceNode, [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeDestinationNode, bool bAddSourceNodeName )


description: Get user defined attribute value and optional payload key param UserDefinedAttributeName - The name of the user defined attribute param OutValue - The value of the user defined attribute param OutPayloadKey - The translator payload key to retrieve theFRichCurveanimation for this user defined attribute note - User defined attributes are the DCC translated node user custom attributes (i.e. Maya extra attributes) Payload key will point on aFRichCurvepayload.

code: template<typename ValueType> static bool GetUserDefinedAttribute ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, ValueType & OutValue, [TOptional](API\Runtime\Core\IO\TOptional)< [FString](API\Runtime\Core\Containers\FString) > & OutPayloadKey )


code: static bool GetUserDefinedAttribute_Boolean ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, bool & OutValue, [FString](API\Runtime\Core\Containers\FString) & OutPayloadKey )


code: static bool GetUserDefinedAttribute_Float ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, float & OutValue, [FString](API\Runtime\Core\Containers\FString) & OutPayloadKey )


code: static bool GetUserDefinedAttribute_Double ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, double & OutValue, [FString](API\Runtime\Core\Containers\FString) & OutPayloadKey )


code: static bool GetUserDefinedAttribute_Int32 ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, int32 & OutValue, [FString](API\Runtime\Core\Containers\FString) & OutPayloadKey )


code: static bool GetUserDefinedAttribute_FString ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName, [FString](API\Runtime\Core\Containers\FString) & OutValue, [FString](API\Runtime\Core\Containers\FString) & OutPayloadKey )


code: static [TArray](API\Runtime\Core\Containers\TArray)< [FInterchangeUserDefinedAttributeInfo](API\Runtime\InterchangeCore\Nodes\FInterchangeUserDefinedAttribute-) > GetUserDefinedAttributeInfos ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode )


code: static void GetUserDefinedAttributeInfos ( const [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, [TArray](API\Runtime\Core\Containers\TArray)< [FInterchangeUserDefinedAttributeInfo](API\Runtime\InterchangeCore\Nodes\FInterchangeUserDefinedAttribute-) > & UserDefinedAttributeInfos )


description: Remove the specified user defined attribute param UserDefinedAttributeName - The name of the user defined attribute to remove return - True if the attribute exist and was remove or if the attribute doesn't exist. Return false if the attribute exist but the attribute was not properly remove. note - User defined attributes are the DCC translated node user custom attributes (i.e. Maya extra attributes) Payload key will point on aFRichCurvepayload.

code: static bool RemoveUserDefinedAttribute ( [UInterchangeBaseNode](API\Runtime\InterchangeCore\Nodes\UInterchangeBaseNode) * InterchangeNode, const [FString](API\Runtime\Core\Containers\FString) & UserDefinedAttributeName )


className: UserDefinedAttributeBaseKey

code: static const [FString](API\Runtime\Core\Containers\FString) UserDefinedAttributeBaseKey = TEXT("UserDefined_");


className: UserDefinedAttributeValuePostKey

code: static const [FString](API\Runtime\Core\Containers\FString) UserDefinedAttributeValuePostKey = TEXT("_Value");


className: UserDefinedAttributePayLoadPostKey

code: static const [FString](API\Runtime\Core\Containers\FString) UserDefinedAttributePayLoadPostKey = TEXT("_Payload");


className: UInterchangeUserDefinedAttributesAPI

description: UInterchangeUserDefinedAttributesAPIis used to store and retrieve user defined attributes (i.e. DCC node attributes, pipelines will have access to those attributes) Any user defined attribute have: name, value and a optional AnimationPayloadKey (FRichCurvewhich is a float curve). Value type must be supported by theUE::Interchange::EAttributeTypesenumeration.

code: class UInterchangeUserDefinedAttributesAPI : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: static [FString](API\Runtime\Core\Containers\FString) ExtractPackageName ( const [FString](API\Runtime\Core\Containers\FString) & ObjectPath )


code: static bool IsMapPackageAsset ( const [FString](API\Runtime\Core\Containers\FString) & ObjectPath )


code: static bool IsMapPackageAsset ( const [FString](API\Runtime\Core\Containers\FString) & ObjectPath, [FString](API\Runtime\Core\Containers\FString) & MapFilePath )


className: FPackageUtils

code: class FPackageUtils


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) && )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( const [FName](API\Runtime\Core\UObject\FName) & Other )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( const [FString](API\Runtime\Core\Containers\FString) & Other )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( [FString](API\Runtime\Core\Containers\FString) && Other )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( const [FText](API\Runtime\Core\Internationalization\FText) & Other )


code: [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & operator= ( const TCHAR * Other )


code: bool operator> ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: bool operator== ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: bool operator>= ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: bool operator< ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: bool operator<= ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: bool operator!= ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other ) const


code: FAttributeKey ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & Other )


code: FAttributeKey ( [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) && Other )


code: FAttributeKey ( const [FString](API\Runtime\Core\Containers\FString) & Other )


code: FAttributeKey ( const [FName](API\Runtime\Core\UObject\FName) & Other )


code: FAttributeKey ( const [FText](API\Runtime\Core\Internationalization\FText) & Other )


code: FAttributeKey ( [FString](API\Runtime\Core\Containers\FString) && Other )


code: FAttributeKey ( const TCHAR * Other )


className: FAttributeKey

code: struct FAttributeKey


description: Compare two storage to know which properties was modified/added/removed.

code: static void CompareStorage ( const [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & BaseStorage, const [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & VersionStorage, [TArray](API\Runtime\Core\Containers\TArray)< [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & RemovedAttributes, [TArray](API\Runtime\Core\Containers\TArray)< [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AddedAttributes, [TArray](API\Runtime\Core\Containers\TArray)< [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & ModifiedAttributes )


description: Copy an array of attributes from the source storage to the destination storage. If the attribute already exist in the destination, the value will be updated. If a key do not exist in the source it will not be copy/created in the destination

code: static void CopyStorageAttributes ( const [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & SourceStorage, [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & DestinationStorage, const [TArray](API\Runtime\Core\Containers\TArray)< [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AttributeKeys )


description: Return true if the attribute key point on an existing attribute in the storage. Return false otherwise

code: bool ContainAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey ) const


description: Defrag the storage by using memmove on the attribute store after a hole in the storage.

code: void DefragInternal()


code: void ExtractFStringAttributeFromStorage ( const uint8 * StorageData, const [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, [FString](API\Runtime\Core\Containers\FString) & OutValue ) const


code: bool operator&61;&61; &40; const FAttributeAllocationInfo & Other &41; const


className: FAttributeAllocationInfo

description: Structure use to hold the attribute information store in the attribute allocation table.

code: struct FAttributeAllocationInfo

Hash

type: FGuid

description: 128 bit Attribute hash

Offset

description: The offset in the storage.

Property

type: EAttributePrope...

description: The attribute properties.

Size

description: The size of the data in the storage.

Type

type: EAttributeTypes

description: The real type of the attribute.


code: template<typename ArrayType> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GenericArrayGetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, ArrayType & OutValue ) const


description: Possible errors

code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, T & OutValue ) const


code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, T & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< T > ) const


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, TArray64< uint8 > & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< TArray64< uint8 > > ) const


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [TArray](API\Runtime\Core\Containers\TArray)< uint8 > > ) const


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, [FString](API\Runtime\Core\Containers\FString) & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FString](API\Runtime\Core\Containers\FString) > ) const


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, [FName](API\Runtime\Core\UObject\FName) & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FName](API\Runtime\Core\UObject\FName) > ) const


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) GetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) & OutValue, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) > ) const


description: Return an attribute handle for the specified attribute. This handle is compile type check and is use to Get and Set the attribute value type. The function will assert if the key is missing or the type doesnt match the specified template type.

code: template<typename T> [TAttributeHandle](API\Runtime\InterchangeCore\Types\FAttributeStorage\TAttributeHandle)< T > GetAttributeHandle ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey ) const


description: Return aFGuidbuild from theFSHA1of the specified attribute data. If the Attribute do not exist it return an empty FGUID

code: [FGuid](API\Runtime\Core\Misc\FGuid) GetAttributeHash ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey ) const


description: This function fill the OutGuid with the hash of the specified attribute. Return true if the attribute exist and the OutGuid was assign, return false otherwise without touching the OutGuid.

code: bool GetAttributeHash ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, [FGuid](API\Runtime\Core\Misc\FGuid) & OutGuid ) const


description: Return the attribute type if the key exist, return None if the key is missing

code: [EAttributeTypes](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeTypes) GetAttributeType ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey ) const


description: This function allow the user to retrieve the array of keys to iterate and do reflection on the storage content

code: void GetAttributeKeys ( [TArray](API\Runtime\Core\Containers\TArray)< [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) > & AttributeKeys ) const


code: float GetDefragRatio() const


code: static [FGuid](API\Runtime\Core\Misc\FGuid) GetValueHash ( const uint8 * Value, uint64 ValueSize )


description: the attribute are sorted by key when building theFSHA1data. The hash will be deterministic for the same data whatever the order we add the attributes.


description: Return the storage size of the value.

code: template<typename T> static uint64 GetValueSize ( const T & Value )


code: static uint64 GetValueSize ( const [FString](API\Runtime\Core\Containers\FString) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FString](API\Runtime\Core\Containers\FString) > )


code: template<typename T> static uint64 GetValueSize ( const T & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< T > )


code: static uint64 GetValueSize ( const [FName](API\Runtime\Core\UObject\FName) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FName](API\Runtime\Core\UObject\FName) > )


code: static uint64 GetValueSize ( const [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) > )


code: static uint64 GetValueSize ( const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [TArray](API\Runtime\Core\Containers\TArray)< uint8 > > )


code: static uint64 GetValueSize ( const TArray64< uint8 > & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< TArray64< uint8 > > )


description: Set a multisize(TArray,FString...) attribute value into the storage. Return success if the attribute was properly set.

code: template<typename MultiSizeType> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) MultiSizeSetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const MultiSizeType & Value, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< uint8 *()> GetValuePointer )


code: [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & operator= ( const [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & Other )


description: Reserve the allocation table and the storage data.

code: void Reserve ( int64 NewAttributeCount, int64 NewStorageSize )


description: Possible errors

code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) RegisterAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, const T & DefaultValue, [EAttributeProperty](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributePrope-) AttributeProperty )


code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const T & Value )


description: Possible errors

code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey, const T & Value )


code: template<typename T> [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const T & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< T > )


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [TArray](API\Runtime\Core\Containers\TArray)< uint8 > > )


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const TArray64< uint8 > & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< TArray64< uint8 > > )


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const [FString](API\Runtime\Core\Containers\FString) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FString](API\Runtime\Core\Containers\FString) > )


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const [FName](API\Runtime\Core\UObject\FName) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FName](API\Runtime\Core\UObject\FName) > )


code: const FAttributeKey & GetKey&40;&41; const


code: EAttributeStorageResult Get &40; T & Value &41; const


description: Set the defrag ratio. See the GetDefragRatio for the defrag documentation.

code: void SetDefragRatio ( const float InDefragRatio )


description: Return true if the storage contain a valid attribute key, false otherwise.

code: bool IsValid&40;&41; const


code: EAttributeStorageResult Set &40; const T & Value &41;


code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) SetAttribute ( [FAttributeAllocationInfo](API\Runtime\InterchangeCore\Types\FAttributeStorage\FAttributeAllocationInfo) * AttributeAllocationInfo, const [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) & Value, [TSpecializeType](API\Runtime\InterchangeCore\Types\TSpecializeType)< [FSoftObjectPath](API\Runtime\CoreUObject\UObject\FSoftObjectPath) > )


code: TAttributeHandle &40; const FAttributeKey & InKey, const FAttributeStorage &42; InAttributeStorage &41;


description: Class to Get/Set an attribute of the storage

code: template<typename T> class TAttributeHandle

AttributeStorage

type: FAttributeStora...

FAttributeStorage

type: friend

Key

type: FAttributeKey


description: Possible errors

code: [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) UnregisterAttribute ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & ElementAttributeKey )


code: FAttributeStorage ( const [FAttributeStorage](API\Runtime\InterchangeCore\Types\FAttributeStorage) & Other )


className: FAttributeStorage

description: The storage is multi thread safe, it use a mutex to lock the storage for every read/write operation. The hash of the storage is deterministic because it sort the attributes before calculating the hash.

code: class FAttributeStorage

AttributeAllocationTable

type: TMap<FAttribut...

description: The attribute allocation table is use to index the attributes into the storage.

AttributeStorage

type: TArray64< uint8...

description: The storage of the data point by the attribute allocation table

DefragRatio

type: float

FragmentedMemoryCost

description: The total size of the fragmented holes in the AttributeStorage (memory waste).

StorageMutex

type: FCriticalSectio...

description: Mutex use when accessing or modifying the storage


code: static constexpr [EAttributeTypes](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeTypes) GetType()


code: template<typename ValueType> static [FString](API\Runtime\Core\Containers\FString) ToString ( const ValueType & Value )


className: TAttributeTypeTraits

description: Complex types, such as structures and classes can be serialized into a byte array and then assigned to an attribute. Note that you will be responsible for ensuring correct byte ordering when serializing those types.

code: template<typename T, typename Enable> struct TAttributeTypeTraits


className: TAttributeTypeTraits< bool >::GetType

code: static constexpr EAttributeTypes GetType&40;&41;


className: TAttributeTypeTraits< bool >::ToString

code: static FString ToString &40; const bool & Value &41;


className: TAttributeTypeTraits< bool >

description: Implements variant type traits for the built-in bool type.

code: template<> struct TAttributeTypeTraits< bool >


className: TAttributeTypeTraits< double >::GetType


code: static FString ToString &40; const double & Value &41;


className: TAttributeTypeTraits< double >

description: Implements variant type traits for the built-in double type.

code: template<> struct TAttributeTypeTraits< double >


className: TAttributeTypeTraits< FBox2D >::GetType


code: static FString ToString &40; const FBox2D & Value &41;


className: TAttributeTypeTraits< FBox2D >

description: Implements variant type traits for the built-in Box2D type.

code: template<> struct TAttributeTypeTraits< FBox2D >


className: TAttributeTypeTraits< FBox2f >::GetType


code: static FString ToString &40; const FBox2f & Value &41;


className: TAttributeTypeTraits< FBox2f >

description: Implements variant type traits for the built-in Box2f type.

code: template<> struct TAttributeTypeTraits< FBox2f >


className: TAttributeTypeTraits< FBox3d >::GetType


code: static FString ToString &40; const FBox3d & Value &41;


className: TAttributeTypeTraits< FBox3d >

description: Implements variant type traits for the built-in Box3d type.

code: template<> struct TAttributeTypeTraits< FBox3d >


className: TAttributeTypeTraits< FBox3f >::GetType


code: static FString ToString &40; const FBox3f & Value &41;


className: TAttributeTypeTraits< FBox3f >

description: Implements variant type traits for the built-in Box3f type.

code: template<> struct TAttributeTypeTraits< FBox3f >


code: static FString ToString &40; const FBoxSphereBounds3d & Value &41;


description: Implements variant type traits for the built-in BoxSphereBounds3d type.

code: template<> struct TAttributeTypeTraits< FBoxSphereBounds3d >


code: static FString ToString &40; const FBoxSphereBounds3f & Value &41;


description: Implements variant type traits for the built-in BoxSphereBounds3f type.

code: template<> struct TAttributeTypeTraits< FBoxSphereBounds3f >


className: TAttributeTypeTraits< FColor >::GetType

code: static constexpr EAttributeTypes GetType&40;&41;


code: static FString ToString &40; const FColor & Value &41;


className: TAttributeTypeTraits< FColor >

description: Implements variant type traits for the built-inFColortype.

code: template<> struct TAttributeTypeTraits< FColor >


code: static FString ToString &40; const FDateTime & Value &41;


className: TAttributeTypeTraits< FDateTime >

description: Implements variant type traits for the built-inFDateTimetype.

code: template<> struct TAttributeTypeTraits< FDateTime >


code: static FString ToString &40; const FFloat16 & Value &41;


className: TAttributeTypeTraits< FFloat16 >

description: Implements variant type traits for the built-in Float16 type.

code: template<> struct TAttributeTypeTraits< FFloat16 >


code: static FString ToString &40; const FFrameNumber & Value &41;


className: TAttributeTypeTraits< FFrameNumber >

description: See FSphere3f/FSphere3d variant type traits for the built-in Sphere type. Implements variant type traits for the built-in FrameNumber type.

code: template<> struct TAttributeTypeTraits< FFrameNumber >


code: static FString ToString &40; const FFrameRate & Value &41;


className: TAttributeTypeTraits< FFrameRate >

description: Implements variant type traits for the built-in FrameRate type.

code: template<> struct TAttributeTypeTraits< FFrameRate >


className: TAttributeTypeTraits< FFrameTime >

description: Implements variant type traits for the built-in FrameTime type.

code: template<> struct TAttributeTypeTraits< FFrameTime >


className: TAttributeTypeTraits< FGuid >::GetType


className: TAttributeTypeTraits< FGuid >::ToString

code: static FString ToString &40; const FGuid & Value &41;


className: TAttributeTypeTraits< FGuid >

description: Implements variant type traits for the built-inFGuidtype.

code: template<> struct TAttributeTypeTraits< FGuid >


code: static FString ToString &40; const FIntPoint & Value &41;


className: TAttributeTypeTraits< FIntPoint >

description: See FVector4f/FVector4d variant type traits for the built-in FVector4 type. Implements variant type traits for the built-in Vector2DHalf type.

code: template<> struct TAttributeTypeTraits< FIntPoint >


code: static FString ToString &40; const FIntRect & Value &41;


className: TAttributeTypeTraits< FIntRect >

description: Implements variant type traits for the built-in FIntRect type.

code: template<> struct TAttributeTypeTraits< FIntRect >


code: static constexpr EAttributeTypes GetType&40;&41;


code: static FString ToString &40; const FIntVector & Value &41;


className: TAttributeTypeTraits< FIntVector >

description: Implements variant type traits for the built-in Vector2DHalf type.

code: template<> struct TAttributeTypeTraits< FIntVector >


code: static FString ToString &40; const FLinearColor & Value &41;


className: TAttributeTypeTraits< FLinearColor >

description: Implements variant type traits for the built-inFLinearColortype.

code: template<> struct TAttributeTypeTraits< FLinearColor >


className: TAttributeTypeTraits< float >::GetType


className: TAttributeTypeTraits< float >::ToString

code: static FString ToString &40; const float & Value &41;


className: TAttributeTypeTraits< float >

description: Implements variant type traits for the built-in float type.

code: template<> struct TAttributeTypeTraits< float >


code: static FString ToString &40; const FMatrix44d & Value &41;


className: TAttributeTypeTraits< FMatrix44d >

description: Implements variant type traits for the built-in Matrix44f type.

code: template<> struct TAttributeTypeTraits< FMatrix44d >


code: static FString ToString &40; const FMatrix44f & Value &41;


className: TAttributeTypeTraits< FMatrix44f >

code: template<> struct TAttributeTypeTraits< FMatrix44f >


className: TAttributeTypeTraits< FName >::GetType


className: TAttributeTypeTraits< FName >::ToString

code: static FString ToString &40; const FName & Value &41;


className: TAttributeTypeTraits< FName >

description: See FMatrix44f/FMatrix44d variant type traits for the built-in FMatrix type. Implements variant type traits for the built-inFNametype.

code: template<> struct TAttributeTypeTraits< FName >


code: static FString ToString &40; const FOrientedBox & Value &41;


className: TAttributeTypeTraits< FOrientedBox >

description: Implements variant type traits for the built-in OrientedBox type.

code: template<> struct TAttributeTypeTraits< FOrientedBox >


code: static FString ToString &40; const FPlane4d & Value &41;


className: TAttributeTypeTraits< FPlane4d >

description: Implements variant type traits for the built-in Plane4d type.

code: template<> struct TAttributeTypeTraits< FPlane4d >


code: static constexpr EAttributeTypes GetType&40;&41;


code: static FString ToString &40; const FPlane4f & Value &41;


className: TAttributeTypeTraits< FPlane4f >

description: Implements variant type traits for the built-in Plane4f type.

code: template<> struct TAttributeTypeTraits< FPlane4f >


code: static FString ToString &40; const FQuat4d & Value &41;


className: TAttributeTypeTraits< FQuat4d >

description: Implements variant type traits for the built-in Quat4d type.

code: template<> struct TAttributeTypeTraits< FQuat4d >


code: static FString ToString &40; const FQuat4f & Value &41;


className: TAttributeTypeTraits< FQuat4f >

description: Implements variant type traits for the built-in Quat4f type.

code: template<> struct TAttributeTypeTraits< FQuat4f >


code: static FString ToString &40; const FRandomStream & Value &41;


className: TAttributeTypeTraits< FRandomStream >

description: See FPlane4f/FPlane4d variant type traits for the built-in FPlane type. See FQuat4f/FQuat4d variant type traits for the built-in FQuat type. Implements variant type traits for the built-inFRandomStreamtype.

code: template<> struct TAttributeTypeTraits< FRandomStream >


className: TAttributeTypeTraits< FRotator3d >

description: Implements variant type traits for the built-in Rotator3d type.

code: template<> struct TAttributeTypeTraits< FRotator3d >


code: static FString ToString &40; const FRotator3d & Value &41;


className: TAttributeTypeTraits< FRotator3f >

description: Implements variant type traits for the built-in Rotator3f type.

code: template<> struct TAttributeTypeTraits< FRotator3f >


code: static FString ToString &40; const FRotator3f & Value &41;


code: static FString ToString &40; const FSoftObjectPath & Value &41;


code: static FString ToString &40; const FSphere3d & Value &41;


className: TAttributeTypeTraits< FSphere3d >

description: Implements variant type traits for the built-in Sphere3d type.

code: template<> struct TAttributeTypeTraits< FSphere3d >


code: static FString ToString &40; const FSphere3f & Value &41;


code: static constexpr EAttributeTypes GetType&40;&41;


className: TAttributeTypeTraits< FSphere3f >

description: Implements variant type traits for the built-in Sphere3f type.

code: template<> struct TAttributeTypeTraits< FSphere3f >


code: static FString ToString &40; const FString & Value &41;


className: TAttributeTypeTraits< FString >

description: See FRotator3f/FRotator3d variant type traits for the built-in FRotator type. Implements variant type traits for the built-inFStringtype.

code: template<> struct TAttributeTypeTraits< FString >


className: TAttributeTypeTraits< FSoftObjectPath >

description: Implements variant type traits for the built-in SoftObjectPath type.

code: template<> struct TAttributeTypeTraits< FSoftObjectPath >


code: static FString ToString &40; const FTimespan & Value &41;


className: TAttributeTypeTraits< FTimespan >

description: Implements variant type traits for the built-inFTimespantype.

code: template<> struct TAttributeTypeTraits< FTimespan >


code: static FString ToString &40; const FTransform3d & Value &41;


className: TAttributeTypeTraits< FTransform3d >

description: Implements variant type traits for the built-in Transform3d type.

code: template<> struct TAttributeTypeTraits< FTransform3d >


code: static FString ToString &40; const FTransform3f & Value &41;


className: TAttributeTypeTraits< FTransform3f >

code: template<> struct TAttributeTypeTraits< FTransform3f >


className: TAttributeTypeTraits< FTwoVectors >

description: See FTransform3f/FTransform3d variant type traits for the built-in FTransform type. Implements variant type traits for the built-inFTwoVectorstype.

code: template<> struct TAttributeTypeTraits< FTwoVectors >


code: static FString ToString &40; const FVector2D & Value &41;


code: static FString ToString &40; const FTwoVectors & Value &41;


code: static FString ToString &40; const FVector2DHalf & Value &41;


className: TAttributeTypeTraits< FVector2DHalf >

description: Implements variant type traits for the built-in Vector2DHalf type.

code: template<> struct TAttributeTypeTraits< FVector2DHalf >


code: static FString ToString &40; const FVector2f & Value &41;


className: TAttributeTypeTraits< FVector2D >

description: See FVector3f/FVector3d variant type traits for the built-in FVector type. Implements variant type traits for the built-in FVector2D type.

code: template<> struct TAttributeTypeTraits< FVector2D >


className: TAttributeTypeTraits< FVector2f >

description: Implements variant type traits for the built-in Vector2f type.

code: template<> struct TAttributeTypeTraits< FVector2f >


code: static constexpr EAttributeTypes GetType&40;&41;


code: static FString ToString &40; const FVector3d & Value &41;


className: TAttributeTypeTraits< FVector3d >

description: Implements variant type traits for the built-in Vector3d type.

code: template<> struct TAttributeTypeTraits< FVector3d >


code: static FString ToString &40; const FVector3f & Value &41;


className: TAttributeTypeTraits< FVector3f >

description: Implements variant type traits for the built-in Vector3f type.

code: template<> struct TAttributeTypeTraits< FVector3f >


code: static FString ToString &40; const FVector4d & Value &41;


className: TAttributeTypeTraits< FVector4d >

description: Implements variant type traits for the built-in Vector4d type.

code: template<> struct TAttributeTypeTraits< FVector4d >


code: static FString ToString &40; const FVector4f & Value &41;


className: TAttributeTypeTraits< FVector4f >

description: Implements variant type traits for the built-in Vector4f type.

code: template<> struct TAttributeTypeTraits< FVector4f >


className: TAttributeTypeTraits< int16 >::GetType


className: TAttributeTypeTraits< int16 >::ToString

code: static FString ToString &40; const int16 & Value &41;


className: TAttributeTypeTraits< int32 >::GetType


className: TAttributeTypeTraits< int16 >

description: Implements variant type traits for the built-in int16 type.

code: template<> struct TAttributeTypeTraits< int16 >


className: TAttributeTypeTraits< int32 >::ToString

code: static FString ToString &40; const int32 & Value &41;


className: TAttributeTypeTraits< int32 >

description: Implements variant type traits for the built-in int32 type.

code: template<> struct TAttributeTypeTraits< int32 >


className: TAttributeTypeTraits< int64 >::ToString

code: static FString ToString &40; const int64 & Value &41;


className: TAttributeTypeTraits< int64 >

description: Implements variant type traits for the built-in int64 type.

code: template<> struct TAttributeTypeTraits< int64 >


className: TAttributeTypeTraits< int64 >::GetType


className: TAttributeTypeTraits< int8 >::ToString

code: static FString ToString &40; const int8 & Value &41;


className: TAttributeTypeTraits< int8 >::GetType


className: TAttributeTypeTraits< int8 >

description: Implements variant type traits for the built-in int8 type.

code: template<> struct TAttributeTypeTraits< int8 >


className: TAttributeTypeTraits< uint16 >::GetType

code: static constexpr EAttributeTypes GetType&40;&41;


code: static FString ToString &40; const uint16 & Value &41;


className: TAttributeTypeTraits< uint32 >::GetType


code: static FString ToString &40; const uint32 & Value &41;


className: TAttributeTypeTraits< uint16 >

description: Implements variant type traits for the built-in uint16 type.

code: template<> struct TAttributeTypeTraits< uint16 >


className: TAttributeTypeTraits< uint32 >

description: Implements variant type traits for the built-in uint32 type.

code: template<> struct TAttributeTypeTraits< uint32 >


code: static FString ToString &40; const uint64 & Value &41;


className: TAttributeTypeTraits< uint64 >::GetType


className: TAttributeTypeTraits< uint64 >

description: Implements variant type traits for the built-in uint64 type.

code: template<> struct TAttributeTypeTraits< uint64 >


className: TAttributeTypeTraits< uint8 >::GetType


className: TAttributeTypeTraits< uint8 >::ToString

code: static FString ToString &40; const uint8 & Value &41;


className: TAttributeTypeTraits< uint8 >

description: Implements variant type traits for the built-in uint8 type.

code: template<> struct TAttributeTypeTraits< uint8 >


className: TSpecializeType

description: This is a helper class to specialize template function inside a class, it allow specialize template to not be static

code: template<typename T> struct TSpecializeType


className: TUnderlyingType

description: Wrapper around std::underlying_type to make sure we don't call it on non enum class types.

code: template<typename T, typename Enable> struct TUnderlyingType


description:
Helper function to determine if the storage result is success
true if result contain Operation_Success

code: namespace UE { namespace Interchange { bool UE::Interchange::IsAttributeStorageResultSuccess ( const [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) Result ) } }


code: namespace UE { namespace Interchange { template<typename ValueType> [FString](API\Runtime\Core\Containers\FString) UE::Interchange::AttributeValueToString ( const ValueType & Value ) } }


description: Enumerates the attribute properties. Those properties affect how the attribute are stored or what they are use for

code: namespace UE { namespace Interchange { enum EAttributeProperty { None = 0x0, NoHash = 0x1, } } }


description: Enum to return complete status of a storage operation It support success with additional information It support multiple errors

code: namespace UE { namespace Interchange { enum EAttributeStorageResult { None = 0x0, Operation_Success = 0x1, Operation_Error_WrongType = (0x1 << 20), Operation_Error_WrongSize = (0x1 << 21), Operation_Error_AttributeAllocationCorrupted = (0x1 << 22), Operation_Error_CannotFoundKey = (0x1 << 23), Operation_Error_CannotRemoveAttribute = (0x1 << 24), Operation_Error_CannotOverrideAttribute = (0x1 << 25), Operation_Error_InvalidStorage = (0x1 << 26), Operation_Error_InvalidMultiSizeValueData = (0x1 << 27), } } }


description: Enum to pass options when we add an attribute

code: namespace UE { namespace Interchange { enum EAttributeStorageAddOptions { None = 0x0, Option_Override = 0x1, } } }


description: Enumerates the built-in types that can be stored in instances ofFAttributeStorage. We cannot change the value of a type to make sure the serialization of old asset is always working

code: namespace UE { namespace Interchange { enum EAttributeTypes { None = 0, Bool = 1, ByteArray = 2, ByteArray64 = 3, Color = 4, DateTime = 5, Double = 6, Enum = 7, Float = 8, Guid = 9, Int8 = 10, Int16 = 11, Int32 = 12, Int64 = 13, IntRect = 14, LinearColor = 15, Name = 16, RandomStream = 17, String = 18, Timespan = 19, TwoVectors = 20, UInt8 = 21, UInt16 = 22, UInt32 = 23, UInt64 = 24, Vector2d = 25, IntPoint = 26, IntVector = 27, Vector2DHalf = 28, Float16 = 29, OrientedBox = 30, FrameNumber = 31, FrameRate = 32, FrameTime = 33, SoftObjectPath = 34, Matrix44f = 35, Matrix44d = 36, Plane4f = 37, Plane4d = 38, Quat4f = 39, Quat4d = 40, Rotator3f = 41, Rotator3d = 42, Transform3f = 43, Transform3d = 44, Vector3f = 45, Vector3d = 46, Vector2f = 47, Vector4f = 48, Vector4d = 49, Box2f = 50, Box2D = 51, Box3f = 52, Box3d = 53, BoxSphereBounds3f = 54, BoxSphereBounds3d = 55, Sphere3f = 56, Sphere3d = 57, Max = 58, } } }


code: namespace UE { namespace Interchange { uint32 UE::Interchange::GetTypeHash ( const [FAttributeKey](API\Runtime\InterchangeCore\Types\FAttributeKey) & AttributeKey ) } }


description: Helper function to interpret attribute property

code: namespace UE { namespace Interchange { bool UE::Interchange::HasAttributeProperty ( const [EAttributeProperty](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributePrope-) PropertyA, const [EAttributeProperty](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributePrope-) PropertyB ) } }


description:
Helper function to interpret storage result
true if the Result contain at least one of the RefResult flags

code: namespace UE { namespace Interchange { bool UE::Interchange::HasAttributeStorageResult ( const [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) Result, const [EAttributeStorageResult](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-) RefResult ) } }


description: Helper function to interpret storage add options

code: namespace UE { namespace Interchange { bool UE::Interchange::HasAttributeStorageAddOption ( const [EAttributeStorageAddOptions](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-_1) Options, const [EAttributeStorageAddOptions](API\Runtime\InterchangeCore\Types\UE__Interchange__EAttributeStora-_1) RefOptions ) } }