diff --git a/TNode/Models/NodeData.cs b/TNode/Models/NodeData.cs index 53a5aef..d9c6bf9 100644 --- a/TNode/Models/NodeData.cs +++ b/TNode/Models/NodeData.cs @@ -21,6 +21,12 @@ namespace TNode.Models{ public string id; public string nodeName; public bool entryPoint; + + + public virtual void OnProcess(){ + + } + // #if UNITY_EDITOR // public Rect rect; // #endif diff --git a/TNode/Runtime/RuntimeGraph.cs b/TNode/Runtime/RuntimeGraph.cs index 51bc5fa..9388f77 100644 --- a/TNode/Runtime/RuntimeGraph.cs +++ b/TNode/Runtime/RuntimeGraph.cs @@ -7,9 +7,16 @@ namespace TNode.Runtime{ public class RuntimeGraph:MonoBehaviour{ public GraphData graphData; public SortedSet _sortedSet; - - public void StartProcessNode(ProcessingStrategy strategy){ + public void Start(){ + //iterate through all nodes and add them to the sorted set + foreach (var node in graphData.NodeDictionary.Values){ + + } + } + + public void StartProcessNode(ProcessingStrategy strategy, RuntimeNode entry){ + } diff --git a/TNode/Runtime/RuntimeNode.cs b/TNode/Runtime/RuntimeNode.cs index 1cbef18..2376057 100644 --- a/TNode/Runtime/RuntimeNode.cs +++ b/TNode/Runtime/RuntimeNode.cs @@ -6,21 +6,10 @@ using TNode.Models; namespace TNode.Runtime{ public abstract class RuntimeNode{ - public object NodeData; + public NodeData NodeData; public List NodeLinks; public void ProcessThisNode(){ - - } - - } - public class RuntimeNode:RuntimeNode where T:NodeData{ - public new T NodeData{ get; set; } - - //Links related to runtime node,for fast access.only remember out links - public List NodeLinks; - - public void OnCreate(){ - RuntimeCache.RuntimeCache.Instance.RegisterRuntimeNode(); + NodeData.OnProcess(); } } } \ No newline at end of file