39 currentEdgeId_ = sourceId;
40 targetEdgeId_ = targetId;
43 int s0 = polymerPtr_->edge(sourceId).vertexId(0);
44 int s1 = polymerPtr_->edge(sourceId).vertexId(1);
47 int t0 = polymerPtr_->edge(targetId).vertexId(0);
48 int t1 = polymerPtr_->edge(targetId).vertexId(1);
52 p00 = polymerPtr_->path(s0, t0);
53 p01 = polymerPtr_->path(s0, t1);
54 p10 = polymerPtr_->path(s1, t0);
55 p11 = polymerPtr_->path(s1, t1);
57 if (p00[0] == currentEdgeId_) {
61 currentVertexId_ = s1;
62 currentDirectionId_ = 0;
64 if (p10[0] == currentEdgeId_) {
68 currentVertexId_ = s0;
69 currentDirectionId_ = 1;
71 UTIL_THROW(
"Error in finding leading vertex for source");
75 p00 = polymerPtr_->path(t0, s0);
76 p01 = polymerPtr_->path(t0, s1);
77 p10 = polymerPtr_->path(t1, s0);
78 p11 = polymerPtr_->path(t1, s1);
80 if (p00[0] == targetEdgeId_) {
86 if (p10[0] == targetEdgeId_) {