Example #1
0
        public Task <RenderGraph> Analyze(PlacementGraph graph, GraphConfig config)
        {
            _config = config ?? throw new ArgumentNullException(nameof(config));
            var nodes = graph.Nodes.Select(CreateNode);
            var edges = CreateEdges(graph.Edges);

            return(Task.FromResult(new RenderGraph(nodes.ToList(), edges.ToList())));
        }
Example #2
0
        public Task <PlacementGraph> Analyze(AbstractGraph abstractGraph, GraphConfig config)
        {
            _abstractGraph = abstractGraph ?? throw new ArgumentNullException(nameof(abstractGraph));
            _config        = config ?? throw new ArgumentNullException(nameof(config));

            if (abstractGraph.Roots.Count == 0)
            {
                return(Task.FromResult(new PlacementGraph()));
            }

            _nextGraphRow = 0;
            _graph        = new PlacementGraph();
            _placedTasks  = new HashSet <Todo>();

            foreach (var root in _abstractGraph.Roots)
            {
                AddGraph(root);
            }

            return(Task.FromResult(_graph));
        }