5#include "Containers/Array.h"
35 return A.FromNode ==
B.FromNode &&
A.ToNode ==
B.ToNode;
45 if (
A.FromNode ==
B.FromNode)
47 return A.ToNode <
B.ToNode;
49 return A.FromNode <
B.FromNode;
108 return CyclicEdges.
IsValidIndex(EdgeIndex) && CyclicEdges[EdgeIndex] ==
true;
133 : bHasDanglingEdges(
false)
183 friend FDepthFirstSearch;
184 friend FBreadthFirstSearch;
185 friend FDiscoverCyclicEdges;
189 bool bHasDanglingEdges;
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition ArrayView.h:139
UE_FORCEINLINE_HINT bool IsValidIndex(int32 InIndex) const
Definition BitArray.h:1450
Definition AssetRegistryState.h:50
Definition ConstraintsManager.h:14
@ false
Definition radaudio_common.h:23
static CORE_API const FColor Black
Definition Color.h:750
Definition MovieSceneEntitySystemDirectedGraph.h:16
FColor Color
Definition MovieSceneEntitySystemDirectedGraph.h:18
FStringView ClusterName
Definition MovieSceneEntitySystemDirectedGraph.h:17
Definition MovieSceneEntitySystemDirectedGraph.h:81
MOVIESCENE_API void Search(uint16 Node)
Definition MovieSceneEntitySystemDirectedGraph.cpp:52
TArray< uint16 > Nodes
Definition MovieSceneEntitySystemDirectedGraph.h:82
const TBitArray & GetVisited() const
Definition MovieSceneEntitySystemDirectedGraph.h:88
Definition MovieSceneEntitySystemDirectedGraph.h:60
const TBitArray & GetVisited() const
Definition MovieSceneEntitySystemDirectedGraph.h:67
MOVIESCENE_API void Search(uint16 Node)
Definition MovieSceneEntitySystemDirectedGraph.cpp:21
TArray< uint16 > PostNodes
Definition MovieSceneEntitySystemDirectedGraph.h:61
Definition MovieSceneEntitySystemDirectedGraph.h:27
FDirectionalEdge(uint16 InFromNode, uint16 InToNode)
Definition MovieSceneEntitySystemDirectedGraph.h:28
friend bool operator==(const FDirectionalEdge &A, const FDirectionalEdge &B)
Definition MovieSceneEntitySystemDirectedGraph.h:33
friend bool operator<(const FDirectionalEdge &A, const FDirectionalEdge &B)
Definition MovieSceneEntitySystemDirectedGraph.h:43
friend bool operator!=(const FDirectionalEdge &A, const FDirectionalEdge &B)
Definition MovieSceneEntitySystemDirectedGraph.h:38
uint16 FromNode
Definition MovieSceneEntitySystemDirectedGraph.h:52
uint16 ToNode
Definition MovieSceneEntitySystemDirectedGraph.h:54
Definition MovieSceneEntitySystemDirectedGraph.h:101
MOVIESCENE_API void Search(uint16 Node)
const TBitArray & GetCyclicEdges() const
Definition MovieSceneEntitySystemDirectedGraph.h:111
MOVIESCENE_API void SearchFrom(uint16 NodeID)
Definition MovieSceneEntitySystemDirectedGraph.cpp:109
MOVIESCENE_API void Search()
Definition MovieSceneEntitySystemDirectedGraph.cpp:93
bool IsCyclic(const uint16 EdgeIndex) const
Definition MovieSceneEntitySystemDirectedGraph.h:106
Definition MovieSceneEntitySystemDirectedGraph.h:25
MOVIESCENE_API bool IsNodeAllocated(uint16 NodeID) const
Definition MovieSceneEntitySystemDirectedGraph.cpp:168
MOVIESCENE_API void MakeEdge(uint16 FromNode, uint16 ToNode)
Definition MovieSceneEntitySystemDirectedGraph.cpp:249
MOVIESCENE_API TArrayView< const FDirectionalEdge > GetEdges() const
Definition MovieSceneEntitySystemDirectedGraph.cpp:282
MOVIESCENE_API bool IsCyclic() const
Definition MovieSceneEntitySystemDirectedGraph.cpp:205
MOVIESCENE_API TArrayView< const FDirectionalEdge > GetEdgesFrom(uint16 InNode) const
Definition MovieSceneEntitySystemDirectedGraph.cpp:300
MOVIESCENE_API void DestroyAllEdges()
Definition MovieSceneEntitySystemDirectedGraph.cpp:271
MOVIESCENE_API bool HasEdgeFrom(uint16 InNode) const
Definition MovieSceneEntitySystemDirectedGraph.cpp:288
FDirectedGraph()
Definition MovieSceneEntitySystemDirectedGraph.h:132
MOVIESCENE_API void DestroyEdge(uint16 FromNode, uint16 ToNode)
Definition MovieSceneEntitySystemDirectedGraph.cpp:260
MOVIESCENE_API void RemoveNode(uint16 NodeID)
Definition MovieSceneEntitySystemDirectedGraph.cpp:173
MOVIESCENE_API bool HasEdgeTo(uint16 InNode) const
Definition MovieSceneEntitySystemDirectedGraph.cpp:294
const TBitArray & GetNodeMask() const
Definition MovieSceneEntitySystemDirectedGraph.h:144
MOVIESCENE_API void AllocateNode(uint16 NodeID)
Definition MovieSceneEntitySystemDirectedGraph.cpp:161
MOVIESCENE_API void CleanUpDanglingEdges()
Definition MovieSceneEntitySystemDirectedGraph.cpp:183
MOVIESCENE_API TBitArray FindEdgeUpstreamNodes() const
Definition MovieSceneEntitySystemDirectedGraph.cpp:319