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

#include <DataflowConnection.h>

+ Inheritance diagram for FDataflowConnection:

Public Member Functions

 FDataflowConnection ()
 
DATAFLOWCORE_API FDataflowConnection (UE::Dataflow::FPin::EDirection Direction, FName InType, FName InName, FDataflowNode *OwningNode=nullptr, const FProperty *InProperty=nullptr, FGuid InGuid=FGuid::NewGuid())
 
DATAFLOWCORE_API FDataflowConnection (UE::Dataflow::FPin::EDirection Direction, const UE::Dataflow::FConnectionParameters &Params)
 
virtual ~FDataflowConnection ()
 
FDataflowNodeGetOwningNode ()
 
const FDataflowNodeGetOwningNode () const
 
DATAFLOWCORE_API FGuid GetOwningNodeGuid () const
 
DATAFLOWCORE_API uint32 GetOwningNodeValueHash () const
 
DATAFLOWCORE_API UE::Dataflow::FTimestamp GetOwningNodeTimestamp () const
 
const FPropertyGetProperty () const
 
DATAFLOWCORE_API FString GetPropertyTooltip () const
 
DATAFLOWCORE_API FString GetPropertyTypeNameTooltip () const
 
UE::Dataflow::FPin::EDirection GetDirection () const
 
uint32 GetOffset () const
 
virtual int32 GetContainerIndex () const
 
virtual uint32 GetContainerElementOffset () const
 
UE::Dataflow::FConnectionKey GetConnectionKey () const
 
DATAFLOWCORE_API bool SetConcreteType (FName InType)
 
void LockType ()
 
void UnlockType ()
 
bool IsTypeLocked () const
 
FName GetType () const
 
FName GetOriginalType () const
 
template<typename T >
bool IsType () const
 
FGuid GetGuid () const
 
void SetGuid (FGuid InGuid)
 
FName GetName () const
 
void SetName (FName InName)
 
virtual voidRealAddress () const
 
UE::Dataflow::FContextCacheKey CacheKey () const
 
DATAFLOWCORE_API bool IsSafeToTryChangingType () const
 
virtual bool IsConnected () const
 
virtual bool AddConnection (FDataflowConnection *In)
 
virtual bool RemoveConnection (FDataflowConnection *In)
 
virtual void GetConnections (TArray< FDataflowConnection * > &OutConnections) const
 
bool IsAnyType () const
 
bool HasConcreteType () const
 
DATAFLOWCORE_API void SetTypePolicy (IDataflowTypePolicy *InTypePolicy)
 
DATAFLOWCORE_API bool SupportsType (FName InType) const
 
DATAFLOWCORE_API FDataflowConnectionSetTypeDependencyGroup (FName DependencyGroupName)
 
FName GetTypeDependencyGroup () const
 
DATAFLOWCORE_API bool IsAnytypeDependencyConnected () const
 
template<class T >
bool IsA (const T *InVar) const
 
virtual void Invalidate (const UE::Dataflow::FTimestamp &ModifiedTimestamp=UE::Dataflow::FTimestamp::Current())
 
bool GetCanHidePin () const
 
bool GetPinIsHidden () const
 
FDataflowConnectionSetCanHidePin (bool bInCanHidePin)
 
FDataflowConnectionSetPinIsHidden (bool bInPinIsHidden)
 

Static Public Member Functions

static DATAFLOWCORE_API bool IsAnyType (const FName &InType)
 
static DATAFLOWCORE_API FName GetTypeNameFromProperty (const FProperty *Property)
 

Protected Member Functions

DATAFLOWCORE_API void SetTypeInternal (FName NewType)
 
DATAFLOWCORE_API bool IsOwningNodeEnabled () const
 
DATAFLOWCORE_API void SetAsAnyType (bool bAnyType, const FName &ConcreteType)
 
DATAFLOWCORE_API void ForceSimpleType (FName InType)
 
DATAFLOWCORE_API void FixAndPropagateType ()
 
virtual void FixAndPropagateType (FName InType)
 
DATAFLOWCORE_API bool IsExtendedType (FName InType) const
 
DATAFLOWCORE_API bool ResetToOriginalType ()
 
DATAFLOWCORE_API void Rename (FName NewName)
 
DATAFLOWCORE_API void ForceTypeDependencyGroup (FName InTypeDependencyGroup)
 

Protected Attributes

FDataflowNodeOwningNode = nullptr
 
const FPropertyProperty = nullptr
 
FGuid Guid
 
IDataflowTypePolicyTypePolicy = nullptr
 
uint32 Offset
 
UE::Dataflow::FPin::EDirection Direction
 
bool bIsAnyType:1 = false
 
bool bHasConcreteType: 1 = false
 
bool bCanHidePin:1 = false
 
bool bPinIsHidden:1 = false
 

Friends

struct FDataflowNode
 
class UE::Dataflow::FGraph
 

Constructor & Destructor Documentation

◆ FDataflowConnection() [1/3]

FDataflowConnection::FDataflowConnection ( )
inline

◆ FDataflowConnection() [2/3]

FDataflowConnection::FDataflowConnection ( UE::Dataflow::FPin::EDirection  Direction,
FName  InType,
FName  InName,
FDataflowNode OwningNode = nullptr,
const FProperty InProperty = nullptr,
FGuid  InGuid = FGuid::NewGuid() 
)

◆ FDataflowConnection() [3/3]

FDataflowConnection::FDataflowConnection ( UE::Dataflow::FPin::EDirection  Direction,
const UE::Dataflow::FConnectionParameters Params 
)

◆ ~FDataflowConnection()

virtual FDataflowConnection::~FDataflowConnection ( )
inlinevirtual

Member Function Documentation

◆ AddConnection()

virtual bool FDataflowConnection::AddConnection ( FDataflowConnection In)
inlinevirtual

Reimplemented in FDataflowInput, and FDataflowOutput.

◆ CacheKey()

UE::Dataflow::FContextCacheKey FDataflowConnection::CacheKey ( ) const
inline

◆ FixAndPropagateType() [1/2]

void FDataflowConnection::FixAndPropagateType ( )
protected

◆ FixAndPropagateType() [2/2]

virtual void FDataflowConnection::FixAndPropagateType ( FName  InType)
inlineprotectedvirtual

Reimplemented in FDataflowInput, and FDataflowOutput.

◆ ForceSimpleType()

void FDataflowConnection::ForceSimpleType ( FName  InType)
protected

this should only be used for serialization - for support of old simple TArray types

◆ ForceTypeDependencyGroup()

void FDataflowConnection::ForceTypeDependencyGroup ( FName  InTypeDependencyGroup)
protected

◆ GetCanHidePin()

bool FDataflowConnection::GetCanHidePin ( ) const
inline

◆ GetConnectionKey()

UE::Dataflow::FConnectionKey FDataflowConnection::GetConnectionKey ( ) const
inline

◆ GetConnections()

virtual void FDataflowConnection::GetConnections ( TArray< FDataflowConnection * > &  OutConnections) const
inlinevirtual

Reimplemented in FDataflowInput, and FDataflowOutput.

◆ GetContainerElementOffset()

virtual uint32 FDataflowConnection::GetContainerElementOffset ( ) const
inlinevirtual

Reimplemented in FDataflowArrayInput, and FDataflowArrayOutput.

◆ GetContainerIndex()

virtual int32 FDataflowConnection::GetContainerIndex ( ) const
inlinevirtual

Reimplemented in FDataflowArrayInput, and FDataflowArrayOutput.

◆ GetDirection()

UE::Dataflow::FPin::EDirection FDataflowConnection::GetDirection ( ) const
inline

◆ GetGuid()

FGuid FDataflowConnection::GetGuid ( ) const
inline

◆ GetName()

FName FDataflowConnection::GetName ( ) const
inline

◆ GetOffset()

uint32 FDataflowConnection::GetOffset ( ) const
inline

◆ GetOriginalType()

FName FDataflowConnection::GetOriginalType ( ) const
inline

◆ GetOwningNode() [1/2]

FDataflowNode * FDataflowConnection::GetOwningNode ( )
inline

◆ GetOwningNode() [2/2]

const FDataflowNode * FDataflowConnection::GetOwningNode ( ) const
inline

◆ GetOwningNodeGuid()

FGuid FDataflowConnection::GetOwningNodeGuid ( ) const

◆ GetOwningNodeTimestamp()

UE::Dataflow::FTimestamp FDataflowConnection::GetOwningNodeTimestamp ( ) const

◆ GetOwningNodeValueHash()

uint32 FDataflowConnection::GetOwningNodeValueHash ( ) const

◆ GetPinIsHidden()

bool FDataflowConnection::GetPinIsHidden ( ) const
inline

◆ GetProperty()

const FProperty * FDataflowConnection::GetProperty ( ) const
inline

◆ GetPropertyTooltip()

FString FDataflowConnection::GetPropertyTooltip ( ) const

◆ GetPropertyTypeNameTooltip()

FString FDataflowConnection::GetPropertyTypeNameTooltip ( ) const

◆ GetType()

FName FDataflowConnection::GetType ( ) const
inline

◆ GetTypeDependencyGroup()

FName FDataflowConnection::GetTypeDependencyGroup ( ) const
inline

◆ GetTypeNameFromProperty()

FName FDataflowConnection::GetTypeNameFromProperty ( const FProperty Property)
static

extract the type name from a FProperty this method make sure the resulting typename is consistent with Dataflow standard where there's no space in the name for example FProperty returns : "TArray<TObjectPtr<UObject> >" but dataflow compatible typename is "TArray<TObjectPtr<UObject>>"

◆ HasConcreteType()

bool FDataflowConnection::HasConcreteType ( ) const
inline

◆ Invalidate()

virtual void FDataflowConnection::Invalidate ( const UE::Dataflow::FTimestamp ModifiedTimestamp = UE::Dataflow::FTimestamp::Current())
inlinevirtual

Reimplemented in FDataflowInput, and FDataflowOutput.

◆ IsA()

template<class T >
bool FDataflowConnection::IsA ( const T *  InVar) const
inline

◆ IsAnyType() [1/2]

bool FDataflowConnection::IsAnyType ( ) const
inline

◆ IsAnyType() [2/2]

bool FDataflowConnection::IsAnyType ( const FName InType)
static

◆ IsAnytypeDependencyConnected()

bool FDataflowConnection::IsAnytypeDependencyConnected ( ) const

◆ IsConnected()

virtual bool FDataflowConnection::IsConnected ( ) const
inlinevirtual

Reimplemented in FDataflowInput, and FDataflowOutput.

◆ IsExtendedType()

bool FDataflowConnection::IsExtendedType ( FName  InType) const
protected

returns true is the parameter type is an extension of the current type TArray<int> from TArray for example

◆ IsOwningNodeEnabled()

bool FDataflowConnection::IsOwningNodeEnabled ( ) const
protected

◆ IsSafeToTryChangingType()

bool FDataflowConnection::IsSafeToTryChangingType ( ) const

◆ IsType()

template<typename T >
bool FDataflowConnection::IsType ( ) const
inline

◆ IsTypeLocked()

bool FDataflowConnection::IsTypeLocked ( ) const
inline

◆ LockType()

void FDataflowConnection::LockType ( )
inline

◆ RealAddress()

virtual void * FDataflowConnection::RealAddress ( ) const
inlinevirtual

Reimplemented in FDataflowArrayInput, and FDataflowArrayOutput.

◆ RemoveConnection()

virtual bool FDataflowConnection::RemoveConnection ( FDataflowConnection In)
inlinevirtual

Reimplemented in FDataflowOutput, and FDataflowInput.

◆ Rename()

void FDataflowConnection::Rename ( FName  NewName)
protected

◆ ResetToOriginalType()

bool FDataflowConnection::ResetToOriginalType ( )
protected

reset the output to its original type no-op for non enytypes types Anytypes connection will fail if it is already connected or has connected type dependencies

Returns
true if the change was made

◆ SetAsAnyType()

void FDataflowConnection::SetAsAnyType ( bool  bAnyType,
const FName ConcreteType 
)
protected

this should only be used for serialization

◆ SetCanHidePin()

FDataflowConnection & FDataflowConnection::SetCanHidePin ( bool  bInCanHidePin)
inline

◆ SetConcreteType()

bool FDataflowConnection::SetConcreteType ( FName  InType)

Set the concrete type of an anytype connection Changing the type may fail or assert if :

  • the connection is connected to another one,
  • the type is incompatible with the original type
  • the type has any type dependencies connected
  • the type is locked ( see LockType() ) (see IsSafeToTryChangingType)
    Returns
    true if the type was effectivelly changed

◆ SetGuid()

void FDataflowConnection::SetGuid ( FGuid  InGuid)
inline

◆ SetName()

void FDataflowConnection::SetName ( FName  InName)
inline

◆ SetPinIsHidden()

FDataflowConnection & FDataflowConnection::SetPinIsHidden ( bool  bInPinIsHidden)
inline

◆ SetTypeDependencyGroup()

FDataflowConnection & FDataflowConnection::SetTypeDependencyGroup ( FName  DependencyGroupName)

◆ SetTypeInternal()

void FDataflowConnection::SetTypeInternal ( FName  NewType)
protected

◆ SetTypePolicy()

void FDataflowConnection::SetTypePolicy ( IDataflowTypePolicy InTypePolicy)

◆ SupportsType()

bool FDataflowConnection::SupportsType ( FName  InType) const

◆ UnlockType()

void FDataflowConnection::UnlockType ( )
inline

Friends And Related Symbol Documentation

◆ FDataflowNode

◆ UE::Dataflow::FGraph

Member Data Documentation

◆ bCanHidePin

bool FDataflowConnection::bCanHidePin
protected

◆ bHasConcreteType

bool FDataflowConnection::bHasConcreteType
protected

◆ bIsAnyType

bool FDataflowConnection::bIsAnyType
protected

◆ bPinIsHidden

bool FDataflowConnection::bPinIsHidden
protected

◆ Direction

UE::Dataflow::FPin::EDirection FDataflowConnection::Direction
protected

◆ Guid

FGuid FDataflowConnection::Guid
protected

◆ Offset

uint32 FDataflowConnection::Offset
protected

◆ OwningNode

FDataflowNode* FDataflowConnection::OwningNode = nullptr
protected

◆ Property

const FProperty* FDataflowConnection::Property = nullptr
protected

◆ TypePolicy

IDataflowTypePolicy* FDataflowConnection::TypePolicy = nullptr
protected

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