BaseGraphProcessor.cs 725 B

12345678910111213141516171819202122232425262728293031323334353637
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using System.Linq;
  5. using Unity.Jobs;
  6. using Unity.Collections;
  7. // using Unity.Entities;
  8. namespace GraphProcessor
  9. {
  10. /// <summary>
  11. /// Graph processor
  12. /// </summary>
  13. public abstract class BaseGraphProcessor
  14. {
  15. protected BaseGraph graph;
  16. /// <summary>
  17. /// Manage graph scheduling and processing
  18. /// </summary>
  19. /// <param name="graph">Graph to be processed</param>
  20. public BaseGraphProcessor(BaseGraph graph)
  21. {
  22. this.graph = graph;
  23. UpdateComputeOrder();
  24. }
  25. public abstract void UpdateComputeOrder();
  26. /// <summary>
  27. /// Schedule the graph into the job system
  28. /// </summary>
  29. public abstract void Run();
  30. }
  31. }