Changeset 257:8d76a7bf9961 in lemon-1.0
- Timestamp:
- 09/01/08 22:00:40 (16 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/bfs.h
r247 r257 231 231 232 232 template <class T> 233 struct DefPredMapTraits : public Traits {233 struct SetPredMapTraits : public Traits { 234 234 typedef T PredMap; 235 235 static PredMap *createPredMap(const Digraph &) … … 244 244 ///\ref PredMap type. 245 245 template <class T> 246 struct DefPredMap : public Bfs< Digraph, DefPredMapTraits<T> > {247 typedef Bfs< Digraph, DefPredMapTraits<T> > Create;246 struct SetPredMap : public Bfs< Digraph, SetPredMapTraits<T> > { 247 typedef Bfs< Digraph, SetPredMapTraits<T> > Create; 248 248 }; 249 249 250 250 template <class T> 251 struct DefDistMapTraits : public Traits {251 struct SetDistMapTraits : public Traits { 252 252 typedef T DistMap; 253 253 static DistMap *createDistMap(const Digraph &) … … 262 262 ///\ref DistMap type. 263 263 template <class T> 264 struct DefDistMap : public Bfs< Digraph, DefDistMapTraits<T> > {265 typedef Bfs< Digraph, DefDistMapTraits<T> > Create;264 struct SetDistMap : public Bfs< Digraph, SetDistMapTraits<T> > { 265 typedef Bfs< Digraph, SetDistMapTraits<T> > Create; 266 266 }; 267 267 268 268 template <class T> 269 struct DefReachedMapTraits : public Traits {269 struct SetReachedMapTraits : public Traits { 270 270 typedef T ReachedMap; 271 271 static ReachedMap *createReachedMap(const Digraph &) … … 280 280 ///\ref ReachedMap type. 281 281 template <class T> 282 struct DefReachedMap : public Bfs< Digraph, DefReachedMapTraits<T> > {283 typedef Bfs< Digraph, DefReachedMapTraits<T> > Create;282 struct SetReachedMap : public Bfs< Digraph, SetReachedMapTraits<T> > { 283 typedef Bfs< Digraph, SetReachedMapTraits<T> > Create; 284 284 }; 285 285 286 286 template <class T> 287 struct DefProcessedMapTraits : public Traits {287 struct SetProcessedMapTraits : public Traits { 288 288 typedef T ProcessedMap; 289 289 static ProcessedMap *createProcessedMap(const Digraph &) … … 298 298 ///\ref ProcessedMap type. 299 299 template <class T> 300 struct DefProcessedMap : public Bfs< Digraph, DefProcessedMapTraits<T> > {301 typedef Bfs< Digraph, DefProcessedMapTraits<T> > Create;302 }; 303 304 struct DefDigraphProcessedMapTraits : public Traits {300 struct SetProcessedMap : public Bfs< Digraph, SetProcessedMapTraits<T> > { 301 typedef Bfs< Digraph, SetProcessedMapTraits<T> > Create; 302 }; 303 304 struct SetStandardProcessedMapTraits : public Traits { 305 305 typedef typename Digraph::template NodeMap<bool> ProcessedMap; 306 306 static ProcessedMap *createProcessedMap(const Digraph &g) … … 315 315 ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>. 316 316 ///If you don't set it explicitly, it will be automatically allocated. 317 template <class T> 318 struct DefProcessedMapToBeDefaultMap : 319 public Bfs< Digraph, DefDigraphProcessedMapTraits> { 320 typedef Bfs< Digraph, DefDigraphProcessedMapTraits> Create; 317 struct SetStandardProcessedMap : 318 public Bfs< Digraph, SetStandardProcessedMapTraits > { 319 typedef Bfs< Digraph, SetStandardProcessedMapTraits > Create; 321 320 }; 322 321 … … 1066 1065 1067 1066 template<class T> 1068 struct DefPredMapBase : public Base {1067 struct SetPredMapBase : public Base { 1069 1068 typedef T PredMap; 1070 1069 static PredMap *createPredMap(const Digraph &) { return 0; }; 1071 DefPredMapBase(const TR &b) : TR(b) {}1070 SetPredMapBase(const TR &b) : TR(b) {} 1072 1071 }; 1073 1072 ///\brief \ref named-templ-param "Named parameter" … … 1077 1076 ///for setting \ref PredMap object. 1078 1077 template<class T> 1079 BfsWizard< DefPredMapBase<T> > predMap(const T &t)1078 BfsWizard<SetPredMapBase<T> > predMap(const T &t) 1080 1079 { 1081 1080 Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t)); 1082 return BfsWizard< DefPredMapBase<T> >(*this);1081 return BfsWizard<SetPredMapBase<T> >(*this); 1083 1082 } 1084 1083 1085 1084 template<class T> 1086 struct DefReachedMapBase : public Base {1085 struct SetReachedMapBase : public Base { 1087 1086 typedef T ReachedMap; 1088 1087 static ReachedMap *createReachedMap(const Digraph &) { return 0; }; 1089 DefReachedMapBase(const TR &b) : TR(b) {}1088 SetReachedMapBase(const TR &b) : TR(b) {} 1090 1089 }; 1091 1090 ///\brief \ref named-templ-param "Named parameter" … … 1095 1094 ///for setting \ref ReachedMap object. 1096 1095 template<class T> 1097 BfsWizard< DefReachedMapBase<T> > reachedMap(const T &t)1096 BfsWizard<SetReachedMapBase<T> > reachedMap(const T &t) 1098 1097 { 1099 1098 Base::_reached=reinterpret_cast<void*>(const_cast<T*>(&t)); 1100 return BfsWizard< DefReachedMapBase<T> >(*this);1099 return BfsWizard<SetReachedMapBase<T> >(*this); 1101 1100 } 1102 1101 1103 1102 template<class T> 1104 struct DefProcessedMapBase : public Base {1103 struct SetProcessedMapBase : public Base { 1105 1104 typedef T ProcessedMap; 1106 1105 static ProcessedMap *createProcessedMap(const Digraph &) { return 0; }; 1107 DefProcessedMapBase(const TR &b) : TR(b) {}1106 SetProcessedMapBase(const TR &b) : TR(b) {} 1108 1107 }; 1109 1108 ///\brief \ref named-templ-param "Named parameter" … … 1113 1112 ///for setting \ref ProcessedMap object. 1114 1113 template<class T> 1115 BfsWizard< DefProcessedMapBase<T> > processedMap(const T &t)1114 BfsWizard<SetProcessedMapBase<T> > processedMap(const T &t) 1116 1115 { 1117 1116 Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t)); 1118 return BfsWizard< DefProcessedMapBase<T> >(*this);1117 return BfsWizard<SetProcessedMapBase<T> >(*this); 1119 1118 } 1120 1119 1121 1120 template<class T> 1122 struct DefDistMapBase : public Base {1121 struct SetDistMapBase : public Base { 1123 1122 typedef T DistMap; 1124 1123 static DistMap *createDistMap(const Digraph &) { return 0; }; 1125 DefDistMapBase(const TR &b) : TR(b) {}1124 SetDistMapBase(const TR &b) : TR(b) {} 1126 1125 }; 1127 1126 ///\brief \ref named-templ-param "Named parameter" … … 1131 1130 ///for setting \ref DistMap object. 1132 1131 template<class T> 1133 BfsWizard< DefDistMapBase<T> > distMap(const T &t)1132 BfsWizard<SetDistMapBase<T> > distMap(const T &t) 1134 1133 { 1135 1134 Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t)); 1136 return BfsWizard< DefDistMapBase<T> >(*this);1135 return BfsWizard<SetDistMapBase<T> >(*this); 1137 1136 } 1138 1137 … … 1350 1349 ///@{ 1351 1350 template <class T> 1352 struct DefReachedMapTraits : public Traits {1351 struct SetReachedMapTraits : public Traits { 1353 1352 typedef T ReachedMap; 1354 1353 static ReachedMap *createReachedMap(const Digraph &digraph) { … … 1361 1360 /// \ref named-templ-param "Named parameter" for setting ReachedMap type. 1362 1361 template <class T> 1363 struct DefReachedMap : public BfsVisit< Digraph, Visitor,1364 DefReachedMapTraits<T> > {1365 typedef BfsVisit< Digraph, Visitor, DefReachedMapTraits<T> > Create;1362 struct SetReachedMap : public BfsVisit< Digraph, Visitor, 1363 SetReachedMapTraits<T> > { 1364 typedef BfsVisit< Digraph, Visitor, SetReachedMapTraits<T> > Create; 1366 1365 }; 1367 1366 ///@} -
lemon/dfs.h
r247 r257 231 231 232 232 template <class T> 233 struct DefPredMapTraits : public Traits {233 struct SetPredMapTraits : public Traits { 234 234 typedef T PredMap; 235 235 static PredMap *createPredMap(const Digraph &) … … 244 244 ///\ref PredMap type. 245 245 template <class T> 246 struct DefPredMap : public Dfs<Digraph, DefPredMapTraits<T> > {247 typedef Dfs<Digraph, DefPredMapTraits<T> > Create;246 struct SetPredMap : public Dfs<Digraph, SetPredMapTraits<T> > { 247 typedef Dfs<Digraph, SetPredMapTraits<T> > Create; 248 248 }; 249 249 250 250 template <class T> 251 struct DefDistMapTraits : public Traits {251 struct SetDistMapTraits : public Traits { 252 252 typedef T DistMap; 253 253 static DistMap *createDistMap(const Digraph &) … … 262 262 ///\ref DistMap type. 263 263 template <class T> 264 struct DefDistMap : public Dfs< Digraph, DefDistMapTraits<T> > {265 typedef Dfs<Digraph, DefDistMapTraits<T> > Create;264 struct SetDistMap : public Dfs< Digraph, SetDistMapTraits<T> > { 265 typedef Dfs<Digraph, SetDistMapTraits<T> > Create; 266 266 }; 267 267 268 268 template <class T> 269 struct DefReachedMapTraits : public Traits {269 struct SetReachedMapTraits : public Traits { 270 270 typedef T ReachedMap; 271 271 static ReachedMap *createReachedMap(const Digraph &) … … 280 280 ///\ref ReachedMap type. 281 281 template <class T> 282 struct DefReachedMap : public Dfs< Digraph, DefReachedMapTraits<T> > {283 typedef Dfs< Digraph, DefReachedMapTraits<T> > Create;282 struct SetReachedMap : public Dfs< Digraph, SetReachedMapTraits<T> > { 283 typedef Dfs< Digraph, SetReachedMapTraits<T> > Create; 284 284 }; 285 285 286 286 template <class T> 287 struct DefProcessedMapTraits : public Traits {287 struct SetProcessedMapTraits : public Traits { 288 288 typedef T ProcessedMap; 289 289 static ProcessedMap *createProcessedMap(const Digraph &) … … 298 298 ///\ref ProcessedMap type. 299 299 template <class T> 300 struct DefProcessedMap : public Dfs< Digraph, DefProcessedMapTraits<T> > {301 typedef Dfs< Digraph, DefProcessedMapTraits<T> > Create;302 }; 303 304 struct DefDigraphProcessedMapTraits : public Traits {300 struct SetProcessedMap : public Dfs< Digraph, SetProcessedMapTraits<T> > { 301 typedef Dfs< Digraph, SetProcessedMapTraits<T> > Create; 302 }; 303 304 struct SetStandardProcessedMapTraits : public Traits { 305 305 typedef typename Digraph::template NodeMap<bool> ProcessedMap; 306 306 static ProcessedMap *createProcessedMap(const Digraph &g) … … 315 315 ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>. 316 316 ///If you don't set it explicitly, it will be automatically allocated. 317 template <class T> 318 struct DefProcessedMapToBeDefaultMap : 319 public Dfs< Digraph, DefDigraphProcessedMapTraits> { 320 typedef Dfs< Digraph, DefDigraphProcessedMapTraits> Create; 317 struct SetStandardProcessedMap : 318 public Dfs< Digraph, SetStandardProcessedMapTraits > { 319 typedef Dfs< Digraph, SetStandardProcessedMapTraits > Create; 321 320 }; 322 321 … … 1001 1000 1002 1001 template<class T> 1003 struct DefPredMapBase : public Base {1002 struct SetPredMapBase : public Base { 1004 1003 typedef T PredMap; 1005 1004 static PredMap *createPredMap(const Digraph &) { return 0; }; 1006 DefPredMapBase(const TR &b) : TR(b) {}1005 SetPredMapBase(const TR &b) : TR(b) {} 1007 1006 }; 1008 1007 ///\brief \ref named-templ-param "Named parameter" … … 1012 1011 ///for setting \ref PredMap object. 1013 1012 template<class T> 1014 DfsWizard< DefPredMapBase<T> > predMap(const T &t)1013 DfsWizard<SetPredMapBase<T> > predMap(const T &t) 1015 1014 { 1016 1015 Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t)); 1017 return DfsWizard< DefPredMapBase<T> >(*this);1016 return DfsWizard<SetPredMapBase<T> >(*this); 1018 1017 } 1019 1018 1020 1019 template<class T> 1021 struct DefReachedMapBase : public Base {1020 struct SetReachedMapBase : public Base { 1022 1021 typedef T ReachedMap; 1023 1022 static ReachedMap *createReachedMap(const Digraph &) { return 0; }; 1024 DefReachedMapBase(const TR &b) : TR(b) {}1023 SetReachedMapBase(const TR &b) : TR(b) {} 1025 1024 }; 1026 1025 ///\brief \ref named-templ-param "Named parameter" … … 1030 1029 ///for setting \ref ReachedMap object. 1031 1030 template<class T> 1032 DfsWizard< DefReachedMapBase<T> > reachedMap(const T &t)1031 DfsWizard<SetReachedMapBase<T> > reachedMap(const T &t) 1033 1032 { 1034 1033 Base::_reached=reinterpret_cast<void*>(const_cast<T*>(&t)); 1035 return DfsWizard< DefReachedMapBase<T> >(*this);1034 return DfsWizard<SetReachedMapBase<T> >(*this); 1036 1035 } 1037 1036 1038 1037 template<class T> 1039 struct DefProcessedMapBase : public Base {1038 struct SetProcessedMapBase : public Base { 1040 1039 typedef T ProcessedMap; 1041 1040 static ProcessedMap *createProcessedMap(const Digraph &) { return 0; }; 1042 DefProcessedMapBase(const TR &b) : TR(b) {}1041 SetProcessedMapBase(const TR &b) : TR(b) {} 1043 1042 }; 1044 1043 ///\brief \ref named-templ-param "Named parameter" … … 1048 1047 ///for setting \ref ProcessedMap object. 1049 1048 template<class T> 1050 DfsWizard< DefProcessedMapBase<T> > processedMap(const T &t)1049 DfsWizard<SetProcessedMapBase<T> > processedMap(const T &t) 1051 1050 { 1052 1051 Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t)); 1053 return DfsWizard< DefProcessedMapBase<T> >(*this);1052 return DfsWizard<SetProcessedMapBase<T> >(*this); 1054 1053 } 1055 1054 1056 1055 template<class T> 1057 struct DefDistMapBase : public Base {1056 struct SetDistMapBase : public Base { 1058 1057 typedef T DistMap; 1059 1058 static DistMap *createDistMap(const Digraph &) { return 0; }; 1060 DefDistMapBase(const TR &b) : TR(b) {}1059 SetDistMapBase(const TR &b) : TR(b) {} 1061 1060 }; 1062 1061 ///\brief \ref named-templ-param "Named parameter" … … 1066 1065 ///for setting \ref DistMap object. 1067 1066 template<class T> 1068 DfsWizard< DefDistMapBase<T> > distMap(const T &t)1067 DfsWizard<SetDistMapBase<T> > distMap(const T &t) 1069 1068 { 1070 1069 Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t)); 1071 return DfsWizard< DefDistMapBase<T> >(*this);1070 return DfsWizard<SetDistMapBase<T> >(*this); 1072 1071 } 1073 1072 … … 1297 1296 ///@{ 1298 1297 template <class T> 1299 struct DefReachedMapTraits : public Traits {1298 struct SetReachedMapTraits : public Traits { 1300 1299 typedef T ReachedMap; 1301 1300 static ReachedMap *createReachedMap(const Digraph &digraph) { … … 1308 1307 /// \ref named-templ-param "Named parameter" for setting ReachedMap type. 1309 1308 template <class T> 1310 struct DefReachedMap : public DfsVisit< Digraph, Visitor,1311 DefReachedMapTraits<T> > {1312 typedef DfsVisit< Digraph, Visitor, DefReachedMapTraits<T> > Create;1309 struct SetReachedMap : public DfsVisit< Digraph, Visitor, 1310 SetReachedMapTraits<T> > { 1311 typedef DfsVisit< Digraph, Visitor, SetReachedMapTraits<T> > Create; 1313 1312 }; 1314 1313 ///@} -
lemon/dijkstra.h
r247 r257 332 332 333 333 template <class T> 334 struct DefPredMapTraits : public Traits {334 struct SetPredMapTraits : public Traits { 335 335 typedef T PredMap; 336 336 static PredMap *createPredMap(const Digraph &) … … 345 345 ///\ref PredMap type. 346 346 template <class T> 347 struct DefPredMap348 : public Dijkstra< Digraph, LengthMap, DefPredMapTraits<T> > {349 typedef Dijkstra< Digraph, LengthMap, DefPredMapTraits<T> > Create;347 struct SetPredMap 348 : public Dijkstra< Digraph, LengthMap, SetPredMapTraits<T> > { 349 typedef Dijkstra< Digraph, LengthMap, SetPredMapTraits<T> > Create; 350 350 }; 351 351 352 352 template <class T> 353 struct DefDistMapTraits : public Traits {353 struct SetDistMapTraits : public Traits { 354 354 typedef T DistMap; 355 355 static DistMap *createDistMap(const Digraph &) … … 364 364 ///\ref DistMap type. 365 365 template <class T> 366 struct DefDistMap367 : public Dijkstra< Digraph, LengthMap, DefDistMapTraits<T> > {368 typedef Dijkstra< Digraph, LengthMap, DefDistMapTraits<T> > Create;366 struct SetDistMap 367 : public Dijkstra< Digraph, LengthMap, SetDistMapTraits<T> > { 368 typedef Dijkstra< Digraph, LengthMap, SetDistMapTraits<T> > Create; 369 369 }; 370 370 371 371 template <class T> 372 struct DefProcessedMapTraits : public Traits {372 struct SetProcessedMapTraits : public Traits { 373 373 typedef T ProcessedMap; 374 374 static ProcessedMap *createProcessedMap(const Digraph &) … … 383 383 ///\ref ProcessedMap type. 384 384 template <class T> 385 struct DefProcessedMap386 : public Dijkstra< Digraph, LengthMap, DefProcessedMapTraits<T> > {387 typedef Dijkstra< Digraph, LengthMap, DefProcessedMapTraits<T> > Create;388 }; 389 390 struct DefDigraphProcessedMapTraits : public Traits {385 struct SetProcessedMap 386 : public Dijkstra< Digraph, LengthMap, SetProcessedMapTraits<T> > { 387 typedef Dijkstra< Digraph, LengthMap, SetProcessedMapTraits<T> > Create; 388 }; 389 390 struct SetStandardProcessedMapTraits : public Traits { 391 391 typedef typename Digraph::template NodeMap<bool> ProcessedMap; 392 392 static ProcessedMap *createProcessedMap(const Digraph &g) … … 401 401 ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>. 402 402 ///If you don't set it explicitly, it will be automatically allocated. 403 template <class T> 404 struct DefProcessedMapToBeDefaultMap 405 : public Dijkstra< Digraph, LengthMap, DefDigraphProcessedMapTraits> { 406 typedef Dijkstra< Digraph, LengthMap, DefDigraphProcessedMapTraits> 403 struct SetStandardProcessedMap 404 : public Dijkstra< Digraph, LengthMap, SetStandardProcessedMapTraits > { 405 typedef Dijkstra< Digraph, LengthMap, SetStandardProcessedMapTraits > 407 406 Create; 408 407 }; 409 408 410 409 template <class H, class CR> 411 struct DefHeapTraits : public Traits {410 struct SetHeapTraits : public Traits { 412 411 typedef CR HeapCrossRef; 413 412 typedef H Heap; … … 426 425 ///reference type. 427 426 template <class H, class CR = typename Digraph::template NodeMap<int> > 428 struct DefHeap429 : public Dijkstra< Digraph, LengthMap, DefHeapTraits<H, CR> > {430 typedef Dijkstra< Digraph, LengthMap, DefHeapTraits<H, CR> > Create;427 struct SetHeap 428 : public Dijkstra< Digraph, LengthMap, SetHeapTraits<H, CR> > { 429 typedef Dijkstra< Digraph, LengthMap, SetHeapTraits<H, CR> > Create; 431 430 }; 432 431 433 432 template <class H, class CR> 434 struct DefStandardHeapTraits : public Traits {433 struct SetStandardHeapTraits : public Traits { 435 434 typedef CR HeapCrossRef; 436 435 typedef H Heap; … … 451 450 ///parameter and the heap's constructor waits for the cross reference. 452 451 template <class H, class CR = typename Digraph::template NodeMap<int> > 453 struct DefStandardHeap454 : public Dijkstra< Digraph, LengthMap, DefStandardHeapTraits<H, CR> > {455 typedef Dijkstra< Digraph, LengthMap, DefStandardHeapTraits<H, CR> >452 struct SetStandardHeap 453 : public Dijkstra< Digraph, LengthMap, SetStandardHeapTraits<H, CR> > { 454 typedef Dijkstra< Digraph, LengthMap, SetStandardHeapTraits<H, CR> > 456 455 Create; 457 456 }; 458 457 459 458 template <class T> 460 struct DefOperationTraitsTraits : public Traits {459 struct SetOperationTraitsTraits : public Traits { 461 460 typedef T OperationTraits; 462 461 }; … … 468 467 ///\ref OperationTraits type. 469 468 template <class T> 470 struct DefOperationTraits471 : public Dijkstra<Digraph, LengthMap, DefOperationTraitsTraits<T> > {472 typedef Dijkstra<Digraph, LengthMap, DefOperationTraitsTraits<T> >469 struct SetOperationTraits 470 : public Dijkstra<Digraph, LengthMap, SetOperationTraitsTraits<T> > { 471 typedef Dijkstra<Digraph, LengthMap, SetOperationTraitsTraits<T> > 473 472 Create; 474 473 }; … … 1200 1199 1201 1200 template<class T> 1202 struct DefPredMapBase : public Base {1201 struct SetPredMapBase : public Base { 1203 1202 typedef T PredMap; 1204 1203 static PredMap *createPredMap(const Digraph &) { return 0; }; 1205 DefPredMapBase(const TR &b) : TR(b) {}1204 SetPredMapBase(const TR &b) : TR(b) {} 1206 1205 }; 1207 1206 ///\brief \ref named-templ-param "Named parameter" … … 1211 1210 ///for setting \ref PredMap object. 1212 1211 template<class T> 1213 DijkstraWizard< DefPredMapBase<T> > predMap(const T &t)1212 DijkstraWizard<SetPredMapBase<T> > predMap(const T &t) 1214 1213 { 1215 1214 Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t)); 1216 return DijkstraWizard< DefPredMapBase<T> >(*this);1215 return DijkstraWizard<SetPredMapBase<T> >(*this); 1217 1216 } 1218 1217 1219 1218 template<class T> 1220 struct DefProcessedMapBase : public Base {1219 struct SetProcessedMapBase : public Base { 1221 1220 typedef T ProcessedMap; 1222 1221 static ProcessedMap *createProcessedMap(const Digraph &) { return 0; }; 1223 DefProcessedMapBase(const TR &b) : TR(b) {}1222 SetProcessedMapBase(const TR &b) : TR(b) {} 1224 1223 }; 1225 1224 ///\brief \ref named-templ-param "Named parameter" … … 1229 1228 ///for setting \ref ProcessedMap object. 1230 1229 template<class T> 1231 DijkstraWizard< DefProcessedMapBase<T> > processedMap(const T &t)1230 DijkstraWizard<SetProcessedMapBase<T> > processedMap(const T &t) 1232 1231 { 1233 1232 Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t)); 1234 return DijkstraWizard< DefProcessedMapBase<T> >(*this);1233 return DijkstraWizard<SetProcessedMapBase<T> >(*this); 1235 1234 } 1236 1235 1237 1236 template<class T> 1238 struct DefDistMapBase : public Base {1237 struct SetDistMapBase : public Base { 1239 1238 typedef T DistMap; 1240 1239 static DistMap *createDistMap(const Digraph &) { return 0; }; 1241 DefDistMapBase(const TR &b) : TR(b) {}1240 SetDistMapBase(const TR &b) : TR(b) {} 1242 1241 }; 1243 1242 ///\brief \ref named-templ-param "Named parameter" … … 1247 1246 ///for setting \ref DistMap object. 1248 1247 template<class T> 1249 DijkstraWizard< DefDistMapBase<T> > distMap(const T &t)1248 DijkstraWizard<SetDistMapBase<T> > distMap(const T &t) 1250 1249 { 1251 1250 Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t)); 1252 return DijkstraWizard< DefDistMapBase<T> >(*this);1251 return DijkstraWizard<SetDistMapBase<T> >(*this); 1253 1252 } 1254 1253 -
test/heap_test.cc
r212 r257 132 132 Node source) { 133 133 134 typename Dijkstra<Digraph, IntArcMap>::template DefStandardHeap<Heap>::134 typename Dijkstra<Digraph, IntArcMap>::template SetStandardHeap<Heap>:: 135 135 Create dijkstra(digraph, length); 136 136
Note: See TracChangeset
for help on using the changeset viewer.