From cc23ba0b8a39638687393dcb777e29f4a39a4128 Mon Sep 17 00:00:00 2001 From: DCFApixels <99481254+DCFApixels@users.noreply.github.com> Date: Wed, 20 Nov 2024 16:46:41 +0800 Subject: [PATCH] renaming --- src/EntityGraph.cs | 4 +- src/Executors/GraphQueries.cs | 14 +-- src/Executors/JoinToSubGraphExecutor.cs | 156 ++++++++++++------------ 3 files changed, 87 insertions(+), 87 deletions(-) diff --git a/src/EntityGraph.cs b/src/EntityGraph.cs index 8f97368..705ca7e 100644 --- a/src/EntityGraph.cs +++ b/src/EntityGraph.cs @@ -236,10 +236,10 @@ namespace DCFApixels.DragonECS #region Callbacks public void OnReleaseDelEntityBuffer(ReadOnlySpan delEntities) { - EcsSubGraph subGraph; + SubGraphMap subGraph; EcsWorld graphWorld = _graph._graphWorld; - subGraph = graphWorld.JoinGraph(EcsSubGraphMode.All); + subGraph = graphWorld.JoinGraph(JoinMode.All); foreach (var sourceE in delEntities) { var relEs = subGraph.GetRelations(sourceE); diff --git a/src/Executors/GraphQueries.cs b/src/Executors/GraphQueries.cs index f942e8a..c33541f 100644 --- a/src/Executors/GraphQueries.cs +++ b/src/Executors/GraphQueries.cs @@ -6,7 +6,7 @@ namespace DCFApixels.DragonECS public static class GraphQueriesExtensions { #region JoinToGraph Empty - public static EcsSubGraph JoinGraph(this EcsWorld entities, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinGraph(this EcsWorld entities, JoinMode mode = JoinMode.StartToEnd) { entities.GetQueryCache(out JoinToSubGraphExecutor executor, out EmptyAspect _); return executor.Execute(mode); @@ -14,7 +14,7 @@ namespace DCFApixels.DragonECS #endregion #region JoinToGraph Mask - public static EcsSubGraph JoinSubGraph(this TCollection entities, IComponentMask mask, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this TCollection entities, IComponentMask mask, JoinMode mode = JoinMode.StartToEnd) where TCollection : IEntityStorage { if (ReferenceEquals(entities, entities.World)) @@ -24,11 +24,11 @@ namespace DCFApixels.DragonECS } return entities.ToSpan().JoinSubGraph(mask, mode); } - public static EcsSubGraph JoinSubGraph(this EcsReadonlyGroup group, IComponentMask mask, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this EcsReadonlyGroup group, IComponentMask mask, JoinMode mode = JoinMode.StartToEnd) { return group.ToSpan().JoinSubGraph(mask, mode); } - public static EcsSubGraph JoinSubGraph(this EcsSpan span, IComponentMask mask, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this EcsSpan span, IComponentMask mask, JoinMode mode = JoinMode.StartToEnd) { var executor = span.World.GetExecutorForMask(mask); return executor.ExecuteFor(span, mode); @@ -36,7 +36,7 @@ namespace DCFApixels.DragonECS #endregion #region JoinToGraph - public static EcsSubGraph JoinSubGraph(this TCollection entities, out TAspect aspect, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this TCollection entities, out TAspect aspect, JoinMode mode = JoinMode.StartToEnd) where TAspect : EcsAspect, new() where TCollection : IEntityStorage { @@ -47,12 +47,12 @@ namespace DCFApixels.DragonECS } return entities.ToSpan().JoinSubGraph(out aspect, mode); } - public static EcsSubGraph JoinSubGraph(this EcsReadonlyGroup group, out TAspect aspect, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this EcsReadonlyGroup group, out TAspect aspect, JoinMode mode = JoinMode.StartToEnd) where TAspect : EcsAspect, new() { return group.ToSpan().JoinSubGraph(out aspect, mode); } - public static EcsSubGraph JoinSubGraph(this EcsSpan span, out TAspect aspect, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public static SubGraphMap JoinSubGraph(this EcsSpan span, out TAspect aspect, JoinMode mode = JoinMode.StartToEnd) where TAspect : EcsAspect, new() { span.World.GetQueryCache(out JoinToSubGraphExecutor executor, out aspect); diff --git a/src/Executors/JoinToSubGraphExecutor.cs b/src/Executors/JoinToSubGraphExecutor.cs index 876727c..7c58df3 100644 --- a/src/Executors/JoinToSubGraphExecutor.cs +++ b/src/Executors/JoinToSubGraphExecutor.cs @@ -81,7 +81,7 @@ namespace DCFApixels.DragonECS.Graphs.Internal #region Execute [MethodImpl(MethodImplOptions.AggressiveInlining)] - private EcsSubGraph Execute_Internal(EcsSubGraphMode mode) + private SubGraphMap Execute_Internal(JoinMode mode) { //_executeMarker.Begin(); @@ -121,14 +121,14 @@ namespace DCFApixels.DragonECS.Graphs.Internal _linkedList.Clear(); //Заполнение массивов - if ((mode & EcsSubGraphMode.StartToEnd) != 0) + if ((mode & JoinMode.StartToEnd) != 0) { for (int i = 0; i < _filteredAllEntitiesCount; i++) { AddStart(_filteredAllEntities[i]); } } - if ((mode & EcsSubGraphMode.EndToStart) != 0) + if ((mode & JoinMode.EndToStart) != 0) { for (int i = 0; i < _filteredAllEntitiesCount; i++) { @@ -140,10 +140,10 @@ namespace DCFApixels.DragonECS.Graphs.Internal _version++; //_executeMarker.End(); - return new EcsSubGraph(this); + return new SubGraphMap(this); } [MethodImpl(MethodImplOptions.AggressiveInlining)] - private EcsSubGraph ExecuteFor_Internal(EcsSpan span, EcsSubGraphMode mode) + private SubGraphMap ExecuteFor_Internal(EcsSpan span, JoinMode mode) { //_executeMarker.Begin(); #if (DEBUG && !DISABLE_DEBUG) || ENABLE_DRAGONECS_ASSERT_CHEKS @@ -184,14 +184,14 @@ namespace DCFApixels.DragonECS.Graphs.Internal _linkedList.Clear(); //Заполнение массивов - if ((mode & EcsSubGraphMode.StartToEnd) != 0) + if ((mode & JoinMode.StartToEnd) != 0) { for (int i = 0; i < _filteredEntitiesCount; i++) { AddStart(_filteredEntities[i]); } } - if ((mode & EcsSubGraphMode.EndToStart) != 0) + if ((mode & JoinMode.EndToStart) != 0) { for (int i = 0; i < _filteredEntitiesCount; i++) { @@ -201,14 +201,14 @@ namespace DCFApixels.DragonECS.Graphs.Internal //_executeMarker.End(); - return new EcsSubGraph(this); + return new SubGraphMap(this); } - public EcsSubGraph Execute(EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public SubGraphMap Execute(JoinMode mode = JoinMode.StartToEnd) { return Execute_Internal(mode); } - public EcsSubGraph ExecuteFor(EcsSpan span, EcsSubGraphMode mode = EcsSubGraphMode.StartToEnd) + public SubGraphMap ExecuteFor(EcsSpan span, JoinMode mode = JoinMode.StartToEnd) { return ExecuteFor_Internal(span, mode); } @@ -246,10 +246,10 @@ namespace DCFApixels.DragonECS.Graphs.Internal #region Internal result methods [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal EcsSubGraphSpan GetRelations_Internal(int sourceEntityID) + internal SubGraphMap.Node GetRelations_Internal(int sourceEntityID) { LinkedListHead basket = _linkedListSourceHeads[sourceEntityID]; - return new EcsSubGraphSpan(_linkedList._nodes, basket.head, basket.count); + return new SubGraphMap.Node(_linkedList._nodes, basket.head, basket.count); } [MethodImpl(MethodImplOptions.AggressiveInlining)] internal int GetRelation_Internal(int sourceEntityID) @@ -305,7 +305,7 @@ namespace DCFApixels.DragonECS.Graphs.Internal namespace DCFApixels.DragonECS { - public enum EcsSubGraphMode : byte + public enum JoinMode : byte { NONE = 0, StartToEnd = 1 << 0, @@ -313,15 +313,15 @@ namespace DCFApixels.DragonECS All = StartToEnd | EndToStart, } - #region EcsSubGraphSpan/EcsSubGraph - public readonly ref struct EcsSubGraph + #region SubGraphMap/SubGraphMapNode + public readonly ref struct SubGraphMap { private readonly JoinToSubGraphExecutor _executer; public EntityGraph Graph { get { return _executer.Graph; } } - internal EcsSubGraph(JoinToSubGraphExecutor executer) + internal SubGraphMap(JoinToSubGraphExecutor executer) { _executer = executer; } @@ -333,7 +333,7 @@ namespace DCFApixels.DragonECS { return _executer.GetRelEntities(); } - public EcsSubGraphSpan GetRelations(int startEntityID) + public Node GetRelations(int startEntityID) { return _executer.GetRelations_Internal(startEntityID); } @@ -345,74 +345,74 @@ namespace DCFApixels.DragonECS { return _executer.GetRelationsCount_Internal(startEntityID); } - } - public readonly ref struct EcsSubGraphSpan - { - public static EcsSubGraphSpan Empty + public readonly ref struct Node { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get { return new EcsSubGraphSpan(null, 0, 0); } - } - - private readonly LinkedList.Node[] _nodes; - private readonly LinkedList.NodeIndex _startNodeIndex; - private readonly int _count; - public int Count - { - [MethodImpl(MethodImplOptions.AggressiveInlining)] - get { return _count; } - } - private IEnumerable E - { - get - { - List result = new List(); - foreach (var item in this) - { - result.Add(item); - } - return result; - } - } - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal EcsSubGraphSpan(LinkedList.Node[] nodes, LinkedList.NodeIndex startNodeIndex, int count) - { - _nodes = nodes; - _startNodeIndex = startNodeIndex; - _count = count; - } - [MethodImpl(MethodImplOptions.AggressiveInlining)] - public Enumerator GetEnumerator() - { - return new Enumerator(_nodes, _startNodeIndex, _count); - } - public ref struct Enumerator - { - private readonly LinkedList.Node[] _nodes; - private int _index; - private int _count; - private int _next; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal Enumerator(LinkedList.Node[] nodes, LinkedList.NodeIndex startIndex, int count) - { - _nodes = nodes; - _index = -1; - _count = count; - _next = (int)startIndex; - } - public int Current + public static Node Empty { [MethodImpl(MethodImplOptions.AggressiveInlining)] - get { return _nodes[_index].entityID; } + get { return new Node(null, 0, 0); } + } + + private readonly LinkedList.Node[] _nodes; + private readonly LinkedList.NodeIndex _startNodeIndex; + private readonly int _count; + public int Count + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + get { return _count; } + } + private IEnumerable E + { + get + { + List result = new List(); + foreach (var item in this) + { + result.Add(item); + } + return result; + } } [MethodImpl(MethodImplOptions.AggressiveInlining)] - public bool MoveNext() + internal Node(LinkedList.Node[] nodes, LinkedList.NodeIndex startNodeIndex, int count) { - _index = _next; - _next = (int)_nodes[_next].next; - return _index > 0 && _count-- > 0; - //return _count-- > 0; + _nodes = nodes; + _startNodeIndex = startNodeIndex; + _count = count; + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public Enumerator GetEnumerator() + { + return new Enumerator(_nodes, _startNodeIndex, _count); + } + public ref struct Enumerator + { + private readonly LinkedList.Node[] _nodes; + private int _index; + private int _count; + private int _next; + [MethodImpl(MethodImplOptions.AggressiveInlining)] + internal Enumerator(LinkedList.Node[] nodes, LinkedList.NodeIndex startIndex, int count) + { + _nodes = nodes; + _index = -1; + _count = count; + _next = (int)startIndex; + } + public int Current + { + [MethodImpl(MethodImplOptions.AggressiveInlining)] + get { return _nodes[_index].entityID; } + } + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool MoveNext() + { + _index = _next; + _next = (int)_nodes[_next].next; + return _index > 0 && _count-- > 0; + //return _count-- > 0; + } } } }