URigVM

The RigVM is the main object for evaluating [FRigVMByteCode](API\Runtime\RigVM\RigVMCore\FRigVMByteCode) instructions.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

RigVM

Header

/Engine/Source/Runtime/RigVM/Public/RigVMCore/RigVM.h

Include

#include "RigVMCore/RigVM.h"

Syntax

class URigVM : public UObject

Remarks

The RigVM is the main object for evaluating FRigVMByteCode instructions. It combines the byte code, a list of required function pointers for execute instructions and required memory in one class.

Variables

Name Description

Public variable

FRigVMByteCode

 

ByteCode

The byte code of the VM.

Public variable

FRigVMMemoryCon...

 

LiteralMemory

The default const literal memory.

Public variable

FRigVMMemoryCon...

 

WorkMemory

The default mutable work memory.

Constructors

Name Description

Public function

URigVM()

Destructors

Name Description

Public function Virtual

~URigVM()

Functions

Name Description

Public function

FRigVMParame...

 

AddPlainParameter

(
    ERigVMParameterType InParameterType,
    const FName& InName,
    const FString& InCPPType,
    const TArray< T >& DefaultValue
)

Adds a new input / output to the VM.

Public function

FRigVMParame...

 

AddPlainParameter

(
    ERigVMParameterType InParameterType,
    const FName& InName,
    const FString& InCPPType,
    T DefaultValue
)

Adds a new input / output to the VM.

Public function

int32

 

AddRigVMFunction

(
    UScriptStruct* InRigVMStruct,
    const FName& InMethodName
)

Add a function for execute instructions to this VM.

Public function

FRigVMParame...

 

AddStructParameter

(
    ERigVMParameterType InParameterType,
    const FName& InName,
    const T& DefaultValue
)

Adds a new input / output to the VM.

Public function

FRigVMParame...

 

AddStructParameter

(
    ERigVMParameterType InParameterType,
    const FName& InName,
    const TArray< T >& DefaultValue
)

Adds a new input / output to the VM.

Public function

void

 

CopyFrom

(
    URigVM* InVM
)

Resets the container and clones the input VM

Public function

void

 

Empty()

Resets the container and removes all memory

Public function

bool

 

Execute()

Executes the VM.

Public function

bool

 

Execute

(
    FRigVMMemoryContainerPtrArray Memor...,
    TArrayView< void* > Additional...
)

Executes the VM.

Public function

const FRigVM...

 

GetInstructions()

Returns the instructions of the VM.

Public function Const

int32

 

GetParameterArraySize

(
    int32 InParameterIndex
)

Retrieve the array size of the parameter.

Public function Const

int32

 

GetParameterArraySize

(
    const FName& InParameterName
)

Retrieve the array size of the parameter.

Public function Const

int32

 

GetParameterArraySize

(
    const FRigVMParameter& InParameter
)

Retrieve the array size of the parameter.

Public function

FRigVMParame...

 

GetParameterByName

(
    const FName& InParameterName
)

Returns a parameter given it's name.

Public function Const

const TArray...

 

GetParameters()

Returns the parameters of the VM.

Public function

T

 

GetParameterValue

(
    const FRigVMParameter& InParameter,
    int32 InArrayIndex,
    T DefaultValue
)

Retrieve the value of a parameter.

Public function

T

 

GetParameterValue

(
    int32 InParameterIndex,
    int32 InArrayIndex,
    T DefaultValue
)

Retrieve the value of a parameter given its index.

Public function

T

 

GetParameterValue

(
    const FName& InParameterName,
    int32 InArrayIndex,
    T DefaultValue
)

Retrieve the value of a parameter given its name.

Public function

bool

 

GetParameterValueBool

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

float

 

GetParameterValueFloat

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

int32

 

GetParameterValueInt

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FName

 

GetParameterValueName

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FQuat

 

GetParameterValueQuat

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FString

 

GetParameterValueString

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FTransform

 

GetParameterValueTransform

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FVector

 

GetParameterValueVector

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function

FVector2D

 

GetParameterValueVector2D

(
    const FName& InParameterName,
    int32 InArrayIndex
)

Public function Const

FString

 

GetRigVMFunctionName

(
    int32 InFunctionIndex
)

Returns the name of a function given its index.

Public function Const

FRigVMStatis...

 

GetStatistics()

Returns the statistics information

Public function

void

 

Reset()

Resets the container and maintains all memory

Public function

void

 

SetParameterValue

(
    const FRigVMParameter& InParameter,
    const T& InNewValue,
    int32 InArrayIndex
)

Set the value of a parameter.

Public function

void

 

SetParameterValue

(
    const FName& InParameterName,
    const T& InNewValue,
    int32 InArrayIndex
)

Set the value of a parameter given its name.

Public function

void

 

SetParameterValue

(
    int32 ParameterIndex,
    const T& InNewValue,
    int32 InArrayIndex
)

Set the value of a parameter given its index.

Public function

void

 

SetParameterValueBool

(
    const FName& InParameterName,
    bool InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueFloat

(
    const FName& InParameterName,
    float InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueInt

(
    const FName& InParameterName,
    int32 InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueName

(
    const FName& InParameterName,
    const FName& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueQuat

(
    const FName& InParameterName,
    const FQuat& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueString

(
    const FName& InParameterName,
    const FString& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueTransform

(
    const FName& InParameterName,
    const FTransform& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueVector

(
    const FName& InParameterName,
    const FVector& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetParameterValueVector2D

(
    const FName& InParameterName,
    const FVector2D& InValue,
    int32 InArrayIndex
)

Public function

void

 

SetRegisterValueFromString

(
    const FRigVMOperand& InOperand,
    const FString& InCPPType,
    const UObject* InCPPTypeObject,
    const TArray< FString >& InDefault...
)

Overridden from UObject

Name Description

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Handles reading, writing, and reference collecting using FArchive.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss