Algorithm.cs 592 B

1234567891011121314151617181920212223242526272829
  1. 
  2. namespace PathfindingPCL
  3. {
  4. public abstract class Algorithm
  5. {
  6. protected Graph graph;
  7. protected IHM ihm;
  8. public Algorithm(Graph _graph, IHM _ihm)
  9. {
  10. graph = _graph;
  11. ihm = _ihm;
  12. }
  13. public void Solve()
  14. {
  15. // Nettoyage
  16. graph.Clear();
  17. // Lancement de l'algorithme
  18. Run();
  19. // Affichage du résultat
  20. ihm.PrintResult(graph.ReconstructPath(), graph.ExitNode().DistanceFromBegin);
  21. }
  22. protected abstract void Run();
  23. }
  24. }