Navigation
API > API/Plugins > API/Plugins/RigVM
A factory to generate a template and its dispatch functions
| Name | FRigVMDispatchFactory |
| Type | struct |
| Header File | /Engine/Plugins/Runtime/RigVM/Source/RigVM/Public/RigVMCore/RigVMDispatchFactory.h |
| Include Path | #include "RigVMCore/RigVMDispatchFactory.h" |
Syntax
USTRUCT ()
struct FRigVMDispatchFactory
Derived Classes
FRigVMDispatchFactory derived class hierarchy
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FRigVMDispatchFactory() |
RigVMCore/RigVMDispatchFactory.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FRigVMDispatchFactory() |
RigVMCore/RigVMDispatchFactory.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| DispatchPrefix | const TCHAR * | RigVMCore/RigVMDispatchFactory.h | |
| GetTemplateMutex | FCriticalSection | RigVMCore/RigVMDispatchFactory.h | |
| TrueString | const TCHAR * | RigVMCore/RigVMDispatchFactory.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Returns the names of the input aggregate arguments | RigVMCore/RigVMDispatchFactory.h | ||
| Returns the names of the output aggregate arguments | RigVMCore/RigVMDispatchFactory.h | ||
virtual FString GetArgumentDefaultValue
(
const FName& InArgumentName, |
Returns the default value for an argument | RigVMCore/RigVMDispatchFactory.h | |
virtual const TArray< FRigVMTemplateArgumentInfo > & GetArgumentInfos
(
FRigVMRegistryHandle& InRegistry |
Returns the arguments of the template | RigVMCore/RigVMDispatchFactory.h | |
| Returns meta data on the property of the permutations. | RigVMCore/RigVMDispatchFactory.h | ||
virtual FName GetArgumentNameForOperandIndex
(
int32 InOperandIndex, |
Returns the name to use for the branch info / argument based on the operand index. | RigVMCore/RigVMDispatchFactory.h | |
virtual FText GetArgumentTooltip
(
const FName& InArgumentName, |
Returns the tooltip for an argument | RigVMCore/RigVMDispatchFactory.h | |
virtual FString GetCategory() |
Returns the category this factory is under. | RigVMCore/RigVMDispatchFactory.h | |
const TArray< FName > & GetControlFlowBlocks
(
const FRigVMDispatchContext& InContext |
Returns the control flow blocks of this dispatch | RigVMCore/RigVMDispatchFactory.h | |
| Returns the display name text for an argument. | RigVMCore/RigVMDispatchFactory.h | ||
TArray< FRigVMExecuteArgument > GetExecuteArguments_NoLock
(
const FRigVMDispatchContext& InContext, |
Returns the execute arguments of the template | RigVMCore/RigVMDispatchFactory.h | |
virtual UScriptStruct * GetExecuteContextStruct() |
Returns the execute context support for this dispatch factory. | RigVMCore/RigVMDispatchFactory.h | |
int32 GetFactoryIndex() |
Returns the index of this factory in its registry | RigVMCore/RigVMDispatchFactory.h | |
| Returns the name of this factory | RigVMCore/RigVMDispatchFactory.h | ||
virtual FString GetKeywords() |
Returns the keywords used for looking up this factory. | RigVMCore/RigVMDispatchFactory.h | |
| Returns the next name to be used for an aggregate pin | RigVMCore/RigVMDispatchFactory.h | ||
virtual FLinearColor GetNodeColor() |
Returns the color of the node for a given type set. | RigVMCore/RigVMDispatchFactory.h | |
virtual FString GetNodeTitle
(
const FRigVMTemplateTypeMap& InTypes |
Returns the title of the node for a given type set. | RigVMCore/RigVMDispatchFactory.h | |
virtual FText GetNodeTooltip
(
const FRigVMTemplateTypeMap& InTypes |
Returns the tooltip for the node | RigVMCore/RigVMDispatchFactory.h | |
FRigVMFunctionPtr GetOrCreateDispatchFunction
(
const FRigVMTemplateTypeMap& InTypes |
Returns the dispatch function for a given type set | RigVMCore/RigVMDispatchFactory.h | |
const FRigVMRegistry_NoLock * GetOwnerRegistry() |
Returns the registry this factory belongs top | RigVMCore/RigVMDispatchFactory.h | |
FString GetPermutationName
(
const FRigVMTemplateTypeMap& InTypes |
Returns the name of the permutation for a given set of types | RigVMCore/RigVMDispatchFactory.h | |
FString GetPermutationName_NoLock
(
const FRigVMTemplateTypeMap& InTypes, |
RigVMCore/RigVMDispatchFactory.h | ||
virtual bool GetPermutationsFromArgumentType
(
const FName& InArgumentName, |
Returns the new permutations argument types after a new type is defined for one argument | RigVMCore/RigVMDispatchFactory.h | |
UScriptStruct * GetScriptStruct() |
Returns the struct for this dispatch factory | RigVMCore/RigVMDispatchFactory.h | |
const FRigVMTemplate * GetTemplate() |
Builds and returns the template | RigVMCore/RigVMDispatchFactory.h | |
const FRigVMTemplate * GetTemplate_NoLock
(
FRigVMRegistryHandle& InRegistry |
Builds and returns the template | RigVMCore/RigVMDispatchFactory.h | |
FName GetTemplateNotation() |
Returns the name of the factory template | RigVMCore/RigVMDispatchFactory.h | |
FName GetTemplateNotation_NoLock
(
FRigVMRegistryHandle& InRegistry |
RigVMCore/RigVMDispatchFactory.h | ||
virtual FRigVMStructUpgradeInfo GetUpgradeInfo
(
const FRigVMTemplateTypeMap& InTypes, |
Returns the upgrade info to use for this factory | RigVMCore/RigVMDispatchFactory.h | |
| Returns true if the factory provides metadata for a given argument. | RigVMCore/RigVMDispatchFactory.h | ||
virtual const bool IsControlFlowBlockSliced
(
const FName& InBlockName |
Returns true if a given control flow block needs to be sliced | RigVMCore/RigVMDispatchFactory.h | |
bool IsControlFlowDispatch
(
const FRigVMDispatchContext& InContext |
Returns true if the dispatch is a control flow dispatch | RigVMCore/RigVMDispatchFactory.h | |
bool IsLazyInputArgument
(
const FName& InArgumentName |
Returns true if the argument is lazy. | RigVMCore/RigVMDispatchFactory.h | |
virtual bool IsSingleton() |
Returns true if the dispatch uses the same function ptr for all permutations | RigVMCore/RigVMDispatchFactory.h | |
virtual FRigVMTemplateTypeMap OnNewArgumentType
(
const FName& InArgumentName, |
This function is deprecated, please use GetPermutationsFromArgumentType returns the new permutation argument types after a new type is defined for one argument this happens if types are being loaded later after this factory has already been deployed (like UUserDefinedStruct) | RigVMCore/RigVMDispatchFactory.h | |
virtual void RegisterDependencyTypes_NoLock
(
FRigVMRegistryHandle& InRegistry |
Registered needed types during registration of the factory. | RigVMCore/RigVMDispatchFactory.h | |
bool SupportsExecuteContextStruct
(
const UScriptStruct* InExecuteContextStruct |
Returns truf if this factory supports a given executecontext struct. | RigVMCore/RigVMDispatchFactory.h | |
virtual bool SupportsRenaming() |
Returns true if nodes provided by this factory can be renamed | RigVMCore/RigVMDispatchFactory.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
TArray< FRigVMTemplateArgumentInfo > BuildArgumentListFromPrimaryArgument
(
const TArray< FRigVMTemplateArgumentInfo >& InInfos, |
For each type defined in the primary argument, this function will call GetPermutationsFromArgumentType to construct an array of arguments with the appropiate permutations | RigVMCore/RigVMDispatchFactory.h | |
bool CheckArgumentType
(
bool bCondition, |
RigVMCore/RigVMDispatchFactory.h | ||
FRigVMFunctionPtr CreateDispatchFunction_NoLock
(
const FRigVMTemplateTypeMap& InTypes, |
RigVMCore/RigVMDispatchFactory.h | ||
TArray< FRigVMFunction > CreateDispatchPredicates_NoLock
(
const FRigVMTemplateTypeMap& InTypes, |
RigVMCore/RigVMDispatchFactory.h | ||
const FRigVMTemplate * CreateTemplateForArgumentInfos_NoLock
(
const TArray< FRigVMTemplateArgumentInfo >& InArguments, |
Creates the template based on existing argument infos | RigVMCore/RigVMDispatchFactory.h | |
virtual const TArray< FName > & GetControlFlowBlocks_Impl
(
const FRigVMDispatchContext& InContext |
RigVMCore/RigVMDispatchFactory.h | ||
virtual FRigVMFunctionPtr GetDispatchFunctionImpl
(
const FRigVMTemplateTypeMap& InTypes, |
RigVMCore/RigVMDispatchFactory.h | ||
virtual TArray< FRigVMFunction > GetDispatchPredicatesImpl
(
const FRigVMTemplateTypeMap& InTypes, |
RigVMCore/RigVMDispatchFactory.h | ||
virtual const TArray< FRigVMExecuteArgument > & GetExecuteArguments_Impl
(
const FRigVMDispatchContext& InContext |
RigVMCore/RigVMDispatchFactory.h | ||
FRigVMFunctionPtr GetOrCreateDispatchFunction_NoLock
(
const FRigVMTemplateTypeMap& InTypes, |
Returns the dispatch function for a given type set | RigVMCore/RigVMDispatchFactory.h | |
FString GetPermutationNameImpl
(
const FRigVMTemplateTypeMap& InTypes, |
Returns the name of the permutation for a given set of types | RigVMCore/RigVMDispatchFactory.h | |
const TArray< FName > * UpdateArgumentNameCache
(
int32 InNumberOperands, |
RigVMCore/RigVMDispatchFactory.h | ||
const TArray< FName > * UpdateArgumentNameCache_NoLock
(
int32 InNumberOperands, |
RigVMCore/RigVMDispatchFactory.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| RigVMCore/RigVMDispatchFactory.h | |||
static FString GetDefaultValueForStruct
(
const T& InValue |
RigVMCore/RigVMDispatchFactory.h | ||
static FString GetDefaultValueForStruct
(
const T& InValue |
RigVMCore/RigVMDispatchFactory.h | ||
static FName GetFactoryName
(
const UScriptStruct* InFactoryStruct |
Returns the name of the factory given the factory's struct | RigVMCore/RigVMDispatchFactory.h |