58   typedef Dijkstra<Digraph, LengthMap> DType;  | 
    58   typedef Dijkstra<Digraph, LengthMap> DType;  | 
    59   typedef Digraph::Node Node;  | 
    59   typedef Digraph::Node Node;  | 
    60   typedef Digraph::Arc Arc;  | 
    60   typedef Digraph::Arc Arc;  | 
    61   | 
    61   | 
    62   Digraph G;  | 
    62   Digraph G;  | 
    63   Node s, t;  | 
    63   Node s, t, n;  | 
    64   Arc e;  | 
    64   Arc e;  | 
    65   VType l;  | 
    65   VType l;  | 
         | 
    66   int i;  | 
    66   bool b;  | 
    67   bool b;  | 
    67   DType::DistMap d(G);  | 
    68   DType::DistMap d(G);  | 
    68   DType::PredMap p(G);  | 
    69   DType::PredMap p(G);  | 
    69   LengthMap length;  | 
    70   LengthMap length;  | 
    70   Path<Digraph> pp;  | 
    71   Path<Digraph> pp;  | 
         | 
    72   concepts::ReadMap<Node,bool> nm;  | 
    71   | 
    73   | 
    72   { | 
    74   { | 
    73     DType dijkstra_test(G,length);  | 
    75     DType dijkstra_test(G,length);  | 
         | 
    76     const DType& const_dijkstra_test = dijkstra_test;  | 
    74   | 
    77   | 
    75     dijkstra_test.run(s);  | 
    78     dijkstra_test.run(s);  | 
    76     dijkstra_test.run(s,t);  | 
    79     dijkstra_test.run(s,t);  | 
         | 
    80   | 
         | 
    81     dijkstra_test.init();  | 
         | 
    82     dijkstra_test.addSource(s);  | 
         | 
    83     dijkstra_test.addSource(s, 1);  | 
         | 
    84     n = dijkstra_test.processNextNode();  | 
         | 
    85     n = const_dijkstra_test.nextNode();  | 
         | 
    86     b = const_dijkstra_test.emptyQueue();  | 
         | 
    87     i = const_dijkstra_test.queueSize();  | 
         | 
    88       | 
         | 
    89     dijkstra_test.start();  | 
         | 
    90     dijkstra_test.start(t);  | 
         | 
    91     dijkstra_test.start(nm);  | 
         | 
    92   | 
         | 
    93     l  = const_dijkstra_test.dist(t);  | 
         | 
    94     e  = const_dijkstra_test.predArc(t);  | 
         | 
    95     s  = const_dijkstra_test.predNode(t);  | 
         | 
    96     b  = const_dijkstra_test.reached(t);  | 
         | 
    97     b  = const_dijkstra_test.processed(t);  | 
         | 
    98     d  = const_dijkstra_test.distMap();  | 
         | 
    99     p  = const_dijkstra_test.predMap();  | 
         | 
   100     pp = const_dijkstra_test.path(t);  | 
         | 
   101     l  = const_dijkstra_test.currentDist(t);  | 
         | 
   102   }  | 
         | 
   103   { | 
         | 
   104     DType  | 
         | 
   105       ::SetPredMap<concepts::ReadWriteMap<Node,Arc> >  | 
         | 
   106       ::SetDistMap<concepts::ReadWriteMap<Node,VType> >  | 
         | 
   107       ::SetStandardProcessedMap  | 
         | 
   108       ::SetProcessedMap<concepts::WriteMap<Node,bool> >  | 
         | 
   109       ::SetOperationTraits<DijkstraDefaultOperationTraits<VType> >  | 
         | 
   110       ::SetHeap<BinHeap<VType, concepts::ReadWriteMap<Node,int> > >  | 
         | 
   111       ::SetStandardHeap<BinHeap<VType, concepts::ReadWriteMap<Node,int> > >  | 
         | 
   112       ::SetHeap<BinHeap<VType, concepts::ReadWriteMap<Node,int> >,   | 
         | 
   113                 concepts::ReadWriteMap<Node,int> >  | 
         | 
   114       ::Create dijkstra_test(G,length);  | 
         | 
   115   | 
         | 
   116     LengthMap length_map;  | 
         | 
   117     concepts::ReadWriteMap<Node,Arc> pred_map;  | 
         | 
   118     concepts::ReadWriteMap<Node,VType> dist_map;  | 
         | 
   119     concepts::WriteMap<Node,bool> processed_map;  | 
         | 
   120     concepts::ReadWriteMap<Node,int> heap_cross_ref;  | 
         | 
   121     BinHeap<VType, concepts::ReadWriteMap<Node,int> > heap(heap_cross_ref);  | 
         | 
   122       | 
         | 
   123     dijkstra_test  | 
         | 
   124       .lengthMap(length_map)  | 
         | 
   125       .predMap(pred_map)  | 
         | 
   126       .distMap(dist_map)  | 
         | 
   127       .processedMap(processed_map)  | 
         | 
   128       .heap(heap, heap_cross_ref);  | 
         | 
   129   | 
         | 
   130     dijkstra_test.run(s);  | 
         | 
   131     dijkstra_test.run(s,t);  | 
         | 
   132   | 
         | 
   133     dijkstra_test.addSource(s);  | 
         | 
   134     dijkstra_test.addSource(s, 1);  | 
         | 
   135     n = dijkstra_test.processNextNode();  | 
         | 
   136     n = dijkstra_test.nextNode();  | 
         | 
   137     b = dijkstra_test.emptyQueue();  | 
         | 
   138     i = dijkstra_test.queueSize();  | 
         | 
   139       | 
         | 
   140     dijkstra_test.start();  | 
         | 
   141     dijkstra_test.start(t);  | 
         | 
   142     dijkstra_test.start(nm);  | 
    77   | 
   143   | 
    78     l  = dijkstra_test.dist(t);  | 
   144     l  = dijkstra_test.dist(t);  | 
    79     e  = dijkstra_test.predArc(t);  | 
   145     e  = dijkstra_test.predArc(t);  | 
    80     s  = dijkstra_test.predNode(t);  | 
   146     s  = dijkstra_test.predNode(t);  | 
    81     b  = dijkstra_test.reached(t);  | 
   147     b  = dijkstra_test.reached(t);  | 
    82     d  = dijkstra_test.distMap();  | 
   148     b  = dijkstra_test.processed(t);  | 
    83     p  = dijkstra_test.predMap();  | 
         | 
    84     pp = dijkstra_test.path(t);  | 
   149     pp = dijkstra_test.path(t);  | 
    85   }  | 
   150     l  = dijkstra_test.currentDist(t);  | 
    86   { | 
         | 
    87     DType  | 
         | 
    88       ::SetPredMap<concepts::ReadWriteMap<Node,Arc> >  | 
         | 
    89       ::SetDistMap<concepts::ReadWriteMap<Node,VType> >  | 
         | 
    90       ::SetProcessedMap<concepts::WriteMap<Node,bool> >  | 
         | 
    91       ::SetStandardProcessedMap  | 
         | 
    92       ::SetOperationTraits<DijkstraDefaultOperationTraits<VType> >  | 
         | 
    93       ::SetHeap<BinHeap<VType, concepts::ReadWriteMap<Node,int> > >  | 
         | 
    94       ::SetStandardHeap<BinHeap<VType, concepts::ReadWriteMap<Node,int> > >  | 
         | 
    95       ::Create dijkstra_test(G,length);  | 
         | 
    96   | 
         | 
    97     dijkstra_test.run(s);  | 
         | 
    98     dijkstra_test.run(s,t);  | 
         | 
    99   | 
         | 
   100     l  = dijkstra_test.dist(t);  | 
         | 
   101     e  = dijkstra_test.predArc(t);  | 
         | 
   102     s  = dijkstra_test.predNode(t);  | 
         | 
   103     b  = dijkstra_test.reached(t);  | 
         | 
   104     pp = dijkstra_test.path(t);  | 
         | 
   105   }  | 
   151   }  | 
   106   | 
   152   | 
   107 }  | 
   153 }  | 
   108   | 
   154   | 
   109 void checkDijkstraFunctionCompile()  | 
   155 void checkDijkstraFunctionCompile()  |