@@ -94,9 +94,6 @@ void relaxBorderEdges(const DataFacade<mld::Algorithm> &facade,
94
94
template <bool DIRECTION, typename ... Args>
95
95
void relaxOutgoingEdges (const DataFacade<mld::Algorithm> &facade,
96
96
const SearchEngineData<mld::Algorithm>::ManyToManyQueryHeap::HeapNode& heapNode,
97
- const EdgeWeight weight,
98
- const EdgeDuration duration,
99
- const EdgeDistance distance,
100
97
typename SearchEngineData<mld::Algorithm>::ManyToManyQueryHeap &query_heap,
101
98
Args... args)
102
99
{
@@ -131,9 +128,9 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
131
128
132
129
if (shortcut_weight != INVALID_EDGE_WEIGHT && node != to)
133
130
{
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 ();
137
134
const auto & toHeapNode= query_heap.GetHeapNodeIfWasInserted (to);
138
135
if (!toHeapNode)
139
136
{
@@ -171,9 +168,9 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
171
168
172
169
if (shortcut_weight != INVALID_EDGE_WEIGHT && node != to)
173
170
{
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 ();
177
174
const auto & toHeapNode= query_heap.GetHeapNodeIfWasInserted (to);
178
175
if (!toHeapNode)
179
176
{
@@ -199,7 +196,7 @@ void relaxOutgoingEdges(const DataFacade<mld::Algorithm> &facade,
199
196
}
200
197
}
201
198
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);
203
200
}
204
201
205
202
//
@@ -386,9 +383,6 @@ oneToManySearch(SearchEngineData<Algorithm> &engine_working_data,
386
383
// Relax outgoing edges
387
384
relaxOutgoingEdges<DIRECTION>(facade,
388
385
heapNode,
389
- weight,
390
- duration,
391
- distance,
392
386
query_heap,
393
387
phantom_nodes,
394
388
phantom_index,
@@ -461,7 +455,7 @@ void forwardRoutingStep(const DataFacade<Algorithm> &facade,
461
455
}
462
456
463
457
relaxOutgoingEdges<DIRECTION>(
464
- facade, heapNode, source_weight, source_duration, source_distance, query_heap, phantom_node);
458
+ facade, heapNode, query_heap, phantom_node);
465
459
}
466
460
467
461
template <bool DIRECTION>
@@ -487,9 +481,6 @@ void backwardRoutingStep(const DataFacade<Algorithm> &facade,
487
481
488
482
relaxOutgoingEdges<!DIRECTION>(facade,
489
483
heapNode,
490
- target_weight,
491
- target_duration,
492
- target_distance,
493
484
query_heap,
494
485
phantom_node,
495
486
maximal_level);
0 commit comments