description:
Add a player mappable input config for Enhanced Input. This will make the tracking system aware of the actions and bindings that are used for XR motion controllers. Attaching input configs to the session can only be done once, so if multiple input configs need to be added only check AttachToSession for the last input config.
False if the input config can't be attached to the session, true otherwise

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Input|XRTracking") static PRAGMA_DISABLE_DEPRECATION_WARNINGSbool BeginXRSession ( class UPlayerMappableInputConfig * InputConfig )


module: OpenXRInput

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Input|XRTracking") static void EndXRSession()


code: UOpenXRInputFunctionLibrary ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: This alternate version of PostEditChange is called when properties inside structs are modified. The property that was actually modified is located at the tail of the list. The head of the list of theFStructPropertymember variable that contains the property that was modified.

code: virtual void PostEditChangeChainProperty ( struct [FPropertyChangedChainEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedChainEvent) & PropertyChangedEvent )


className: UOpenXRInputSettings

description: Implements the settings for the OpenXR Input plugin.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Input, defaultconfig) class UOpenXRInputSettings : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

MappableInputConfig

description: Set a mappable input config to allow OpenXR runtimes to remap the Enhanced Input actions.


code: UOpenXRInputSettings ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Set the output parameters to add an interaction profile to OpenXR Input

module: OpenXRMsftHandInteraction

code: virtual bool GetInteractionProfile ( XrInstance InInstance, [FString](API\Runtime\Core\Containers\FString) & OutKeyPrefix, XrPath & OutPath, bool & OutHasHaptics )


description: IOpenXRExtensionPlugin


description: Fill the array with extensions required by the plugin If false is returned the plugin and its extensions will be ignored

code: virtual bool GetRequiredExtensions ( [TArray](API\Runtime\Core\Containers\TArray)< const ANSICHAR * > & OutExtensions )


className: FOpenXRMsftHandInteraction

code: class FOpenXRMsftHandInteraction : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface), public [IOpenXRExtensionPlugin](API\Plugins\OpenXRHMD\IOpenXRExtensionPlugin)


description: IModuleInterface

code: virtual void StartupModule()


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

module: OpenXRViveTracker

code: static [IOpenXRViveTrackerModule](API\Plugins\OpenXRViveTracker\IOpenXRViveTrackerModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


description:
Returns the Input Device associated with this InputDeviceModule.
Shared pointer to the Input Device.


className: IOpenXRViveTrackerModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IOpenXRViveTrackerModule : public [IInputDeviceModule](API\Runtime\InputDevice\IInputDeviceModule)


className: EOptimusDataDomainType

module: OptimusCore

code: enum EOptimusDataDomainType { Dimensional = 0, Expression = 1, }


className: EOptimusDataTypeFlags

description: These flags are for indicating type behaviour

code: enum EOptimusDataTypeFlags { None = 0, IsStructType = 1 << 0, ShowElements = 1 << 1, }


className: EOptimusDataTypeUsageFlags

description: These flags govern how the data type can be used

code: enum EOptimusDataTypeUsageFlags { None = 0, Resource = 1 << 0, Variable = 1 << 1, AnimAttributes = 1 << 2, }


className: EOptimusDeformerStatus

code: enum EOptimusDeformerStatus { Compiled, CompiledWithWarnings, Modified, HasErrors, }


className: EOptimusDiagnosticLevel

code: enum EOptimusDiagnosticLevel { None, Info, Warning, Error, }


className: EOptimusGlobalNotifyType

code: enum EOptimusGlobalNotifyType { GraphAdded, GraphRemoved, GraphIndexChanged, GraphRenamed, ComponentBindingAdded, ComponentBindingRemoved, ComponentBindingIndexChanged, ComponentBindingRenamed, ComponentBindingSourceChanged, ResourceAdded, ResourceRemoved, ResourceIndexChanged, ResourceRenamed, ResourceTypeChanged, ResourceDomainChanged, VariableAdded, VariableRemoved, VariableIndexChanged, VariableRenamed, VariableTypeChanged, ConstantValueChanged, NodeTypeAdded, NodeTypeRemoved, DataTypeChanged, }


className: EOptimusGraphNotifyType

code: enum EOptimusGraphNotifyType { NodeAdded, NodeRemoved, NodeDisplayNameChanged, NodePositionChanged, NodeDiagnosticLevelChanged, LinkAdded, LinkRemoved, PinAdded, PinRemoved, PinMoved, PinValueChanged, PinRenamed, PinTypeChanged, PinDataDomainChanged, PinExpansionChanged, }


className: EOptimusNodeGraphType

description: The use type of a particular graph

code: enum EOptimusNodeGraphType { Setup, Update, ExternalTrigger, Function, SubGraph, Transient, }


className: EOptimusNodePinDirection

description: Specifies the storage type of the pin data

code: enum EOptimusNodePinDirection { Unknown, Input, Output, }


description: FIXME: The constructor is broken. It only needs a const ref.

code: FBinaryObjectReader ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Obj, const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & InBytes )


className: FBinaryObjectReader

description: A small helper class to enable binary reads on an archive, since the FObjectReader::Serialize(TArray& InBytes) constructor is protected

code: class FBinaryObjectReader : public [FObjectReader](API\Runtime\CoreUObject\Serialization\FObjectReader)


className: FBinaryObjectWriter

code: class FBinaryObjectWriter : public [FObjectWriter](API\Runtime\CoreUObject\Serialization\FObjectWriter)


code: FBinaryObjectWriter ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Obj, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & OutBytes )


description: Evaluate an expression directly and returns the result. If the expression is incorrectly formed, then the optional return value holds nothing.

code: [TOptional](API\Runtime\Core\IO\TOptional)< int32 > Evaluate ( FStringView InExpression ) const


className: EOperatorToken

code: enum EOperatorToken { Negate, Add, Subtract, Multiply, Divide, Modulo, Power, ParenOpen, ParenClose, }


description: Executes the given expression object

code: int32 Execute ( const [FExpressionObject](API\Plugins\OptimusCore\FExpressionObject) & InExpressionObject ) const


className: FToken

code: typedef [TVariant](API\Runtime\Core\Misc\TVariant)< EOperatorToken, [FName](API\Runtime\Core\UObject\FName), int32 > FToken


description: Parse an expression and either receive an error or a expression execution object that matches this evaluator.

code: [TVariant](API\Runtime\Core\Misc\TVariant)< [FExpressionObject](API\Plugins\OptimusCore\FExpressionObject), [FParseError](API\Plugins\OptimusCore\FParseError) > Parse ( FStringView InExpression ) const


description: Return existing constants and their values.

code: const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), int32 > & GetConstantValues() const


description: Update existing constant values. No new constants are added.

code: void UpdateConstantValues ( const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), int32 > & InConstants )


description: Verify an expression. Does not check for variable validity, only that the expression can be evaluated

code: [TOptional](API\Runtime\Core\IO\TOptional)< [FParseError](API\Plugins\OptimusCore\FParseError) > Verify ( FStringView InExpression ) const


code: FEngine ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) InParseFlags )


description: Initialize the engine with constants, making a copy of the value constant map.

code: FEngine ( const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), int32 > & InConstants, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) InParseFlags )


description: Initialize the engine with constants, taking ownership of the value constant map.

code: FEngine ( [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), int32 > && InConstants, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) InParseFlags )


className: EOperator

code: enum EOperator { Negate, Add, Subtract, Multiply, Divide, Modulo, Power, }


className: OpElement

code: typedef [TVariant](API\Runtime\Core\Misc\TVariant)< EOperator, [FName](API\Runtime\Core\UObject\FName), int32 > OpElement


className: FExpressionObject

code: struct FExpressionObject


code: FOptimusActionScope ( [UOptimusActionStack](API\Plugins\OptimusCore\UOptimusActionStack) & InActionStack, const [FString](API\Runtime\Core\Containers\FString) & InTitle )


className: FOptimusActionScope

code: class FOptimusActionScope


className: FDimensionInfo

code: struct FDimensionInfo

ContextName

type: FName

description: The data context for a given context level.

CountFunctionName

type: FString

description: The function to calls to get the item count for the data.


description: Singleton value read/write. The context name is implied as Optimus::ContextName::Singleton.

code: FOptimusCDIPinDefinition ( const [FName](API\Runtime\Core\UObject\FName) InPinName, const [FString](API\Runtime\Core\Containers\FString) InDataFunctionName )


code: FOptimusCDIPinDefinition ( const [FName](API\Runtime\Core\UObject\FName) InPinName, const [FString](API\Runtime\Core\Containers\FString) InDataFunctionName, const std::initializer_list< [FDimensionInfo](API\Plugins\OptimusCore\FOptimusCDIPinDefinition\FDimensionInfo) > InContexts )


description: A single level context lookup.

code: FOptimusCDIPinDefinition ( const [FName](API\Runtime\Core\UObject\FName) InPinName, const [FString](API\Runtime\Core\Containers\FString) InDataFunctionName, const [FName](API\Runtime\Core\UObject\FName) InContextName, const [FString](API\Runtime\Core\Containers\FString) InCountFunctionName )


code: FOptimusCDIPinDefinition ( const [FName](API\Runtime\Core\UObject\FName) InPinName, const [FString](API\Runtime\Core\Containers\FString) InDataFunctionName, const [FName](API\Runtime\Core\UObject\FName) InContextName, const int32 InMultiplier, const [FString](API\Runtime\Core\Containers\FString) InCountFunctionName )


className: FOptimusCDIPinDefinition

code: struct FOptimusCDIPinDefinition

DataDimensions

type: TArray<FDimens...

description: List of nested data contexts.

DataFunctionName

description: The name of the function that underlies the data access by the pin.

DomainMultiplier

description: For single-level domains, how many values per element of that dimension's range.

PinName

description: The name of the pin as seen by the user.


className: FOptimusCompileBegin

code: typedef TMulticastDelegate_OneParam< void, [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * > FOptimusCompileBegin


className: FOptimusCompileEnd

code: typedef TMulticastDelegate_OneParam< void, [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * > FOptimusCompileEnd


code: [FOptimusCompilerDiagnostic](API\Plugins\OptimusCore\FOptimusCompilerDiagnostic) & operator= ( const [FOptimusCompilerDiagnostic](API\Plugins\OptimusCore\FOptimusCompilerDiagnostic) & )


className: FOptimusCompilerDiagnostic

code: struct FOptimusCompilerDiagnostic

AbsoluteFilePath

description: Absolute path to file associated with this diagnostic.

ColumnEnd

description: Ending column (inclusive)

ColumnStart

description: Starting column (inclusive)

Level

type: EOptimusDiagnos...

description: The severity of the issue.

Line

description: Line location in source.

Message

type: FText

description: The actual diagnostic message.

Object

type: TWeakObjectPtr<...

description: UObjectassociated with this diagnostic.


code: FOptimusCompilerDiagnostic ( const [FOptimusCompilerDiagnostic](API\Plugins\OptimusCore\FOptimusCompilerDiagnostic) & )


className: FOptimusComputeGraphInfo

ComputeGraph

type: TObjectPtr< UOp...

GraphType

type: EOptimusNodeGra...


className: FOptimusConstantValueUpdate

code: typedef TMulticastDelegate_TwoParams< void, [FString](API\Runtime\Core\Containers\FString) const &, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > const & > FOptimusConstantValueUpdate


description: Create a data domain object from a serializable string generated by the above function.

code: static [FOptimusDataDomain](API\Plugins\OptimusCore\FOptimusDataDomain) FromString ( const [FString](API\Runtime\Core\Containers\FString) & InString )


description: A convenience function to compute element counts from a data domain based on execution domain element counts. Current limitation is that it will only return values for zero- or one-dimensional domains, or expressions. If an expression is invalid, or the dimension counts are greater than one, and empty array is returned.

code: [TOptional](API\Runtime\Core\IO\TOptional)< int32 > GetElementCount ( [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), int32 > InDomainCounts ) const


description: Convenience function to check if this data domain is a singleton

code: bool IsSingleton() const


code: bool operator== ( const [FOptimusDataDomain](API\Plugins\OptimusCore\FOptimusDataDomain) & InOtherDomain ) const


code: bool operator!= ( const [FOptimusDataDomain](API\Plugins\OptimusCore\FOptimusDataDomain) & InOtherDomain ) const


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


description: Convert the data domain to a text serializable string


code: FOptimusDataDomain ( [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > InDimensionNames )


code: FOptimusDataDomain ( [FString](API\Runtime\Core\Containers\FString) InExpression )


code: FOptimusDataDomain ( [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > InDimensionNames, int32 InMultiplier )


className: FOptimusDataDomain

description: The expression can take any execution domain, or none (e.g. "Vertex * 2 + 1", "Triangle * 2 + Vertex * 6", "1024"). If an expression is used, the domain is one-dimensional. As of now, expression domain comparison is done on the string level, such that "Vertex * 2" and "2 * Vertex" are not marked as compatible domains.

DimensionNames

type: TArray<FName>

description: The name of the context that this resource/kernel applies to.

Type

type: EOptimusDataDom...


description: Returns true if the data type can create aFPropertyobject to represent it.

code: bool CanCreateProperty() const


description: Convert anFPropertyvalue to a value compatible with the shader parameter data layout. The InValue parameter should point at the memory location governed by theFPropertyfor this data type, and OutConvertedValue is an array to store the bytes for the converted value. If the function failed, a nullptr is returned and the state of the OutConvertedValue is undefined. Upon success, the return value is a pointer to the value following the converted input value, and the converted output value array will have been grown to accommodate the newly converted value.

code: bool ConvertPropertyValueToShader ( [TArrayView](API\Runtime\Core\Containers\TArrayView)< const uint8 > InValue, [FShaderValueType::FValueView](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueType\FValueView) OutConvertedValue ) const


description: Create anFPropertywith the given scope and name, but only if the UsageFlags contains EOptimusDataTypeUsageFLags::Variable. Otherwise it returns a nullptr.

code: [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * CreateProperty ( [UStruct](API\Runtime\CoreUObject\UObject\UStruct) * InScope, [FName](API\Runtime\Core\UObject\FName) InName ) const


description: Returns the element size of each array typed shader struct member.

code: int32 GetArrayElementShaderValueSize ( int32 InArrayIndex ) const


description: Returns the offset from the beginning of shader type of each array typed shader struct member.

code: int32 GetArrayShaderValueOffset ( int32 InArrayIndex ) const


description: Returns the total number of array members (recursive) in the shader type.

code: int32 GetNumArrays() const


description: Return a value struct that can hold raw shader value of this type.


className: FOptimusDataType

bHasCustomPinColor

type: bool

CustomPinColor

type: FLinearColor

ShaderValueSize

description: Size of the shader value that can hold a value of this type.

ShaderValueType

type: FShaderValueTyp...

description: Shader value type that goes with this Optimus pin type.

TypeFlags

type: EOptimusDataTyp...


className: FOptimusDataTypeHandle

code: typedef [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< const [FOptimusDataType](API\Plugins\OptimusCore\FOptimusDataType) > FOptimusDataTypeHandle


code: const [FOptimusDataType](API\Plugins\OptimusCore\FOptimusDataType) * operator->() const


className: FOptimusDataTypeRef::operator bool

code: operator bool() const


code: bool operator!= ( const [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) & InOther ) const


code: bool operator== ( const [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) & InOther ) const


code: const [FOptimusDataType](API\Plugins\OptimusCore\FOptimusDataType) & operator*() const


code: void Set ( [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) InTypeHandle )


code: FOptimusDataTypeRef ( [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) InTypeHandle )


className: FOptimusDataTypeRef

description: A reference object for an Optimus data type to use in UObjects and other UStruct-like things

TypeObject

description: A weak pointer to the type object helps enforce asset dependency.


className: FArrayMetadata

code: struct FArrayMetadata


description: A helper function to return the array metadata.

code: [TArray](API\Runtime\Core\Containers\TArray)< [FArrayMetadata](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\FArrayMetadata) > FindArrayMetadata ( [FName](API\Runtime\Core\UObject\FName) InTypeName ) const


description: A helper function to return the corresponding animation attribute type.

code: [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * FindAttributeType ( [FName](API\Runtime\Core\UObject\FName) InTypeName ) const


description: A helper function to return a property create function. The function can be unbound and that should be checked prior to calling

code: [PropertyCreateFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyCreateFuncT) FindPropertyCreateFunc ( [FName](API\Runtime\Core\UObject\FName) InTypeName ) const


description: A helper function to return a property conversion function. The function can be unbound and that should be checked prior to calling

code: [PropertyValueConvertFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyValueConvertFuncT) FindPropertyValueConvertFunc ( [FName](API\Runtime\Core\UObject\FName) InTypeName ) const


description: Find the registered type associated with the given property's type. Returns an invalid handle if no registered type is associated.

code: [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) FindType ( const [FProperty](API\Runtime\CoreUObject\UObject\FProperty) & InProperty ) const


description: Find the registered type associated with the given field class. Returns an invalid handle if no registered type is associated.

code: [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) FindType ( const [FFieldClass](API\Runtime\CoreUObject\UObject\FFieldClass) & InFieldType ) const


description: Find the registered type associated with the given object class. Returns an invalid handle if no registered type is associated.

code: [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) FindType ( const [UClass](API\Runtime\CoreUObject\UObject\UClass) & InClassType ) const


description: Find the registered type with the given name. Returns an invalid handle if no registered type with that name exists.

code: [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) FindType ( [FName](API\Runtime\Core\UObject\FName) InTypeName ) const


description: Find a registered type from aFShaderValueTypeHandle. If multiple types are using the same shader value type, then the first one found in the registration order will be returned.

code: [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) FindType ( [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InValueType ) const


className: FOnDataTypeChanged

code: class FOnDataTypeChanged : public TBaseMulticastDelegate_OneParam< void, FName >


description: Get the singleton registry object

code: static [FOptimusDataTypeRegistry](API\Plugins\OptimusCore\FOptimusDataTypeRegistry) & Get()


description: Returns all registered types

code: [TArray](API\Runtime\Core\Containers\TArray)< [FOptimusDataTypeHandle](API\Plugins\OptimusCore\FOptimusDataTypeHandle) > GetAllTypes() const


className: PropertyCreateFuncT

code: typedef [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< [FProperty](API\Runtime\CoreUObject\UObject\FProperty) *([UStruct](API\Runtime\CoreUObject\UObject\UStruct) *InScope, [FName](API\Runtime\Core\UObject\FName) InName)> PropertyCreateFuncT


className: PropertyValueConvertFuncT

description: Defines a function that takes an array view on UE property data and converts it to a matching HLSL shader value data. It's expected that the input and output array views hold enough data to both read all property data for this type and write out shader values matching these data.

code: typedef [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< bool([TArrayView](API\Runtime\Core\Containers\TArrayView)< const uint8 > InRawValue, [FShaderValueType::FValueView](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueType\FValueView) OutShaderValue)> PropertyValueConvertFuncT


description: Refresh struct type info in case a user defined struct is changed.

code: void RefreshStructType ( [UUserDefinedStruct](API\Runtime\Engine\Engine\UUserDefinedStruct) * InStructType )


description: Call during module init to register all known built-in types

code: static void RegisterBuiltinTypes()


description: Call during module init to register asset registry callbacks for struct type registration

code: static void RegisterEngineCallbacks()


description: Register a complex type that has corresponding types on both the UE and HLSL side.

code: bool RegisterStructType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType )


description: Register a complex type that has only has correspondence on the UE side.

code: bool RegisterType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


code: bool RegisterType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, bool bInShowElements, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


code: bool RegisterType ( [UClass](API\Runtime\CoreUObject\UObject\UClass) * InClassType, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


code: bool RegisterType &40; FName InTypeName, TFunction< void(FOptimusDataType &)> InFillFunc, PropertyCreateFuncT InPropertyCreateFunc, PropertyValueConvertFuncT InPropertyValueConvertFunc, TArray< FArrayMetadata > InArrayMetadata &41;


code: bool RegisterType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, bool bInShowElements, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


description: Register a complex type that has corresponding types on both the UE and HLSL side that requires a custom conversion function

code: bool RegisterType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [PropertyValueConvertFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyValueConvertFuncT) InPropertyValueConvertFunc, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, bool bInShowElements, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


code: bool RegisterType ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStructType, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [PropertyValueConvertFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyValueConvertFuncT) InPropertyValueConvertFunc, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, bool bInShowElements, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


description: Register a type that only has correspondence on the HLSL side. Presence of the EOptimusDataTypeFlags::UseInVariable results in an error.

code: bool RegisterType ( [FName](API\Runtime\Core\UObject\FName) InTypeName, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [FName](API\Runtime\Core\UObject\FName) InPinCategory, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InPinSubCategory, [FLinearColor](API\Runtime\Core\Math\FLinearColor) InPinColor, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


description: Register a POD type that has corresponding types on both the UE and HLSL side.

code: bool RegisterType ( const [FFieldClass](API\Runtime\CoreUObject\UObject\FFieldClass) & InFieldType, const [FText](API\Runtime\Core\Internationalization\FText) & InDisplayName, [FShaderValueTypeHandle](API\Plugins\ComputeFramework\ComputeFramework\FShaderValueTypeHandle) InShaderValueType, [PropertyCreateFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyCreateFuncT) InPropertyCreateFunc, [PropertyValueConvertFuncT](API\Plugins\OptimusCore\FOptimusDataTypeRegistry\PropertyValueConvertFuncT) InPropertyValueConvertFunc, [FName](API\Runtime\Core\UObject\FName) InPinCategory, [TOptional](API\Runtime\Core\IO\TOptional)< [FLinearColor](API\Runtime\Core\Math\FLinearColor) > InPinColor, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) InUsageFlags )


description: Call during module shutdown to release memory

code: static void UnregisterAllTypes()


description: Call during module shutdown to unregister asset registry callbacks

code: static void UnregisterEngineCallbacks()


description: Unregister a type.

code: void UnregisterType ( [FName](API\Runtime\Core\UObject\FName) InTypeName )


description: Get the component on an actor that matches the stored component name.

code: [TSoftObjectPtr](API\Runtime\CoreUObject\UObject\TSoftObjectPtr)< [UActorComponent](API\Runtime\Engine\Components\UActorComponent) > GetActorComponent ( [AActor](API\Runtime\Engine\GameFramework\AActor) const * InActor ) const


className: FOptimusDataTypeRegistry

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

code: class FOptimusDataTypeRegistry


code: static [TSoftObjectPtr](API\Runtime\CoreUObject\UObject\TSoftObjectPtr)< [UActorComponent](API\Runtime\Engine\Components\UActorComponent) > GetActorComponent ( [AActor](API\Runtime\Engine\GameFramework\AActor) const * InActor, [FString](API\Runtime\Core\Containers\FString) const & InName )


description: Helpers to create ComponentName.

code: static bool GetSanitizedComponentName ( [FString](API\Runtime\Core\Containers\FString) & InOutName )


description: Helpers to create ComponentName.

code: static [FName](API\Runtime\Core\UObject\FName) GetSanitizedComponentName ( [FName](API\Runtime\Core\UObject\FName) InName )


description: Helpers to create ComponentName.

code: static [FName](API\Runtime\Core\UObject\FName) GetSanitizedComponentName ( [UActorComponent](API\Runtime\Engine\Components\UActorComponent) const * InComponent )


description: Defines a binding between a component provider in the graph and an actor component in the component hierarchy on the actor whose deformable component we're bound to.

ComponentName

description: Component name to bind. This should be sanitized before storage.

ProviderName

description: Binding name on deformer graph.


code: FOptimusDeformerInstanceExecInfo()


className: FOptimusDeformerInstanceExecInfo

description: Structure with cached state for a single compute graph.

ComputeGraph

type: TObjectPtr<UCo...

description: The ComputeGraph asset.

ComputeGraphInstance

type: FComputeGraphIn...

description: The cached state for the ComputeGraph.

GraphName

description: The name of the graph

GraphType

description: The graph type.


code: FOptimusExecutionDomain ( [FName](API\Runtime\Core\UObject\FName) InExecutionDomainName )


className: FOptimusExecutionDomain

description: A struct to hold onto a single-level domain for controlling a kernel's execution domain. The reason it's in a struct is so that we can apply a property panel customization for it to make it easier to select from a pre-defined list of execution domains.

Name

description: The name of the execution domain that this kernel operates on.


className: FOptimusGlobalNotifyDelegate

description: A delegate for subscribing / reacting to Optimus global notifications.

code: typedef TMulticastDelegate_TwoParams< void, [EOptimusGlobalNotifyType](API\Plugins\OptimusCore\EOptimusGlobalNotifyType), [UObject](API\Runtime\CoreUObject\UObject\UObject) * > FOptimusGlobalNotifyDelegate


className: FOptimusGraphCompileMessageDelegate

code: typedef TMulticastDelegate_OneParam< void, [FOptimusCompilerDiagnostic](API\Plugins\OptimusCore\FOptimusCompilerDiagnostic) const & > FOptimusGraphCompileMessageDelegate


className: FOptimusGraphNotifyDelegate

description: A delegate for subscribing / reacting to Optimus graph local notifications.

code: typedef TMulticastDelegate_ThreeParams< void, [EOptimusGraphNotifyType](API\Plugins\OptimusCore\EOptimusGraphNotifyType), [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) *, [UObject](API\Runtime\CoreUObject\UObject\UObject) * > FOptimusGraphNotifyDelegate


className: GUID

description: The GUID for this custom version number.

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


className: Type

code: enum Type { InitialVersion, SwitchToMeshDeformerBase, ReparentResourcesAndVariables, SwitchToParameterBindingArrayStruct, AddBindingsToGraph, ComponentProviderSupport, SetPrimaryBindingName, DataDomainExpansion, KernelDataInterface, VersionPlusOne, LatestVersion = VersionPlusOne - 1, }


description: Not instantiable.

code: FOptimusObjectVersion()


className: FOptimusObjectVersion

code: struct FOptimusObjectVersion


description: Returns true if the binding is valid and has defined entries

code: bool IsValid() const


className: FOptimusParameterBinding

DataDomain

type: FOptimusDataDom...

DataType

type: FOptimusDataTyp...

type: FOptimusValidat...


code: template<typename Predicate> const [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) * FindByPredicate ( Predicate Pred ) const


code: bool IsValidIndex ( int32 Index ) const


code: [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) & Last ( int32 IndexFromTheEnd )


code: const [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) & Last ( int32 IndexFromTheEnd ) const


code: [FOptimusParameterBindingArray](API\Plugins\OptimusCore\FOptimusParameterBindingArray) & operator= ( const [TArray](API\Runtime\Core\Containers\TArray)< [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) > & Rhs )


code: const [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) & operator[] ( int32 InIndex ) const


code: [FOptimusParameterBinding](API\Plugins\OptimusCore\FOptimusParameterBinding) & operator[] ( int32 InIndex )


className: FOptimusParameterBindingArray

InnerArray

type: TArray<FOptimu...


description: Get or allocate buffers for the given resource If the buffer already exists but has different sizing characteristics the allocation fails. The number of buffers will equal the size of the InElementCount array. But if the allocation fails, the returned array will be empty.

code: void GetResourceBuffers ( [FRDGBuilder](API\Runtime\RenderCore\FRDGBuilder) & GraphBuilder, [FName](API\Runtime\Core\UObject\FName) InResourceName, int32 InLODIndex, int32 InElementStride, int32 InRawStride, [TArray](API\Runtime\Core\Containers\TArray)< int32 > const & InElementCounts, [TArray](API\Runtime\Core\Containers\TArray)< [FRDGBuffer](API\Runtime\RenderCore\FRDGBuffer) * > & OutBuffers )


description: Releaseallresources allocated by this pool

code: void ReleaseResources()


className: FOptimusPersistentBufferPool

code: class FOptimusPersistentBufferPool


className: FOptimusPinTraversalContext

description: The context used for doing the pin traversal using theIOptimusNodePinRouterinterface. This structure keeps track of where the traversal arrived from, so that we can exit at the same point. This is required because for functions, multiple reference nodes can refer to the same graph, including the same entry/return nodes.

code: struct FOptimusPinTraversalContext

ReferenceNesting

type: TArray< constI...


code: bool operator== ( [FOptimusRoutedConstNode](API\Plugins\OptimusCore\FOptimusRoutedConstNode) const & RHS ) const


className: FOptimusRoutedConstNode

code: struct FOptimusRoutedConstNode

Node

type: constUOptimusN...

TraversalContext

type: FOptimusPinTrav...


code: bool operator== ( [FOptimusRoutedConstNodePin](API\Plugins\OptimusCore\FOptimusRoutedConstNodePin) const & RHS ) const


className: FOptimusRoutedConstNodePin

code: struct FOptimusRoutedConstNodePin


code: bool operator== ( [FOptimusRoutedNode](API\Plugins\OptimusCore\FOptimusRoutedNode) const & RHS ) const


className: FOptimusRoutedNode

description: A utility struct for when traversing the graph through routed nodes.

code: struct FOptimusRoutedNode

Node

type: UOptimusNode&#...


code: bool operator== ( [FOptimusRoutedNodePin](API\Plugins\OptimusCore\FOptimusRoutedNodePin) const & RHS ) const


className: FOptimusRoutedNodePin

description: A utility structure to store information on routed pins when getting routed connections. The traversal context can be subsequently passed into the GetConnectedPinsWithRouting for the pin given in the struct to ensure that the traversal behaves correctly when going through library functions.

code: struct FOptimusRoutedNodePin

NodePin

type: UOptimusNodePin...


className: FOptimusSetAllInstancesCanbeActive

code: typedef TMulticastDelegate_OneParam< void, bool > FOptimusSetAllInstancesCanbeActive


className: FOptimusShaderText

Declarations

type: FString


className: FOptimusPersistentBufferPoolPtr


description: Our default validation function. Returns true if InName is valid.

code: static bool IsValid ( [FString](API\Runtime\Core\Containers\FString) const & InName, [FText](API\Runtime\Core\Internationalization\FText) * OutReason, [FText](API\Runtime\Core\Internationalization\FText) const * InErrorCtx )


className: FOptimusValidatedName::operator FName

description: Functions for compatibility with clients expecting a simpleFName.

code: operator FName() const


code: [FOptimusValidatedName](API\Plugins\OptimusCore\FOptimusValidatedName) & operator= ( [FName](API\Runtime\Core\UObject\FName) const & RHS )


code: bool operator== ( [FName](API\Runtime\Core\UObject\FName) const & RHS ) const


code: bool operator!= ( [FName](API\Runtime\Core\UObject\FName) const & RHS ) const


description: Allow serialization from a legacyFNameorFString. Makes it easy to convertFName-> FOptimusValidateName.

code: bool SerializeFromMismatchedTag ( const [FPropertyTag](API\Runtime\CoreUObject\UObject\FPropertyTag) & Tag, [FStructuredArchive::FSlot](API\Runtime\Core\Serialization\FStructuredArchive\FSlot) Slot )


className: FOptimusValidatedName

description: Structure containing aFNamethat has been validated for use as a variable or function name in HLSL code. When using this as a UPROPERTY, the UI will use a property customization that validates text entry.

Name

type: FName


code: FOptimusVariableMetaDataEntry()


code: FOptimusVariableMetaDataEntry ( [FName](API\Runtime\Core\UObject\FName) InKey, [FString](API\Runtime\Core\Containers\FString) && InValue )


className: FOptimusVariableMetaDataEntry

Key

description: Name of metadata key

Value

description: Name of metadata value


code: typedef [TVariant](API\Runtime\Core\Misc\TVariant)< [UOptimusKernelSource](API\Plugins\OptimusCore\UOptimusKernelSource) *, [FText](API\Runtime\Core\Internationalization\FText) > FOptimus_ComputeKernelResult


description: Maps the data interface's data binding index to the function we would like to have present during kernel compilation to read/write values from/to that data interface's resource.

code: struct FOptimus_InterfaceBinding

ComponentBinding

type: constUOptimusC...

DataInterface

type: constUComputeD...


code: typedef [TMap](API\Runtime\Core\Containers\TMap)< int32, [FOptimus_InterfaceBinding](API\Plugins\OptimusCore\FOptimus_InterfaceBinding) > FOptimus_InterfaceBindingMap


code: typedef [TMap](API\Runtime\Core\Containers\TMap)< const [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) *, [UComputeDataInterface](API\Plugins\ComputeFramework\ComputeFramework\UComputeDataInterface) * > FOptimus_KernelNodeToKernelDataInterfaceMap


description: A map that goes from a value/variable node to a compute shader input parameter.

code: struct FOptimus_KernelParameterBinding

ParameterName

description: The name of the shader parameter

ValueNode

description: The node to retrieve the value from

ValueType

type: FShaderValueTyp...

description: The value type of the parameter


description: Maps from a data interface node to the data interface that it represents.

code: typedef [TMap](API\Runtime\Core\Containers\TMap)< const [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) *, [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) * > FOptimus_NodeToDataInterfaceMap


description: Maps from an output pin to the transient data interface, used to store intermediate results, that it represents.

code: typedef [TMap](API\Runtime\Core\Containers\TMap)< const [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) *, [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) * > FOptimus_PinToDataInterfaceMap


code: FParseError ( const int32 InColumn, [FString](API\Runtime\Core\Containers\FString) && InMessage )


className: FParseError

code: struct FParseError

Column

type: const int32

description: The column at which the error occurs. Zero-based.

Message

type: constFString

description: The human-readable parsing error


description: Returns the component binding for the node that this interface is implemented on

code: [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * GetComponentBinding() const


description: Return anUOptimusKernelSourceobject, from a compute kernel node state that implements this interface.

code: [FOptimus_ComputeKernelResult](API\Plugins\OptimusCore\FOptimus_ComputeKernelResult) CreateComputeKernel ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InKernelSourceOuter, const [FOptimusPinTraversalContext](API\Plugins\OptimusCore\FOptimusPinTraversalContext) & InTraversalContext, const [FOptimus_NodeToDataInterfaceMap](API\Plugins\OptimusCore\FOptimus_NodeToDataInterfaceMap) & InNodeDataInterfaceMap, const [FOptimus_PinToDataInterfaceMap](API\Plugins\OptimusCore\FOptimus_PinToDataInterfaceMap) & InLinkDataInterfaceMap, const [TArray](API\Runtime\Core\Containers\TArray)< const [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * > & InValueNodes, const [UComputeDataInterface](API\Plugins\ComputeFramework\ComputeFramework\UComputeDataInterface) * InGraphDataInterface, const [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InGraphDataComponentBinding, const [UComputeDataInterface](API\Plugins\ComputeFramework\ComputeFramework\UComputeDataInterface) * InKernelDataInterface, [FOptimus_InterfaceBindingMap](API\Plugins\OptimusCore\FOptimus_InterfaceBindingMap) & OutInputDataBindings, [FOptimus_InterfaceBindingMap](API\Plugins\OptimusCore\FOptimus_InterfaceBindingMap) & OutOutputDataBindings ) const


className: IOptimusComponentBindingProvider

code: class IOptimusComponentBindingProvider


description: Returns the execution domain that this kernel should iterate over


description: Each kernel may have its own data interface responsible for passing kernel related data to GPU

code: [UComputeDataInterface](API\Plugins\ComputeFramework\ComputeFramework\UComputeDataInterface) * GetKernelDataInterface ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InOuter ) const


description: Used for traversing up the graph to identify the component source of the compute kernel

code: const [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * GetPrimaryGroupPin() const


className: IOptimusComputeKernelProvider

description: Interface that provides a mechanism to identify and work with node graph owners.

code: class IOptimusComputeKernelProvider


description: Register a data interface after the OptimusCore module has loaded

code: template<typename T> bool RegisterDataInterfaceClass()


code: bool RegisterDataInterfaceClass ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) > InDataInterfaceClass )


className: IOptimusCoreModule

code: class IOptimusCoreModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Returns the component binding that this data interface is bound to (or nullptr if unbound)


description:
Returns the index on the data interface that this pin on the node represents. E.g. for input pins, this would represent a write function on the data interface (andnotthe proposed pin definitions). NOTE: Only valid for top-level pins.
The index of the function on the data interface that this top-level pin represents, or INDEX_NONE if it doesn't represent a function (or if the pin isn't top-level).

code: int32 GetDataFunctionIndexFromPin ( const [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InPin ) const


description: Returns the data interface class that should be generated from the node that implements this interface.

code: [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) * GetDataInterface ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InOuter ) const


className: IOptimusDataInterfaceProvider

code: class IOptimusDataInterfaceProvider


description: An interface that should be implemented by any legacy Data Interface Node whose data interface is an execution data interface. such that the serialized execution domain can be extracted and assigned to the kernel data interface


code: static [IOptimusDeveloperModule](API\Plugins\OptimusCore\IOptimusDeveloperModule) & Get()


className: IOptimusDeveloperModule

code: class IOptimusDeveloperModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Returns a list of execution domains that the implementer of this interface provides.

code: [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetExecutionDomains() const


className: IOptimusExecutionDomainProvider

description: An interface that should be implemented by any class that has anFOptimusExecutionDomainmember. This is used by the property detail specialization code to provide a list of possible domains.

code: class IOptimusExecutionDomainProvider


description: Returns the class whose CDO we can get to get this interface to create a new generated class from a string definition.


description: Export definition values for the given class which are sufficient to pass into a call to CreateClassFromCreationString to generate a class based on the class that hosts this interface.


description: Create a generated class, within the package provided, from the creation string that was originally generated by GetClassCreationString.

code: [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetClassFromCreationString ( [UPackage](API\Runtime\CoreUObject\UObject\UPackage) * InPackage, const TCHAR * InCreationString ) const


className: IOptimusGeneratedClassDefiner

description: FIXME: A stop-gap shader value provider until we have a proper pin evaluation that handles paths that have a constant, computed, varying and a mix thereof, results.

code: class IOptimusGeneratedClassDefiner


className: FAdderPinAction

code: struct FAdderPinAction

bCanAutoLink

type: bool

NewPinDirection

type: EOptimusNodePin...

ToolTip

type: FText


code: [TArray](API\Runtime\Core\Containers\TArray)< [FAdderPinAction](API\Plugins\OptimusCore\IOptimusNodeAdderPinProvider\FAdderPinAction) > GetAvailableAdderPinActions ( const [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InSourcePin, [EOptimusNodePinDirection](API\Plugins\OptimusCore\EOptimusNodePinDirection) InNewPinDirection, [FString](API\Runtime\Core\Containers\FString) * OutReason ) const


code: bool RemoveAddedPins ( TConstArrayView< [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * > InAddedPinsToRemove )


code: [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * > TryAddPinFromPin ( const [FAdderPinAction](API\Plugins\OptimusCore\IOptimusNodeAdderPinProvider\FAdderPinAction) & InSelectedAction, [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InSourcePin )


className: IOptimusNodeAdderPinProvider

description: Interface that provides a mechanism to add pins to node from existing pins

code: class IOptimusNodeAdderPinProvider


className: IOptimusNodeFunctionLibraryOwner

description: Interface that provides a mechanism to identify and work with node function library owners

code: class IOptimusNodeFunctionLibraryOwner


description:
Takes an existing graph and adds it to this graph collection. If the graph cannot be added, the object remains unchanged and this function returns false.
true if the graph was successfully added to the graph.

code: bool AddGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, int32 InInsertBefore )


description:
Create a new graph of a given type, with an optional name. The name may be changed to fit into the namespace. Only setup and trigger graphs can currently be created directly, and only a single setup graph. The setup graph is always the first, and the trigger graphs come after.
The newly created graph.

code: [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * CreateGraph ( [EOptimusNodeGraphType](API\Plugins\OptimusCore\EOptimusNodeGraphType) InType, [FName](API\Runtime\Core\UObject\FName) InName, [TOptional](API\Runtime\Core\IO\TOptional)< int32 > InInsertBefore )


description: Returns the collection that owns this collection, or nullptr if this is the root collection


description: Returns the path to this graph collection owner.


description: Returns root collection that owns all the collections

code: [IOptimusNodeGraphCollectionOwner](API\Plugins\OptimusCore\IOptimusNodeGraphCollectionOwner) * GetCollectionRoot() const


description: Returns all immediately owned node graphs.

code: const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * > & GetGraphs() const


description:
Only trigger graphs can be moved around.
true if the graph was successfully moved.

code: bool MoveGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, int32 InInsertBefore )


description:
Remove the given graph.
true if the graph was successfully removed.

code: bool RemoveGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, bool bDeleteGraph )


description:
Rename the given graph, subject to validation of the name.
true if the graph was successfully renamed.

code: bool RenameGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, const [FString](API\Runtime\Core\Containers\FString) & InNewName )


description:
Given a pin on this node, which can be a terminal node (entry/return), or a subgraph/ function reference node, return the pin matching it on the other side. E.g. if given an input pin on a terminal return node, return the output pin on the reference node in the graph above. If the pin isn't owned by this node, then a nullptr is returned.
The counterpart pin. If the pin given was invalid and has no counterpart, the NodePin value will be a nullptr and the traversal context undefined.

code: [FOptimusRoutedNodePin](API\Plugins\OptimusCore\FOptimusRoutedNodePin) GetPinCounterpart ( [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InNodePin, const [FOptimusPinTraversalContext](API\Plugins\OptimusCore\FOptimusPinTraversalContext) & InTraversalContext ) const


className: IOptimusNodeGraphCollectionOwner

description: Interface that provides a mechanism to identify and work with node graph owners.

code: class IOptimusNodeGraphCollectionOwner


className: IOptimusNodePinRouter

code: class IOptimusNodePinRouter


code: [FString](API\Runtime\Core\Containers\FString) GetBindingDeclaration ( [FName](API\Runtime\Core\UObject\FName) BindingName ) const


className: IOptimusParameterBindingProvider

description: Interface that provides a mechanism to query information about parameter bindings

code: class IOptimusParameterBindingProvider


description:
Takes a collection path string and attempts to resolve it to a specific graph collection.
The node graph found from this path, or nullptr if nothing was found.

code: [IOptimusNodeGraphCollectionOwner](API\Plugins\OptimusCore\IOptimusNodeGraphCollectionOwner) * ResolveCollectionPath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


code: [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * ResolveComponentBinding ( [FName](API\Runtime\Core\UObject\FName) InBindingName ) const


description:
Takes a graph path string and attempts to resolve it to a specific graph
The node graph found from this path, or nullptr if nothing was found.

code: [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * ResolveGraphPath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


description:
Takes a node path string and attempts to resolve it to a specific node
The node found from this path, or nullptr if nothing was found.

code: [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * ResolveNodePath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


description:
Takes a dot-separated path string and attempts to resolve it to a specific pin on a node.
The node found from this path, or nullptr if nothing was found.

code: [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * ResolvePinPath ( const [FString](API\Runtime\Core\Containers\FString) & InPinPath )


code: [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * ResolveVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName ) const


code: [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * ResolveResource ( [FName](API\Runtime\Core\UObject\FName) InResourceName ) const


className: IOptimusPathResolver

code: class IOptimusPathResolver


description: Get test for declaration pane.


description: Get title for text editor tab.


description: Get shader text for editor pane.


className: IOptimusShaderTextProvider

description: Interface for shader text edit widgets including the gathering of compilation diagnostics for display.

code: class IOptimusShaderTextProvider


description: Set shader text after edit modifications.

code: void SetShaderText ( const [FString](API\Runtime\Core\Containers\FString) & NewText )


description: Returns the stored value as a shader-compatible value.


description: Returns the value name.


description: Returns the value type.


className: IOptimusValueProvider

description: FIXME: A stop-gap shader value provider until we have a proper pin evaluation that handles paths that have a constant, computed, varying and a mix thereof, results.

code: class IOptimusValueProvider


className: IsValid

description: Returns true if the binding is valid and has defined entries

code: bool IsValid() const


code: namespace Optimus { FMatrix44f Optimus::ConvertFTransformToFMatrix44f ( const FTransform & InTransform ) }


description: Helpers to convertUObjectpath to a virtual shader paths.

code: namespace Optimus { void Optimus::ConvertObjectPathToShaderFilePath ( [FString](API\Runtime\Core\Containers\FString) & InOutPath ) }


description: Helpers to convert a virtual shader path back to aUObjectpath. Returns false if the virtual shader path wasn't recognized as aUObjectpath.

code: namespace Optimus { bool Optimus::ConvertShaderFilePathToObjectPath ( [FString](API\Runtime\Core\Containers\FString) & InOutPath ) }


description: Constants that begin with a number, include spaces or any of the above operands/parentheses are allowed, but must be then enclosed in single quotes when referenced. E.g: 'foo(1)' * 2 rather than: foo (1) * 2

code: namespace Optimus { namespace Expression { enum EParseFlags { Default = 0, ValidateConstants = 1 << 0, } } }


code: namespace Optimus { namespace Expression { [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Optimus::Expression::operator|= ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Optimus::Expression::operator&= ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Optimus::Expression::operator^= ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) & Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { constexpr [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Optimus::Expression::operator| ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { constexpr [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Optimus::Expression::operator& ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { constexpr [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Optimus::Expression::operator^ ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Lhs, [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Rhs ) } }


code: namespace Optimus { namespace Expression { constexpr bool Optimus::Expression::operator! ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) E ) } }


code: namespace Optimus { namespace Expression { constexpr [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) Optimus::Expression::operator~ ( [EParseFlags](API\Plugins\OptimusCore\Optimus__Expression__EParseFlags) E ) } }


description: Attempts to find an object, first within a specific package, if the dot prefix points to a known package, otherwise fall back to searching globally.

code: namespace Optimus { template<typename T> T * Optimus::FindObjectInPackageOrGlobal ( const [FString](API\Runtime\Core\Containers\FString) & InObjectPath ) }


description: Our generated classes are parented to the package, this is a utility function to collect them

code: namespace Optimus { [TArray](API\Runtime\Core\Containers\TArray)< [UClass](API\Runtime\CoreUObject\UObject\UClass) * > Optimus::GetClassObjectsInPackage ( [UPackage](API\Runtime\CoreUObject\UObject\UPackage) * InPackage ) }


code: namespace Optimus { [FString](API\Runtime\Core\Containers\FString) Optimus::FormatDimensionNames ( const [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & InNames ) }


description: Helper function to remove guids from member property names for user defined structs

code: namespace Optimus { [FName](API\Runtime\Core\UObject\FName) Optimus::GetMemberPropertyShaderName ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStruct, const [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * InMemberProperty ) }


code: namespace Optimus { [FName](API\Runtime\Core\UObject\FName) Optimus::GetSanitizedNameForHlsl ( [FName](API\Runtime\Core\UObject\FName) InName ) }


description: Return the display name for the struct to be shown in type pickers

code: namespace Optimus { [FText](API\Runtime\Core\Internationalization\FText) Optimus::GetTypeDisplayName ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStruct ) }


description: Return the unique type name for registry and kernel code generation if the bInShouldGetUniqueNameForUserDefinedStruct = true Otherise, it returns the friendly name for user-facing shader text display

code: namespace Optimus { [FName](API\Runtime\Core\UObject\FName) Optimus::GetTypeName ( [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * InStruct, bool bInShouldGetUniqueNameForUserDefinedStruct ) }


description: Given an object scope, ensure that the given name is unique within that scope. If the name is already unique, it will be returned unchanged.

code: namespace Optimus { [FName](API\Runtime\Core\UObject\FName) Optimus::GetUniqueNameForScope ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InScopeObj, [FName](API\Runtime\Core\UObject\FName) InName ) }


code: namespace Optimus { static bool Optimus::IsExecutionGraphType ( [EOptimusNodeGraphType](API\Plugins\OptimusCore\EOptimusNodeGraphType) InGraphType ) }


description: Use this function to remove objects during postload safely

code: namespace Optimus { void Optimus::RemoveObject ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObjectToRemove ) }


className: operator&

code: constexpr [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) operator& ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Lhs, [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Rhs )


code: constexpr [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) operator& ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Lhs, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Rhs )


code: namespace Optimus { bool Optimus::RenameObject ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObjectToRename, const TCHAR * InNewName, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InNewOuter ) }


className: operator&=

code: [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) & operator&= ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) & Lhs, [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Rhs )


code: [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) & operator&= ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) & Lhs, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Rhs )


className: operator~

code: constexpr [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) operator~ ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) E )


code: constexpr [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) operator~ ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) E )


className: operator^

code: constexpr [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) operator^ ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Lhs, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Rhs )


code: constexpr [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) operator^ ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Lhs, [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Rhs )


className: operator^=

code: [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) & operator^= ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) & Lhs, [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) Rhs )


code: [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) & operator^= ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) & Lhs, [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) Rhs )


className: operator!

code: constexpr bool operator! ( [EOptimusDataTypeUsageFlags](API\Plugins\OptimusCore\EOptimusDataTypeUsageFlags) E )


code: constexpr bool operator! ( [EOptimusDataTypeFlags](API\Plugins\OptimusCore\EOptimusDataTypeFlags) E )


className: WithIdenticalViaEquality

code: enum &123; WithIdenticalViaEquality = true &125;


code: template<> struct TStructOpsTypeTraits< FOptimusDataDomain > : public [TStructOpsTypeTraitsBase2< FOptimusDataDomain >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


className: WithPostSerialize

code: enum &123; WithPostSerialize = true &125;


code: template<> struct TStructOpsTypeTraits< FOptimusDataTypeRef > : public [TStructOpsTypeTraitsBase2< FOptimusDataTypeRef >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: enum &123; WithStructuredSerializeFromMismatchedTag = true &125;


code: template<> struct TStructOpsTypeTraits< FOptimusValidatedName > : public [TStructOpsTypeTraitsBase2< FOptimusValidatedName >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


description: Close the current action scope. Once all action scopes are closed, the collected actions are finally run in the order they got added.

code: bool CloseActionScope()


code: [IOptimusPathResolver](API\Plugins\OptimusCore\IOptimusPathResolver) * GetGraphCollectionRoot() const


description: Open a new action scope. All subsequent calls to RunAction will add actions to the scope but they won't be run until the last action scope is closed.

code: void OpenActionScope ( const [FString](API\Runtime\Core\Containers\FString) & InTitle )


description: Unlike PostEditUndo (which is called for any object in the transaction), this is only called on objects that are actually changed by the transaction.

code: virtual void PostTransacted ( const [FTransactionObjectEvent](API\Runtime\CoreUObject\Misc\FTransactionObjectEvent) & TransactionEvent )


description: Run a heap-constructed action created with operator new. The action stack takes ownership of the pointer. If the function fails the pointer is no longer valid.

code: bool RunAction ( FOptimusAction * InAction )


code: bool RunAction &40; TSharedPtr< FOptimusAction > InAction &41;


code: void SetTransactionScopeFunctions ( [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< int32([UObject](API\Runtime\CoreUObject\UObject\UObject) *TransactObject, const [FString](API\Runtime\Core\Containers\FString) &Title)> InBeginScopeFunc, [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< void(int32 InTransactionId)> InEndScopeFunc )


code: template<typename T, typename... ArgsType> [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< [TPointerIsConvertibleFromTo](API\Runtime\Core\Templates\TPointerIsConvertibleFromTo_1)< T, FOptimusAction >::Value, bool >::Type RunAction ( ArgsType &&... Args )


className: UOptimusActionStack

description: Base action class.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UOptimusActionStack : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


className: UOptimusComponentBindingProvider

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


description: Returns all registered component source objects

code: static [TArray](API\Runtime\Core\Containers\TArray)< const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * > GetAllSources()


description: Returns a suggested name for the binding. The name may be modified to preserve uniqueness.

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


description: Returns the actor component that this provider can operate on

code: virtual [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UActorComponent](API\Runtime\Engine\Components\UActorComponent) > GetComponentClass() const


description: Returns the total number of thread invocations a component requires in case of non-unified dispatch.

code: virtual uint32 GetDefaultNumInvocations ( const [UActorComponent](API\Runtime\Engine\Components\UActorComponent) * InComponent, int32 InLod ) const


description: For a given execution domain, and component LOD index, return the range of the domain as given by the component that is associated with this source.

code: virtual bool GetComponentElementCountsForExecutionDomain ( [FName](API\Runtime\Core\UObject\FName) InDomainName, const [UActorComponent](API\Runtime\Engine\Components\UActorComponent) * InComponent, int32 InLodIndex, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutInvocationElementCounts ) const


description: Returns the component display name to show in the lister. Should be unique.

code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDisplayName() const


description: Returns the available execution contexts. The first context is a preferred context when setting initial data domain for a resource.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetExecutionDomains() const


description: Returns the current LOD index associated with a component associated with this source.

code: virtual int32 GetLodIndex ( const [UActorComponent](API\Runtime\Engine\Components\UActorComponent) * InComponent ) const


description: Returns a component source that matches a data interface, or nullptr if nothing does

code: static const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * GetSourceFromDataInterface ( const [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) * InDataInterface )


description: Returns true if the source can be used by primary bindings.

code: virtual bool IsUsableAsPrimarySource() const


className: UOptimusComponentSource

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class UOptimusComponentSource : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Get the index of this binding within its container

code: int32 GetIndex() const


description: Returns the owning deformer to operate on this variable

code: [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * GetOwningDeformer() const


code: const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * GetComponentSource() const


code: bool IsPrimaryBinding() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after applying a transaction to the object. Default implementation simply calls PostEditChange.

code: virtual void PostEditUndo()


description: Called before applying a transaction to the object. Default implementation simply calls PreEditChange.

code: virtual void PreEditUndo()


className: PrimaryBindingName

code: static const [FName](API\Runtime\Core\UObject\FName) PrimaryBindingName;


className: UOptimusComponentSourceBinding

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UOptimusComponentSourceBinding : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

BindingName

description: The name to give the binding, to disambiguate it from other bindings of same component type.

ComponentTags

type: TArray<FName>

description: Component tags to automatically bind this component binding to.

ComponentType

type: TSubclassOf<UO...

description: The component type that this binding applies to


className: DataInterfaces

code: static DataInterfaces;


className: UOptimusComponentSourceBindingContainer

description: A container class that owns component source bindings. This is used to ensure we don't end up with a namespace clash between graphs, variables, bindings and resources.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UOptimusComponentSourceBindingContainer : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Bindings

type: TArray<TObject...


className: ExecutionDataInterfaces

code: static ExecutionDataInterfaces;


className: OutputDataInterfaces

code: static OutputDataInterfaces;


className: CategoryName

code: struct CategoryName


description: Returns all known UOptimusComputeDataInterface-derived classes.

code: static [TArray](API\Runtime\Core\Containers\TArray)< [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UOptimusComputeDataInterface](API\Plugins\OptimusCore\UOptimusComputeDataInterface) > > GetAllComputeDataInterfaceClasses()


description: Returns the category for the node.

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


description: Returns the name to show on the node that will proxy this interface in the graph view.

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


description: Returns the list of pins that will map to the shader functions provided by this data interface.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FOptimusCDIPinDefinition](API\Plugins\OptimusCore\FOptimusCDIPinDefinition) > GetPinDefinitions() const


description: Returns the component type that this data interface operates on.

code: virtual [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UActorComponent](API\Runtime\Engine\Components\UActorComponent) > GetRequiredComponentClass() const


description: Returns the list of all nested contexts from all known data interfaces. These can be used to define input/output pin contexts on a kernel.

code: static [TSet](API\Runtime\Core\Containers\TSet)< [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > > GetUniqueDomainDimensions()


description: Returns the list of top-level contexts from this data interface. These can be used to define driver contexts and resource contexts on a kernel. Each nested context will be non-empty.

code: [TSet](API\Runtime\Core\Containers\TSet)< [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > > GetUniqueNestedContexts() const


description: Registers types for all known data interfaces.

code: static void RegisterAllTypes()


code: virtual bool IsVisible() const


description: Register any additional data types provided by this data interface.

code: virtual void RegisterTypes()


className: UOptimusComputeDataInterface

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, Const) class UOptimusComputeDataInterface : public [UComputeDataInterface](API\Plugins\ComputeFramework\ComputeFramework\UComputeDataInterface)


className: UOptimusComputeKernelProvider

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


className: UOptimusDataInterfaceProvider

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


description: Component Bindings.

code: [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * AddComponentBinding ( const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * InComponentSource, [FName](API\Runtime\Core\UObject\FName) InName )


code: bool AddComponentBindingDirect ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InComponentBinding, const int32 InIndex )


description: Resources.

code: [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * AddResource ( [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataTypeRef, [FName](API\Runtime\Core\UObject\FName) InName )


description:
Takes an existing graph and adds it to this graph collection. If the graph cannot be added, the object remains unchanged and this function returns false.
true if the graph was successfully added to the graph.

code: virtual bool AddGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, int32 InInsertBefore )


description: Adds a resource that was created by this deformer and is owned by it.

code: bool AddResourceDirect ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, const int32 InIndex )


description: Add a setup graph. This graph is executed once when the deformer is first run from a mesh component. If the graph already exists, this function does nothing and returns nullptr.


description: Add a trigger graph. This graph will be scheduled to execute on next tick, prior to the update graph being executed, after being triggered from a blueprint.

code: [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * AddTriggerGraph ( const [FString](API\Runtime\Core\Containers\FString) & InName )


description: Variables.

code: [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * AddVariable ( [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataTypeRef, [FName](API\Runtime\Core\UObject\FName) InName )


code: bool AddVariableDirect ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc, const int32 InIndex )


description: Graph compilation.

code: bool Compile()


code: [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * CreateComponentBindingDirect ( const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * InComponentSource, [FName](API\Runtime\Core\UObject\FName) InName )


description:
Create a new graph of a given type, with an optional name. The name may be changed to fit into the namespace. Only setup and trigger graphs can currently be created directly, and only a single setup graph. The setup graph is always the first, and the trigger graphs come after.
The newly created graph.

code: virtual [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * CreateGraph ( [EOptimusNodeGraphType](API\Plugins\OptimusCore\EOptimusNodeGraphType) InType, [FName](API\Runtime\Core\UObject\FName) InName, [TOptional](API\Runtime\Core\IO\TOptional)< int32 > InInsertBefore )


description: Create an instance of the mesh deformer.

code: virtual [UMeshDeformerInstance](API\Runtime\Engine\Animation\UMeshDeformerInstance) * CreateInstance ( [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) * InMeshComponent, [UMeshDeformerInstanceSettings](API\Runtime\Engine\Animation\UMeshDeformerInstanceSettings) * InSettings )


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

code: virtual void BeginDestroy()


description: Create a resource owned by this deformer but does not add it to the list of known resources. Call AddResource for that

code: [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * CreateResourceDirect ( [FName](API\Runtime\Core\UObject\FName) InName )


code: [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * CreateVariableDirect ( [FName](API\Runtime\Core\UObject\FName) InName )


description: Create persistent settings for the mesh deformer instance

code: virtual [UMeshDeformerInstanceSettings](API\Runtime\Engine\Animation\UMeshDeformerInstanceSettings) * CreateSettingsInstance ( [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) * InMeshComponent )


description: Get the action stack for this deformer graph


code: [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * CreateGraph ( [EOptimusNodeGraphType](API\Plugins\OptimusCore\EOptimusNodeGraphType) InType, [FName](API\Runtime\Core\UObject\FName) InName )


description: Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects

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


description: Returns the collection that owns this collection, or nullptr if this is the root collection

code: virtual [IOptimusNodeGraphCollectionOwner](API\Plugins\OptimusCore\IOptimusNodeGraphCollectionOwner) * GetCollectionOwner() const


description: Returns the path to this graph collection owner.

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


description: Returns root collection that owns all the collections

code: virtual [IOptimusNodeGraphCollectionOwner](API\Plugins\OptimusCore\IOptimusNodeGraphCollectionOwner) * GetCollectionRoot() const


description: Returns a multicast delegate that can be subscribed to listen for the end of compilation but before shader compilation is complete.


description: Returns a multicast delegate that can be subscribed to listen for the start of compilation.


description: Returns a multicast delegate that can be subscribed to listen compilation results. Note that the shader compilation results are async and can be returned after the CompileEnd delegate.


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintGetter) const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * > & GetComponentBindings() const


description: Returns all immediately owned node graphs.

code: virtual const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * > & GetGraphs() const


code: [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * > GetNodesUsingComponentBinding ( const [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * > GetNodesUsingResource ( const [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * > GetNodesUsingVariable ( const [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc ) const


description: Returns the global delegate used to notify on global operations (e.g. graph, variable, resource lifecycle events).


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintGetter) const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * > & GetResources() const


description: Get the preview mesh for this asset

code: virtual [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * GetPreviewMesh() const


description: Returns the current compilation/error status of the deformer


description: Returns the update graph. The update graph will always exist, and there is only one.

code: [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * GetUpdateGraph() const


description: Mark the deformer as modified.

code: void MarkModified()


description:
Only trigger graphs can be moved around.
true if the graph was successfully moved.

code: virtual bool MoveGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, int32 InInsertBefore )


code: void Notify ( [EOptimusGlobalNotifyType](API\Plugins\OptimusCore\EOptimusGlobalNotifyType) InNotifyType, [UObject](API\Runtime\CoreUObject\UObject\UObject) * InObject ) const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Whenever the asset is renamed/moved, generated classes parented to the old package are not moved to the new package automatically (see FAssetRenameManager), so we have to manually perform the move/rename, to avoid invalid reference to the old package

code: virtual void PostRename ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * OldOuter, const [FName](API\Runtime\Core\UObject\FName) OldName )


code: bool RemoveComponentBindingDirect ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding )


code: bool RemoveComponentBinding ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding )


description: Remove a graph and delete it.

code: bool RemoveGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph )


description:
Remove the given graph.
true if the graph was successfully removed.

code: virtual bool RemoveGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, bool bDeleteGraph )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintGetter) const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * > & GetVariables() const


code: bool RemoveResource ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc )


code: bool RemoveResourceDirect ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc )


code: bool RemoveVariable ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc )


code: bool RemoveVariableDirect ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc )


code: bool RenameComponentBinding ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding, [FName](API\Runtime\Core\UObject\FName) InNewName, bool bInForceChange )


code: bool RenameComponentBindingDirect ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding, [FName](API\Runtime\Core\UObject\FName) InNewName )


description:
Rename the given graph, subject to validation of the name.
true if the graph was successfully renamed.

code: virtual bool RenameGraph ( [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * InGraph, const [FString](API\Runtime\Core\Containers\FString) & InNewName )


code: bool RenameVariable ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc, [FName](API\Runtime\Core\UObject\FName) InNewName, bool bInForceChange )


code: bool RenameResource ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, [FName](API\Runtime\Core\UObject\FName) InNewName, bool bInForceChange )


code: bool RenameResourceDirect ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, [FName](API\Runtime\Core\UObject\FName) InNewName )


code: bool RenameVariableDirect ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc, [FName](API\Runtime\Core\UObject\FName) InNewName )


description:
Takes a collection path string and attempts to resolve it to a specific graph collection.
The node graph found from this path, or nullptr if nothing was found.

code: virtual [IOptimusNodeGraphCollectionOwner](API\Plugins\OptimusCore\IOptimusNodeGraphCollectionOwner) * ResolveCollectionPath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


code: virtual [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * ResolveComponentBinding ( [FName](API\Runtime\Core\UObject\FName) InBindingName ) const


description:
Takes a graph path string and attempts to resolve it to a specific graph
The node graph found from this path, or nullptr if nothing was found.

code: virtual [UOptimusNodeGraph](API\Plugins\OptimusCore\UOptimusNodeGraph) * ResolveGraphPath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


code: UOptimusNodeGraph &42; ResolveGraphPath &40; const FStringView InPath, FStringView & OutRemainingPath &41; const


description:
Takes a node path string and attempts to resolve it to a specific node
The node found from this path, or nullptr if nothing was found.

code: virtual [UOptimusNode](API\Plugins\OptimusCore\UOptimusNode) * ResolveNodePath ( const [FString](API\Runtime\Core\Containers\FString) & InPath )


code: UOptimusNode &42; ResolveNodePath &40; const FStringView InPath, FStringView & OutRemainingPath &41; const


description:
Takes a dot-separated path string and attempts to resolve it to a specific pin on a node.
The node found from this path, or nullptr if nothing was found.

code: virtual [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * ResolvePinPath ( const [FString](API\Runtime\Core\Containers\FString) & InPinPath )


code: virtual [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * ResolveResource ( [FName](API\Runtime\Core\UObject\FName) InResourceName ) const


code: virtual [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * ResolveVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName ) const


description: UObjectoverrides.

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


code: void SetAllInstancesCanbeActive ( bool bInCanBeActive ) const


code: bool SetComponentBindingSource ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding, const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * InComponentSource, bool bInForceChange )


code: bool SetComponentBindingSourceDirect ( [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) * InBinding, const [UOptimusComponentSource](API\Plugins\OptimusCore\UOptimusComponentSource) * InComponentSource )


description: Set the preview mesh for this asset

code: virtual void SetPreviewMesh ( [USkeletalMesh](API\Runtime\Engine\Engine\USkeletalMesh) * PreviewMesh, bool bMarkAsDirty )


code: bool SetResourceDataDomain ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, const [FOptimusDataDomain](API\Plugins\OptimusCore\FOptimusDataDomain) & InDataDomain, bool bInForceChange )


code: bool SetResourceDataDomainDirect ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, const [FOptimusDataDomain](API\Plugins\OptimusCore\FOptimusDataDomain) & InDataDomain )


code: bool SetResourceDataType ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataType, bool bInForceChange )


code: bool SetResourceDataTypeDirect ( [UOptimusResourceDescription](API\Plugins\OptimusCore\UOptimusResourceDescription) * InResourceDesc, [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataType )


code: void SetStatusFromDiagnostic ( [EOptimusDiagnosticLevel](API\Plugins\OptimusCore\EOptimusDiagnosticLevel) InDiagnosticLevel )


code: bool SetVariableDataType ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InVariableDesc, [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataType, bool bInForceChange )


code: bool SetVariableDataTypeDirect ( [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * InResourceDesc, [FOptimusDataTypeRef](API\Plugins\OptimusCore\FOptimusDataTypeRef) InDataType )


className: UOptimusDeformer

description: A Deformer Graph is an asset that is used to create and control custom deformations on skeletal meshes.

ComputeGraphs

type: TArray<FOptimu...

description: The compute graphs to execute.

Mesh

type: TObjectPtr<USk...


description: Implementation ofUMeshDeformerInstance.

code: virtual void AllocateResources()


description: Trigger a named trigger graph to run on the next tick

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer") bool EnqueueTriggerGraph ( [FName](API\Runtime\Core\UObject\FName) InTriggerGraphName )


description: Enqueue the mesh deformer workload on a scene.

code: virtual void EnqueueWork ( [FEnqueueWorkDesc](API\Runtime\Engine\Animation\UMeshDeformerInstance\FEnqueueWorkDesc) const & InDesc )


description: Get an array containing all the variables.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintGetter) const [TArray](API\Runtime\Core\Containers\TArray)< [UOptimusVariableDescription](API\Plugins\OptimusCore\UOptimusVariableDescription) * > & GetVariables() const


description: Called when persistent render resources should be released

code: virtual void ReleaseResources()


description: Set the value of a boolean variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Boolean)")) bool SetBoolVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, bool InValue )


code: void SetCanBeActive ( bool bInCanBeActive )


description: Directly set a graph constant value.

code: void SetConstantValueDirect ( [FString](API\Runtime\Core\Containers\FString) const & InVariableName, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > const & InValue )


description: Set the value of a float variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Float)")) bool SetFloatVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, double InValue )


description: Set the instance settings that control this deformer instance. The deformer instance is transient whereas the settings are persistent.

code: void SetInstanceSettings ( [UOptimusDeformerInstanceSettings](API\Plugins\OptimusCore\UOptimusDeformerInstanceSettings) * InInstanceSettings )


description: Set the value of an integer variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Integer)")) bool SetIntVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, int32 InValue )


description: Setup the instance. Needs to be called after theUOptimusDeformercreates this instance, and whenever the instance is invalidated. Invalidation happens whenever any bound Data Providers become invalid.

code: void SetupFromDeformer ( [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * InDeformer )


description: Set the value of a transform variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Transform)")) bool SetTransformVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, const FTransform & InValue )


description: Set the Mesh Component that owns this instance. Call once before first call toSetupFromDeformer().

code: void SetMeshComponent ( [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) * InMeshComponent )


description: Set the value of a 4-vector variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Vector4)")) bool SetVector4Variable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, const FVector4 & InValue )


description: Set the value of a 3-vector variable.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Deformer", Meta=(DisplayName="Set Variable (Vector)")) bool SetVectorVariable ( [FName](API\Runtime\Core\UObject\FName) InVariableName, const FVector & InValue )


className: UOptimusDeformerInstance

description: Class representing an instance of an Optimus Mesh Deformer. This implements theUMeshDeformerInstanceinterface to enqueue the graph execution. It also contains the per instance deformer variable state and local state for each of the graphs in the deformer.


description: Get a full component source binding object by binding name. Used only by details customization.

code: [UOptimusComponentSourceBinding](API\Plugins\OptimusCore\UOptimusComponentSourceBinding) const * GetComponentBindingByName ( [FName](API\Runtime\Core\UObject\FName) InBindingName ) const


description: Get an array of recommended component bindings, based on the stored settings.

code: void GetComponentBindings ( [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * InDeformer, [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) * InPrimaryComponent, [TArray](API\Runtime\Core\Containers\TArray)< [UActorComponent](API\Runtime\Engine\Components\UActorComponent) * > & OutComponentBindings ) const


description: Setup the object. This initializes the binding names and the primary binding component.

code: void InitializeSettings ( [UOptimusDeformer](API\Plugins\OptimusCore\UOptimusDeformer) * InDeformer, [UMeshComponent](API\Runtime\Engine\Components\UMeshComponent) * InPrimaryComponent )


className: UOptimusDeformerInstanceSettings


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


className: UOptimusExecutionDomainProvider

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


description: The name to give the node based off of this graph


className: UOptimusFunctionNodeGraph

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UOptimusFunctionNodeGraph : public [UOptimusNodeSubGraph](API\Plugins\OptimusCore\UOptimusNodeSubGraph)

Category

description: The category of the node based of of this graph for listing purposes


className: UOptimusGeneratedClassDefiner

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


description: Get kernel source code ready for HLSL compilation.

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


code: void SetSource ( [FString](API\Runtime\Core\Containers\FString) const & InSource )


description: Add a new grouping pin. This is a pin that takes no connections but is shown as collapsible in the node UI.

code: [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * AddGroupingPin ( [FName](API\Runtime\Core\UObject\FName) InName, [EOptimusNodePinDirection](API\Plugins\OptimusCore\EOptimusNodePinDirection) InDirection, [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InBeforePin )


code: [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * AddGroupingPinDirect ( [FName](API\Runtime\Core\UObject\FName) InName, [EOptimusNodePinDirection](API\Plugins\OptimusCore\EOptimusNodePinDirection) InDirection, [UOptimusNodePin](API\Plugins\OptimusCore\UOptimusNodePin) * InBeforePin )