UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DataflowCoreNodes.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "ChaosLog.h"
6#include "CoreMinimal.h"
10
11#include "DataflowCoreNodes.generated.h"
12
13struct FDataflowOutput;
14
15USTRUCT()
17{
19
20 DATAFLOW_NODE_DEFINE_INTERNAL(FDataflowReRouteNode, "ReRouteNode", "Core", "")
21
22public:
24 virtual void Evaluate(UE::Dataflow::FContext& Context, const FDataflowOutput* Out) const;
25
26
27public:
28 UPROPERTY(meta = (DataflowInput, DataflowOutput, DataflowPassthrough = "Value", DisplayName = "Value"))
30};
31
34{
36
37 DATAFLOW_NODE_DEFINE_INTERNAL(FDataflowBranchNode, "Branch", "FlowControl", "")
38
39public:
41 virtual void Evaluate(UE::Dataflow::FContext& Context, const FDataflowOutput* Out) const;
42
43public:
44 UPROPERTY(meta = (DataflowInput, DataflowIntrinsic, DisplayName = "TrueValue"))
46
47 UPROPERTY(meta = (DataflowInput, DataflowIntrinsic, DisplayName = "FalseValue"))
48 FDataflowAnyType FalseValue;
49
50 UPROPERTY(EditAnywhere, Category="Condition", meta = (DataflowInput, DisplayName = "Condition"))
51 bool bCondition = true;
52
53 UPROPERTY(meta = (DataflowOutput, DisplayName = "Result"))
55};
56
57
60{
62
63 DATAFLOW_NODE_DEFINE_INTERNAL(FDataflowSelectNode, "Select", "FlowControl", "")
64
65public:
67 virtual void Evaluate(UE::Dataflow::FContext& Context, const FDataflowOutput* Out) const;
68
69public:
70 UPROPERTY()
72
73 UPROPERTY(EditAnywhere, Category = "Condition", meta = (DataflowInput))
74 int32 SelectedIndex = 0;
75
76 UPROPERTY(meta = (DataflowOutput, DataflowPassthrough = "Inputs[0]"))
78
80 virtual TArray<UE::Dataflow::FPin> AddPins() override;
81 virtual bool CanAddPin() const override { return true; }
82 virtual bool CanRemovePin() const override { return Inputs.Num() > NumInitialInputs; }
83 virtual TArray<UE::Dataflow::FPin> GetPinsToRemove() const override;
84 virtual void OnPinRemoved(const UE::Dataflow::FPin& Pin) override;
85 virtual void PostSerialize(const FArchive& Ar) override;
86
88
89 static constexpr int32 NumRequiredDataflowInputs = 1;
90 static constexpr int32 NumInitialInputs = 2;
91 static const FName MainTypeGroup;
92};
93
98USTRUCT()
100{
102
104
105public:
107 virtual void Evaluate(UE::Dataflow::FContext& Context, const FDataflowOutput* Out) const;
108
109public:
110 UPROPERTY(meta = (DataflowInput, DisplayName = "Value"))
112};
113
117USTRUCT()
119{
121
122 DATAFLOW_NODE_DEFINE_INTERNAL(FDataflowForceDependencyNode, "ForceDependency", "FlowControl", "")
123
124public:
126 virtual void Evaluate(UE::Dataflow::FContext& Context, const FDataflowOutput* Out) const;
127
128
129public:
130
131 /* Evaluating Value will force an evaluation of DependentValue*/
132 UPROPERTY(meta = (DataflowInput, DataflowOutput, DataflowPassthrough = "Value"))
134
135 /* Evaluating Value will force an evaluation of DependentValue*/
136 UPROPERTY(meta = (DataflowInput))
137 FDataflowAnyType DependentValue;
138};
139
140namespace UE::Dataflow
141{
142 void RegisterCoreNodes();
143}
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DATAFLOW_NODE_DEFINE_INTERNAL(TYPE, DISPLAY_NAME, CATEGORY, TAGS)
Definition DataflowNode.h:951
return true
Definition ExternalRpcRegistry.cpp:601
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
Definition Archive.h:1208
Definition NameTypes.h:617
Definition Array.h:670
Definition DataflowNodeParameters.h:134
void PostSerialize(const FArchive &Ar, void *Data)
Definition Class.h:1300
Definition AdvancedWidgetsModule.cpp:13
U16 Index
Definition radfft.cpp:71
Definition DataflowAnyType.h:13
Definition DataflowCoreNodes.h:34
Definition DataflowCoreNodes.h:119
Definition DataflowNode.h:52
Definition DataflowInputOutput.h:149
DATAFLOWCORE_API bool Evaluate(UE::Dataflow::FContext &Context) const
Definition DataflowInputOutput.cpp:267
Definition DataflowCoreNodes.h:100
Definition DataflowCoreNodes.h:17
Definition DataflowCoreNodes.h:60
Definition DataflowAnyType.h:117
Definition Guid.h:109
static CORE_API FGuid NewGuid()
Definition Guid.cpp:236
Definition DataflowNode.h:22
Definition DataflowConnection.h:28
Definition DataflowConnection.h:84