URigVMPin

The Visual Debugging Info is used for visually displaying Data flowing through a pin.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

RigVMDeveloper

Header

/Engine/Source/Developer/RigVMDeveloper/Public/RigVMModel/RigVMPin.h

Include

#include "RigVMModel/RigVMPin.h"

Syntax

class URigVMPin : public UObject

Remarks

The Visual Debugging Info is used for visually displaying Data flowing through a pin. Typically this is attached to an input pin causes the pin to inject a node on the link driving it The Pin represents a single connector / pin on a node in the RigVM model. Pins can be connected based on rules. Pins also provide access to a 'PinPath', which essentially represents . separated list of names to reach the pin within the owning graph. PinPaths are unique. In comparison to the EdGraph Pin the URigVMPin supports the concept of 'SubPins', so child / parent relationships between pins. A FVector Pin for example might have its X, Y and Z components as SubPins. Array Pins will have its elements as SubPins, and so on. A URigVMPin is owned solely by a URigVMNode.

Constructors

Name Description

Public function

URigVMPin()

Default constructor.

Functions

Name Description

Public function Static

bool

 

CanLink

(
    URigVMPin* InSourcePin,
    URigVMPin* InTargetPin,
    FString* OutFailureReason
)

Returns true is the two provided source and target Pins can be linked to one another.

Public function Static

T *

 

FindObjectFromCPPTypeObjectPath

(
    const FString& InObjectPath
)

Helper function to retrieve an object from a path

Public function Static

UObject *...

 

FindObjectFromCPPTypeObjectPath

(
    const FString& InObjectPath
)

Helper function to retrieve an object from a path

Public function Const

URigVMPin &#...

 

FindSubPin

(
    const FString& InPinPath
)

Returns a SubPin given a name / path or nullptr.

Public function Const

FString

 

GetArrayElementCppType()

Returns the C++ data type of an element of the Pin array.

Public function Const

int32

 

GetArraySize()

Returns the number of elements within an array Pin.

Public function Const

FString

 

GetCPPType()

Returns the C++ data type of the pin.

Public function Const

UObject *...

 

GetCPPTypeObject()

Returns the struct of the data type of the Pin, or nullptr otherwise.

Public function Const

FName

 

GetCustomWidgetName()

Returns the name of a custom widget to be used for editing the Pin.

Public function Const

FString

 

GetDefaultValue()

Returns the default value of the Pin as a string.

Public function Const

FString

 

GetDefaultValue

(
    const FDefaultValueOverride& InDef...
)

Returns the default value with an additional override ma.

Public function Const

ERigVMPinDir...

 

GetDirection()

Returns the direction of the pin.

Public function Const

FName

 

GetDisplayName()

Returns the display label of the pin.

Public function Const

UEnum *

 

GetEnum()

Returns the enum of the data type of the Pin, or nullptr otherwise.

Public function Const

URigVMGraph ...

 

GetGraph()

Returns the graph of this Pin.

Public function Const

const TArray...

 

GetInjectedNodes()

Returns the injected nodes this pin contains.

Public function Const

TArray< URig...

 

GetLinkedSourcePins

(
    bool bRecursive
)

Returns all of the linked source Pins, using this Pin as the target.

Public function Const

TArray< URig...

 

GetLinkedTargetPins

(
    bool bRecursive
)

Returns all of the linked target Pins, using this Pin as the source.

Public function Const

const TArray...

 

GetLinks()

Returns all of the links linked to this Pin.

Public function Const

URigVMNode &...

 

GetNode()

Returns the node of this Pin.

Public function

int32

 

GetNumSlices

(
    const FRigVMUserDataArray& InUserD...
)

Returns the number of slices in memory exist for this pin.

Public function Const

URigVMPin &#...

 

GetOriginalPinFromInjectedNode()

Returns the original pin for a pin on an injected node. This can be used to determine where a link

Public function Const

URigVMPin &#...

 

GetParentPin()

Returns the parent Pin - or nullptr if the Pin is nested directly below a node.

Public function Const

URigVMPin &#...

 

GetPinForLink()

Returns the pin to be used for a link.

Public function Const

int32

 

GetPinIndex()

Returns the index of the Pin within the node / parent Pin.

Public function Const

FString

 

GetPinPath()

Returns a .

Public function Const

URigVMPin &#...

 

GetRootPin()

Returns the top-most parent Pin, so for example for "Node.Transform.Translation.X" this returns the Pin for "Node.Transform".

Public function Const

UScriptStruc...

 

GetScriptStruct()

Returns the struct of the data type of the Pin, or nullptr otherwise.

Public function Const

FString

 

GetSegmentPath()

Returns a .

Public function

FName

 

GetSliceContext

(
    const FRigVMUserDataArray& InUserD...
)

Returns the name of the context this pin belongs to.

Public function Const

TArray< URig...

 

GetSourceLinks

(
    bool bRecursive
)

Returns all of the source pins using this Pin as the target.

Public function Const

const TArray...

 

GetSubPins()

Returns all of the SubPins of this one.

Public function Const

TArray< URig...

 

GetTargetLinks

(
    bool bRecursive
)

Returns all of the target links, using this Pin as the source.

Public function Const

FText

 

GetToolTipText()

Returns the tooltip of this pin.

Public function Const

bool

 

HasInjectedNodes()

Returns true if this pin has injected nodes.

Public function Const

bool

 

IsArray()

Returns true if the data type of the Pin is an array.

Public function Const

bool

 

IsArrayElement()

Returns true if the Pin is a SubPin within an array.

Public function Const

bool

 

IsDefinedAsConstant()

Returns true if the pin is defined as a constant value / literal.

Public function Const

bool

 

IsDynamicArray()

Returns true if this pin represents a dynamic array.

Public function Const

bool

 

IsExecuteContext()

Returns true if the C++ data type is an execute context.

Public function Const

bool

 

IsExpanded()

Returns true if the pin is currently expanded.

Public function Const

bool

 

IsLinkedTo

(
    URigVMPin* InPin
)

Returns true if this Pin is linked to another Pin.

Public function Const

bool

 

IsStringType()

Returns true if the C++ data type is FString or FName.

Public function Const

bool

 

IsStruct()

Returns true if the data type of the Pin is a struct.

Public function Const

bool

 

IsStructMember()

Returns true if the Pin is a SubPin within a struct.

Public function Static

FString

 

JoinPinPath

(
    const TArray< FString >& InParts
)

Joins a PinPath from to segments, so for example ["Node", "Color", "R"] becomes "Node.Color.R".

Public function Static

FString

 

JoinPinPath

(
    const FString& Left,
    const FString& Right
)

Joins a PinPath from to segments, so for example "Node.Color" and "R" becomes "Node.Color.R".

Public function Const

bool

 

RequiresWatch()

Returns true if the pin should be watched.

Public function Const

bool

 

ShowInDetailsPanelOnly()

Returns true if the pin should not show up on a node, but in the details panel.

Public function Static

bool

 

SplitPinPath

(
    const FString& InPinPath,
    TArray< FString >& Parts
)

Splits a PinPath into all segments, so for example "Node.Color.R" becomes ["Node", "Color", "R"].

Public function Static

bool

 

SplitPinPathAtEnd

(
    const FString& InPinPath,
    FString& Left,
    FString& RightMost
)

Splits a PinPath at the start, so for example "Node.Color.R" becomes "Node.Color" and "R".

Public function Static

bool

 

SplitPinPathAtStart

(
    const FString& InPinPath,
    FString& LeftMost,
    FString& Right
)

Splits a PinPath at the start, so for example "Node.Color.R" becomes "Node" and "Color.R".

Typedefs

Name

Description

FDefaultValueOverride

A map used to override pin default values.

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