cmComputeComponentGraph: Move work out of constructor into Compute() method

The computation of Tarjan's algorithm is an expensive operation which
should not be done in the constructor. Move this work into a dedicated
Compute() method, and call this method explicitly.
This commit is contained in:
Kyle Edwards
2020-07-28 15:30:56 -04:00
parent 7788494257
commit bd0d03386b
4 changed files with 11 additions and 2 deletions
+3
View File
@@ -31,6 +31,9 @@ public:
cmComputeComponentGraph(Graph const& input);
~cmComputeComponentGraph();
/** Run the computation. */
void Compute();
/** Get the adjacency list of the component graph. */
Graph const& GetComponentGraph() const { return this->ComponentGraph; }
EdgeList const& GetComponentGraphEdges(int c) const