Deduplicate foward/reverse geometries
Changes the internal representation of compressed geometries to be a single array shared between forward and reverse geometries that can be read in either direction. Includes a change on extractor::OriginalEdgeData to store via_geometry ids that indicate which direction to read the geometry for that edge based edge. Closes #2592
This commit is contained in:
committed by
Jake Pruitt
parent
73179641b1
commit
a75e16e26b
@@ -497,7 +497,7 @@ int Storage::Run()
|
||||
}
|
||||
|
||||
// load original edge information
|
||||
NodeID *via_node_ptr = shared_layout_ptr->GetBlockPtr<NodeID, true>(
|
||||
GeometryID *via_geometry_ptr = shared_layout_ptr->GetBlockPtr<GeometryID, true>(
|
||||
shared_memory_ptr, SharedDataLayout::VIA_NODE_LIST);
|
||||
|
||||
unsigned *name_id_ptr = shared_layout_ptr->GetBlockPtr<unsigned, true>(
|
||||
@@ -521,7 +521,7 @@ int Storage::Run()
|
||||
for (unsigned i = 0; i < number_of_original_edges; ++i)
|
||||
{
|
||||
edges_input_stream.read((char *)&(current_edge_data), sizeof(extractor::OriginalEdgeData));
|
||||
via_node_ptr[i] = current_edge_data.via_node;
|
||||
via_geometry_ptr[i] = current_edge_data.via_geometry;
|
||||
name_id_ptr[i] = current_edge_data.name_id;
|
||||
travel_mode_ptr[i] = current_edge_data.travel_mode;
|
||||
lane_data_id_ptr[i] = current_edge_data.lane_data_id;
|
||||
|
||||
Reference in New Issue
Block a user