@@ -31,6 +31,7 @@ namespace debruijn_graph {
3131 std::set<EdgeId> used_edges_;
3232 PathStorage<Graph> temp_set_;
3333 std::vector<EdgeId> getForwardIntersect (EdgeId e, const std::unordered_set<EdgeId> &edge_set) const {
34+ DEBUG (" Here" );
3435 auto edges = gp_.g .IncidentEdges (gp_.g .EdgeEnd (e));
3536 std::vector<EdgeId> filtered;
3637 for (auto temp_e : edges) {
@@ -42,6 +43,7 @@ namespace debruijn_graph {
4243 }
4344
4445 std::vector<EdgeId> getReverseIntersect (EdgeId e, const std::unordered_set<EdgeId> &edge_set) const {
46+ DEBUG (" Here" );
4547 auto edges = gp_.g .IncidentEdges (gp_.g .EdgeStart (e));
4648 std::vector<EdgeId> filtered;
4749 for (auto temp_e : edges) {
@@ -92,6 +94,7 @@ namespace debruijn_graph {
9294
9395 void extendBackward (const std::unordered_set<EdgeId> &edge_set,
9496 std::deque<EdgeId> &linear_path, EdgeId e) {
97+ DEBUG (" Here" );
9598 auto extensions = getReverseIntersect (e, edge_set);
9699 for (auto prev_edge : extensions) {
97100 linear_path.push_front (prev_edge);
@@ -104,6 +107,7 @@ namespace debruijn_graph {
104107
105108 void extendForward (const GraphComponent<Graph> &comp,
106109 std::deque<EdgeId> &linear_path, std::set<EdgeId> &used_edges) {
110+ DEBUG (" Here" );
107111 EdgeId e = linear_path.back ();
108112 if (comp.VertexInDegree (gp_.g .EdgeEnd (e)) != 1 ||
109113 comp.VertexOutDegree (gp_.g .EdgeEnd (e)) != 1 ) {
@@ -292,14 +296,19 @@ namespace debruijn_graph {
292296 edge_set = initial_component.edges ();
293297 for (auto e : edge_set) {
294298 if (!used_edges_.count (e)) {
299+ DEBUG (" Here" );
300+
295301 std::deque<EdgeId> linear_path;
296302 linear_path.push_back (e);
297303 used_edges_.insert (e);
298304 used_edges_.insert (gp_.g .conjugate (e));
299305 extendForward (edge_set, linear_path, e);
300306 extendBackward (edge_set, linear_path, e);
301307 auto component = GraphComponent<Graph>::FromEdges (gp_.g , linear_path, true );
308+ DEBUG (" Here" );
302309 component.ClipTips ();
310+ DEBUG (" Here" );
311+
303312 if (IsSimplePath (component)) {
304313 DEBUG (" Component is a simple path" );
305314 std::vector<EdgeId> path;
@@ -316,6 +325,7 @@ namespace debruijn_graph {
316325 }
317326 }
318327 }
328+ DEBUG (" Here" );
319329 used_edges_.clear ();
320330 return temp_set_;
321331 }
0 commit comments