UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FDataflowTerminalNode Struct Reference

#include <DataflowTerminalNode.h>

+ Inheritance diagram for FDataflowTerminalNode:

Public Member Functions

 FDataflowTerminalNode ()
 
 FDataflowTerminalNode (const UE::Dataflow::FNodeParameters &Param, FGuid InGuid=FGuid::NewGuid())
 
virtual ~FDataflowTerminalNode ()
 
virtual bool IsA (FName InType) const override
 
virtual TObjectPtr< UObjectGetTerminalAsset () const
 
virtual void SetAssetValue (TObjectPtr< UObject > Asset, UE::Dataflow::FContext &Context) const
 
virtual void Evaluate (UE::Dataflow::FContext &Context) const
 
- Public Member Functions inherited from FDataflowNode
DATAFLOWCORE_API FDataflowNode ()
 
DATAFLOWCORE_API FDataflowNode (const UE::Dataflow::FNodeParameters &Param, FGuid InGuid=FGuid::NewGuid())
 
virtual PRAGMA_DISABLE_DEPRECATION_WARNINGS ~FDataflowNode ()
 
PRAGMA_ENABLE_DEPRECATION_WARNINGS FDataflowNodeoperator= (const FDataflowNode &Other)
 
FGuid GetGuid () const
 
FName GetName () const
 
void SetName (FName InName)
 
UE::Dataflow::FTimestamp GetTimestamp () const
 
DATAFLOWCORE_API uint32 GetValueHash ()
 
virtual FName GetType () const
 
virtual FName GetDisplayName () const
 
virtual FName GetCategory () const
 
virtual FString GetTags () const
 
virtual DATAFLOWCORE_API FString GetToolTip () const
 
DATAFLOWCORE_API FString GetPinToolTip (const FName &PropertyName, const UE::Dataflow::FPin::EDirection Direction=UE::Dataflow::FPin::EDirection::NONE) const
 
DATAFLOWCORE_API FText GetPinDisplayName (const FName &PropertyName, const UE::Dataflow::FPin::EDirection Direction=UE::Dataflow::FPin::EDirection::NONE) const
 
DATAFLOWCORE_API TArray< FString > GetPinMetaData (const FName &PropertyName, const UE::Dataflow::FPin::EDirection Direction=UE::Dataflow::FPin::EDirection::NONE) const
 
virtual TArray< UE::Dataflow::FRenderingParameterGetRenderParameters () const
 
DATAFLOWCORE_API void CopyNodeProperties (const TSharedPtr< FDataflowNode > CopyFromDataflowNode)
 
virtual bool IsDeprecated ()
 
virtual bool IsExperimental ()
 
virtual bool HasRenderCollectionPrimitives () const
 
DATAFLOWCORE_API TArray< UE::Dataflow::FPinGetPins () const
 
virtual TArray< UE::Dataflow::FPinAddPins ()
 
virtual bool CanAddPin () const
 
virtual TArray< UE::Dataflow::FPinGetPinsToRemove () const
 
virtual void OnPinRemoved (const UE::Dataflow::FPin &Pin)
 
virtual bool CanRemovePin () const
 
DATAFLOWCORE_API bool InputSupportsType (FName Name, FName Type) const
 
DATAFLOWCORE_API bool OutputSupportsType (FName Name, FName Type) const
 
virtual DATAFLOWCORE_API void AddInput (FDataflowInput *InPtr)
 
DATAFLOWCORE_API int32 GetNumInputs () const
 
DATAFLOWCORE_API TArray< FDataflowInput * > GetInputs () const
 
DATAFLOWCORE_API void ClearInputs ()
 
DATAFLOWCORE_API bool HasHideableInputs () const
 
DATAFLOWCORE_API bool HasHiddenInputs () const
 
DATAFLOWCORE_API const FDataflowConnectionFindConnection (const UE::Dataflow::FConnectionKey &Key) const
 
DATAFLOWCORE_API FDataflowConnectionFindConnection (const UE::Dataflow::FConnectionKey &Key)
 
DATAFLOWCORE_API FDataflowConnectionFindConnection (const UE::Dataflow::FConnectionReference &Reference)
 
DATAFLOWCORE_API FDataflowInputFindInput (FName Name)
 
DATAFLOWCORE_API FDataflowInputFindInput (const UE::Dataflow::FConnectionKey &Key)
 
DATAFLOWCORE_API FDataflowInputFindInput (const UE::Dataflow::FConnectionReference &Reference)
 
DATAFLOWCORE_API const FDataflowInputFindInput (FName Name) const
 
DATAFLOWCORE_API const FDataflowInputFindInput (const UE::Dataflow::FConnectionKey &Key) const
 
DATAFLOWCORE_API const FDataflowInputFindInput (const UE::Dataflow::FConnectionReference &Reference) const
 
DATAFLOWCORE_API const FDataflowInputFindInput (const FGuid &InGuid) const
 
virtual DATAFLOWCORE_API void AddOutput (FDataflowOutput *InPtr)
 
DATAFLOWCORE_API int NumOutputs () const
 
DATAFLOWCORE_API TArray< FDataflowOutput * > GetOutputs () const
 
DATAFLOWCORE_API void ClearOutputs ()
 
DATAFLOWCORE_API bool HasHideableOutputs () const
 
DATAFLOWCORE_API bool HasHiddenOutputs () const
 
DATAFLOWCORE_API FDataflowOutputFindOutput (FName Name)
 
DATAFLOWCORE_API FDataflowOutputFindOutput (uint32 GuidHash)
 
DATAFLOWCORE_API FDataflowOutputFindOutput (const UE::Dataflow::FConnectionKey &Key)
 
DATAFLOWCORE_API FDataflowOutputFindOutput (const UE::Dataflow::FConnectionReference &Reference)
 
DATAFLOWCORE_API const FDataflowOutputFindOutput (FName Name) const
 
DATAFLOWCORE_API const FDataflowOutputFindOutput (uint32 GuidHash) const
 
DATAFLOWCORE_API const FDataflowOutputFindOutput (const UE::Dataflow::FConnectionKey &Key) const
 
DATAFLOWCORE_API const FDataflowOutputFindOutput (const UE::Dataflow::FConnectionReference &Reference) const
 
DATAFLOWCORE_API const FDataflowOutputFindOutput (const FGuid &InGuid) const
 
DATAFLOWCORE_API bool TryRenameInput (const UE::Dataflow::FConnectionReference &Reference, FName NewName)
 
DATAFLOWCORE_API bool TryRenameInput (FDataflowInput &InputToRename, FName NewName)
 
DATAFLOWCORE_API bool TryRenameOutput (const UE::Dataflow::FConnectionReference &Reference, FName NewName)
 
DATAFLOWCORE_API bool TryRenameOutput (FDataflowOutput &OutputToRename, FName NewName)
 
uint32 GetPropertyOffset (const FName &PropertyFullName) const
 
virtual void Serialize (FArchive &Ar)
 
virtual void PostSerialize (const FArchive &Ar)
 
virtual FDataflowInputRedirectSerializedInput (const FName &MissingInputName)
 
virtual FDataflowOutputRedirectSerializedOutput (const FName &MissingOutputName)
 
virtual void SerializeInternal (FArchive &Ar)
 
virtual FStructOnScopeNewStructOnScope ()
 
virtual const UScriptStructTypedScriptStruct () const
 
TUniquePtr< const FStructOnScopeNewStructOnScopeConst () const
 
template<typename T >
FDataflowInputRegisterInputConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const FName &PropertyName=NAME_None)
 
template<typename T >
FDataflowInputRegisterInputConnection (const T *Reference, const FName &PropertyName=NAME_None)
 
template<typename T >
FDataflowOutputRegisterOutputConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const UE::Dataflow::TConnectionReference< T > &Passthrough=UE::Dataflow::TConnectionReference< T >(nullptr), const FName &PropertyName=NAME_None)
 
template<typename T >
FDataflowOutputRegisterOutputConnection (const T *Reference, const T *Passthrough=nullptr, const FName &PropertyName=NAME_None)
 
template<typename T >
FDataflowOutputRegisterOutputConnection (const T *Reference, const T *Passthrough, const FName &PropertyName, const FName &PassthroughName)
 
template<typename T >
FDataflowInputRegisterInputArrayConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
template<typename T >
FDataflowInputFindOrRegisterInputArrayConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
template<typename T >
FDataflowOutputRegisterOutputArrayConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
template<typename T >
FDataflowOutputFindOrRegisterOutputArrayConnection (const UE::Dataflow::TConnectionReference< T > &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
void UnregisterInputConnection (const UE::Dataflow::FConnectionReference &Reference)
 
DATAFLOWCORE_API void UnregisterInputConnection (const UE::Dataflow::FConnectionKey &Key)
 
DATAFLOWCORE_API void UnregisterPinConnection (const UE::Dataflow::FPin &Pin)
 
void UnregisterOutputConnection (const UE::Dataflow::FConnectionReference &Reference)
 
DATAFLOWCORE_API void UnregisterOutputConnection (const UE::Dataflow::FConnectionKey &Key)
 
virtual bool EvaluateOnGameThreadOnly () const
 
DATAFLOWCORE_API void Freeze (UE::Dataflow::FContext &Context)
 
DATAFLOWCORE_API void Unfreeze (UE::Dataflow::FContext &Context)
 
bool IsFrozen () const
 
const FInstancedPropertyBagGetFrozenFroperties () const
 
bool IsColorOverriden () const
 
const FLinearColorGetOverrideColor () const
 
DATAFLOWCORE_API bool IsActive (bool bCheckFlagOnly=false) const
 
template<class T UE_REQUIRES>
const T & GetValue (UE::Dataflow::FContext &Context, const UE::Dataflow::TConnectionReference< T > &Reference) const
 
template<typename TAnyType UE_REQUIRES>
TAnyType::FStorageType GetValue (UE::Dataflow::FContext &Context, const UE::Dataflow::TConnectionReference< TAnyType > &Reference) const
 
template<typename TAnyType UE_REQUIRES>
UE::Dataflow::FContextValue GetValue (UE::Dataflow::FContext &Context, const UE::Dataflow::TConnectionReference< TAnyType > &Reference) const
 
template<class T UE_REQUIRES>
const T & GetValue (UE::Dataflow::FContext &Context, const T *Reference) const
 
template<typename TAnyType UE_REQUIRES>
TAnyType::FStorageType GetValue (UE::Dataflow::FContext &Context, const TAnyType *Reference) const
 
template<typename TAnyType UE_REQUIRES>
UE::Dataflow::FContextValue GetValue (UE::Dataflow::FContext &Context, const TAnyType *Reference) const
 
template<class T >
TFuture< const T & > GetValueParallel (UE::Dataflow::FContext &Context, const UE::Dataflow::TConnectionReference< T > &Reference) const
 
template<class T >
TFuture< const T & > GetValueParallel (UE::Dataflow::FContext &Context, const T *Reference) const
 
template<class T >
const T & GetValue (UE::Dataflow::FContext &Context, const UE::Dataflow::TConnectionReference< T > &Reference, const T &Default) const
 
template<class T >
const T & GetValue (UE::Dataflow::FContext &Context, const T *Reference, const T &Default) const
 
template<class T >
const T & GetOutputValue (UE::Dataflow::FContext &Context, const T *Reference, const T &Default) const
 
template<class T , class U UE_REQUIRES>
void SetValue (UE::Dataflow::FContext &Context, T &&Value, const U *Reference) const
 
template<typename TAnyType UE_REQUIRES>
void SetValue (UE::Dataflow::FContext &Context, const typename TAnyType::FStorageType &Value, const TAnyType *Reference) const
 
template<typename TAnyType UE_REQUIRES>
void SetValue (UE::Dataflow::FContext &Context, UE::Dataflow::FContextValue &&Value, const TAnyType *Reference) const
 
void SetError (UE::Dataflow::FContext &Context, const void *Reference, const FString &InError) const
 
DATAFLOWCORE_API void ForwardInput (UE::Dataflow::FContext &Context, const UE::Dataflow::FConnectionReference &InputReference, const UE::Dataflow::FConnectionReference &Reference) const
 
template<class T >
void SafeForwardInput (UE::Dataflow::FContext &Context, const UE::Dataflow::FConnectionReference &InputReference, const T *Reference) const
 
DATAFLOWCORE_API void SetArraySizeFromInput (UE::Dataflow::FContext &Context, const UE::Dataflow::FConnectionReference &InputReference, const int32 *OutputReference) const
 
DATAFLOWCORE_API void SetArrayElementFromInput (UE::Dataflow::FContext &Context, const UE::Dataflow::FConnectionReference &InputReference, int32 Index, const void *OutputReference) const
 
template<typename TFunction >
void ForEachConnection (TFunction Function) const
 
bool IsConnected (const UE::Dataflow::FConnectionReference &Reference) const
 
template<typename T >
bool IsConnected (const T *Reference) const
 
void PauseInvalidations ()
 
void ResumeInvalidations ()
 
DATAFLOWCORE_API void Invalidate (const UE::Dataflow::FTimestamp &ModifiedTimestamp=UE::Dataflow::FTimestamp::Current())
 
virtual void OnInvalidate ()
 
virtual DATAFLOWCORE_API bool ValidateConnections ()
 
virtual DATAFLOWCORE_API void ValidateProperties ()
 
virtual bool SupportsAssetProperty (UObject *Asset) const
 
virtual void SetAssetProperty (UObject *Asset)
 
virtual void OnPropertyChanged (UE::Dataflow::FContext &Context, const FPropertyChangedEvent &InPropertyChangedEvent)
 
virtual bool SupportsDropConnectionOnNode (FName TypeName, UE::Dataflow::FPin::EDirection Direction) const
 
virtual const FDataflowConnectionOnDropConnectionOnNode (const FDataflowConnection &DroppedConnection)
 
virtual DATAFLOWCORE_API bool ShouldInvalidateOnPropertyChanged (const FPropertyChangedEvent &InPropertyChangedEvent) const
 
virtual bool MakeConnectedPropertiesReadOnly () const
 
virtual void OnRenderOutput (UE::Dataflow::FContext &Context, const FName OutputName, const FName RenderGroup, const TArray< UPrimitiveComponent * > &RenderComponents) const
 
bool HasValidConnections () const
 
template<class T >
const T * AsType () const
 
template<class T >
T * AsType ()
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FOnNodeInvalidated, FDataflowNode *)
 
FOnNodeInvalidatedGetOnNodeInvalidatedDelegate ()
 
DATAFLOWCORE_API bool TrySetConnectionType (FDataflowConnection *Connection, FName NewType)
 
DATAFLOWCORE_API void NotifyConnectionTypeChanged (FDataflowConnection *Connection)
 
DATAFLOWCORE_API bool SetInputConcreteType (const UE::Dataflow::FConnectionReference &InputReference, FName NewType)
 
DATAFLOWCORE_API bool SetOutputConcreteType (const UE::Dataflow::FConnectionReference &OutputReference, FName NewType)
 
DATAFLOWCORE_API bool IsAnytypeDependencyConnected (FName DependencyGroup, const FDataflowConnection *IgnoreConnection=nullptr) const
 
bool IsAsyncEvaluating () const
 
void SetAsyncEvaluating (bool bValue) const
 

Static Public Member Functions

static FName StaticType ()
 
- Static Public Member Functions inherited from FDataflowNode
static FName StaticType ()
 
static const FName GetActivePropertyName ()
 

Additional Inherited Members

- Public Attributes inherited from FDataflowNode
TMap< int, FDataflowOutput * > Outputs
 
bool bOverrideColor = false
 
FLinearColor OverrideColor = FLinearColor::White
 
- Static Public Attributes inherited from FDataflowNode
static DATAFLOWCORE_API const FName DataflowInput = TEXT("DataflowInput")
 
static DATAFLOWCORE_API const FName DataflowOutput = TEXT("DataflowOutput")
 
static DATAFLOWCORE_API const FName DataflowPassthrough = TEXT("DataflowPassthrough")
 
static DATAFLOWCORE_API const FName DataflowIntrinsic = TEXT("DataflowIntrinsic")
 
static DATAFLOWCORE_API const FName DataflowSkipConnection = TEXT("DataflowSkipConnection")
 
static DATAFLOWCORE_API const FLinearColor DefaultNodeTitleColor = FLinearColor(1.f, 1.f, 0.8f)
 
static DATAFLOWCORE_API const FLinearColor DefaultNodeBodyTintColor = FLinearColor(0.f, 0.f, 0.f, 0.5f)
 
- Protected Member Functions inherited from FDataflowNode
bool OnConnectionTypeChanged (const FDataflowConnection &Connection)
 
virtual DATAFLOWCORE_API FName GetDependentConnectionType (const FDataflowConnection &SourceConnection, const FDataflowConnection &DependentConnection) const
 
virtual bool OnInputTypeChanged (const FDataflowInput *Input)
 
virtual bool OnOutputTypeChanged (const FDataflowOutput *Output)
 
template<typename T >
bool SetInputConcreteType (const UE::Dataflow::FConnectionReference &InputReference)
 
template<typename T >
bool SetOutputConcreteType (const UE::Dataflow::FConnectionReference &OutputReference)
 
DATAFLOWCORE_API bool SetConnectionConcreteType (const UE::Dataflow::FConnectionKey &ConnectionKey, FName NewType)
 
DATAFLOWCORE_API bool SetConnectionConcreteType (FDataflowConnection *Connection, FName NewType, FName InTypeDependencyGroup=NAME_None)
 
DATAFLOWCORE_API bool SetAllConnectionConcreteType (FName NewType)
 
DATAFLOWCORE_API FDataflowInputRegisterInputConnectionInternal (const UE::Dataflow::FConnectionReference &Reference, const FName &PropertyName=NAME_None)
 
DATAFLOWCORE_API FDataflowOutputRegisterOutputConnectionInternal (const UE::Dataflow::FConnectionReference &Reference, const FName &PropertyName=NAME_None)
 
DATAFLOWCORE_API FDataflowInputRegisterInputArrayConnectionInternal (const UE::Dataflow::FConnectionReference &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
DATAFLOWCORE_API FDataflowOutputRegisterOutputArrayConnectionInternal (const UE::Dataflow::FConnectionReference &Reference, const FName &ElementPropertyName=NAME_None, const FName &ArrayPropertyName=NAME_None)
 
DATAFLOWCORE_API TSharedPtr< UE::Dataflow::FGraphGetDataflowGraph () const
 
- Protected Attributes inherited from FDataflowNode
bool bPauseInvalidations = false
 
UE::Dataflow::FTimestamp PausedModifiedTimestamp = UE::Dataflow::FTimestamp::Invalid
 
FOnNodeInvalidated OnNodeInvalidatedDelegate
 

Detailed Description

FDataflowTerminalNode Base class for terminal nodes within the Dataflow graph.

Terminal Nodes allow for non-const access to UObjects as edges in the graph. They are used to push data out to asset or the world from the calling client. Terminals may not have outputs, they are only leaf nodes in the evaluation graph.

Constructor & Destructor Documentation

◆ FDataflowTerminalNode() [1/2]

FDataflowTerminalNode::FDataflowTerminalNode ( )
inline

◆ FDataflowTerminalNode() [2/2]

FDataflowTerminalNode::FDataflowTerminalNode ( const UE::Dataflow::FNodeParameters Param,
FGuid  InGuid = FGuid::NewGuid() 
)
inline

◆ ~FDataflowTerminalNode()

virtual FDataflowTerminalNode::~FDataflowTerminalNode ( )
inlinevirtual

Member Function Documentation

◆ Evaluate()

virtual void FDataflowTerminalNode::Evaluate ( UE::Dataflow::FContext Context) const
inlinevirtual

◆ GetTerminalAsset()

virtual TObjectPtr< UObject > FDataflowTerminalNode::GetTerminalAsset ( ) const
inlinevirtual

Return the terminal asset

◆ IsA()

virtual bool FDataflowTerminalNode::IsA ( FName  InType) const
inlineoverridevirtual

Reimplemented from FDataflowNode.

◆ SetAssetValue()

virtual void FDataflowTerminalNode::SetAssetValue ( TObjectPtr< UObject Asset,
UE::Dataflow::FContext Context 
) const
inlinevirtual

◆ StaticType()

static FName FDataflowTerminalNode::StaticType ( )
inlinestatic

The documentation for this struct was generated from the following file: