1.work around on runtime node

main
taoria 3 years ago
parent 462be05c2e
commit 7767e1cb32
  1. 6
      TNode/Models/NodeData.cs
  2. 9
      TNode/Runtime/RuntimeGraph.cs
  3. 15
      TNode/Runtime/RuntimeNode.cs

@ -21,6 +21,12 @@ namespace TNode.Models{
public string id; public string id;
public string nodeName; public string nodeName;
public bool entryPoint; public bool entryPoint;
public virtual void OnProcess(){
}
// #if UNITY_EDITOR // #if UNITY_EDITOR
// public Rect rect; // public Rect rect;
// #endif // #endif

@ -8,7 +8,14 @@ namespace TNode.Runtime{
public GraphData graphData; public GraphData graphData;
public SortedSet<RuntimeNode> _sortedSet; public SortedSet<RuntimeNode> _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){
} }

@ -6,21 +6,10 @@ using TNode.Models;
namespace TNode.Runtime{ namespace TNode.Runtime{
public abstract class RuntimeNode{ public abstract class RuntimeNode{
public object NodeData; public NodeData NodeData;
public List<NodeLink> NodeLinks; public List<NodeLink> NodeLinks;
public void ProcessThisNode(){ public void ProcessThisNode(){
NodeData.OnProcess();
}
}
public class RuntimeNode<T>:RuntimeNode where T:NodeData{
public new T NodeData{ get; set; }
//Links related to runtime node,for fast access.only remember out links
public List<NodeLink> NodeLinks;
public void OnCreate(){
RuntimeCache.RuntimeCache.Instance.RegisterRuntimeNode<T>();
} }
} }
} }
Loading…
Cancel
Save