1.1 --- a/lemon/min_cost_arborescence.h Tue Apr 14 10:34:12 2009 +0200
1.2 +++ b/lemon/min_cost_arborescence.h Tue Apr 14 10:35:38 2009 +0200
1.3 @@ -293,7 +293,7 @@
1.4 minimum = (*_cost_arcs)[nodes[i]];
1.5 }
1.6 }
1.7 - _arc_order->set(minimum.arc, _dual_variables.size());
1.8 + (*_arc_order)[minimum.arc] = _dual_variables.size();
1.9 DualVariable var(_dual_node_list.size() - 1,
1.10 _dual_node_list.size(), minimum.value);
1.11 _dual_variables.push_back(var);
1.12 @@ -335,7 +335,7 @@
1.13 minimum = (*_cost_arcs)[nodes[i]];
1.14 }
1.15 }
1.16 - _arc_order->set(minimum.arc, _dual_variables.size());
1.17 + (*_arc_order)[minimum.arc] = _dual_variables.size();
1.18 DualVariable var(node_bottom, _dual_node_list.size(), minimum.value);
1.19 _dual_variables.push_back(var);
1.20 StackLevel level;
1.21 @@ -364,7 +364,7 @@
1.22 while (!_heap->empty()) {
1.23 Node source = _heap->top();
1.24 _heap->pop();
1.25 - _node_order->set(source, -1);
1.26 + (*_node_order)[source] = -1;
1.27 for (OutArcIt it(*_digraph, source); it != INVALID; ++it) {
1.28 if ((*_arc_order)[it] < 0) continue;
1.29 Node target = _digraph->target(it);
1.30 @@ -650,13 +650,13 @@
1.31 _heap->clear();
1.32 for (NodeIt it(*_digraph); it != INVALID; ++it) {
1.33 (*_cost_arcs)[it].arc = INVALID;
1.34 - _node_order->set(it, -3);
1.35 - _heap_cross_ref->set(it, Heap::PRE_HEAP);
1.36 + (*_node_order)[it] = -3;
1.37 + (*_heap_cross_ref)[it] = Heap::PRE_HEAP;
1.38 _pred->set(it, INVALID);
1.39 }
1.40 for (ArcIt it(*_digraph); it != INVALID; ++it) {
1.41 _arborescence->set(it, false);
1.42 - _arc_order->set(it, -1);
1.43 + (*_arc_order)[it] = -1;
1.44 }
1.45 _dual_node_list.clear();
1.46 _dual_variables.clear();