Store flag for artificial bounary edges and walk border nodes in ebg

This commit is contained in:
Daniel J. Hofmann
2017-02-10 12:08:46 +01:00
committed by Patrick Niklaus
parent 5015e12d59
commit e589ab814d
2 changed files with 25 additions and 31 deletions
@@ -23,7 +23,7 @@ struct EdgeBasedGraphEdgeData
NodeID edge_id : 31;
// Artificial edge used to fixup partitioning, see #3205.
// These artificial edges have invalid weight / duration.
std::uint32_t is_boundary_arc : 1;
bool is_boundary_arc : 1;
EdgeWeight weight;
EdgeWeight duration : 30;
std::uint32_t forward : 1;
@@ -140,7 +140,6 @@ struct EdgeBasedGraphReader
forward_edge.data.forward = reverse_edge.data.backward = true;
forward_edge.data.backward = reverse_edge.data.forward = false;
// remove parallel edges
while (i < edges.size() && edges[i].source == source && edges[i].target == target)
{