@@ -94,9 +94,6 @@ void relaxBorderEdges(const DataFacade<mld::Algorithm> &facade,
9494template <bool DIRECTION, typename ... Args>
9595void relaxOutgoingEdges (const DataFacade<mld::Algorithm> &facade,
9696 const SearchEngineData<mld::Algorithm>::ManyToManyQueryHeap::HeapNode& heapNode,
97- const EdgeWeight weight,
98- const EdgeDuration duration,
99- const EdgeDistance distance,
10097 typename SearchEngineData<mld::Algorithm>::ManyToManyQueryHeap &query_heap,
10198 Args... args)
10299{
@@ -131,9 +128,9 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
131128
132129 if (shortcut_weight != INVALID_EDGE_WEIGHT && node != to)
133130 {
134- const auto to_weight = weight + shortcut_weight;
135- const auto to_duration = duration + shortcut_durations.front ();
136- const auto to_distance = distance + shortcut_distances.front ();
131+ const auto to_weight = heapNode. weight + shortcut_weight;
132+ const auto to_duration = heapNode. data . duration + shortcut_durations.front ();
133+ const auto to_distance = heapNode. data . distance + shortcut_distances.front ();
137134 const auto & toHeapNode= query_heap.GetHeapNodeIfWasInserted (to);
138135 if (!toHeapNode)
139136 {
@@ -171,9 +168,9 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
171168
172169 if (shortcut_weight != INVALID_EDGE_WEIGHT && node != to)
173170 {
174- const auto to_weight = weight + shortcut_weight;
175- const auto to_duration = duration + shortcut_durations.front ();
176- const auto to_distance = distance + shortcut_distances.front ();
171+ const auto to_weight = heapNode. weight + shortcut_weight;
172+ const auto to_duration = heapNode. data . duration + shortcut_durations.front ();
173+ const auto to_distance = heapNode. data . distance + shortcut_distances.front ();
177174 const auto & toHeapNode= query_heap.GetHeapNodeIfWasInserted (to);
178175 if (!toHeapNode)
179176 {
@@ -199,7 +196,7 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
199196 }
200197 }
201198
202- relaxBorderEdges<DIRECTION>(facade, node, weight, duration, distance, query_heap, level);
199+ relaxBorderEdges<DIRECTION>(facade, node, heapNode. weight , heapNode. data . duration , heapNode. data . distance , query_heap, level);
203200}
204201
205202//
@@ -386,9 +383,6 @@ oneToManySearch(SearchEngineData<Algorithm> &engine_working_data,
386383 // Relax outgoing edges
387384 relaxOutgoingEdges<DIRECTION>(facade,
388385 heapNode,
389- weight,
390- duration,
391- distance,
392386 query_heap,
393387 phantom_nodes,
394388 phantom_index,
@@ -461,7 +455,7 @@ void forwardRoutingStep(const DataFacade<Algorithm> &facade,
461455 }
462456
463457 relaxOutgoingEdges<DIRECTION>(
464- facade, heapNode, source_weight, source_duration, source_distance, query_heap, phantom_node);
458+ facade, heapNode, query_heap, phantom_node);
465459}
466460
467461template <bool DIRECTION>
@@ -487,9 +481,6 @@ void backwardRoutingStep(const DataFacade<Algorithm> &facade,
487481
488482 relaxOutgoingEdges<!DIRECTION>(facade,
489483 heapNode,
490- target_weight,
491- target_duration,
492- target_distance,
493484 query_heap,
494485 phantom_node,
495486 maximal_level);
0 commit comments