COIN-OR::LEMON - Graph Library

Ticket #134: 8d76a7bf9961.patch

File 8d76a7bf9961.patch, 24.7 KB (added by Peter Kovacs, 16 years ago)
  • lemon/bfs.h

    # HG changeset patch
    # User Peter Kovacs <kpeter@inf.elte.hu>
    # Date 1220299240 -7200
    # Node ID 8d76a7bf9961cee39791b621a71b8abb914f86c5
    # Parent  f0b89f24274560f96db7740ebb807719f5e5e369
    Rename Def* to Set* in Bfs, Dfs, Dijkstra (ticket #134)
     - DefXyzMap --> SetXyzMap
     - DefHeap --> SetHeap
     - DefStandardHeap --> SetStandardHeap
     - DefOperationTraits --> SetOperationTraits
     - DefProcessedMapToBeDefaultMap --> SetStandardProcessedMap
     - Bug fix: SetStandardProcessedMap shouldn't be template
    
    diff -r f0b89f242745 -r 8d76a7bf9961 lemon/bfs.h
    a b  
    230230    ///@{
    231231
    232232    template <class T>
    233     struct DefPredMapTraits : public Traits {
     233    struct SetPredMapTraits : public Traits {
    234234      typedef T PredMap;
    235235      static PredMap *createPredMap(const Digraph &)
    236236      {
     
    243243    ///\ref named-templ-param "Named parameter" for setting
    244244    ///\ref PredMap type.
    245245    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;
    248248    };
    249249
    250250    template <class T>
    251     struct DefDistMapTraits : public Traits {
     251    struct SetDistMapTraits : public Traits {
    252252      typedef T DistMap;
    253253      static DistMap *createDistMap(const Digraph &)
    254254      {
     
    261261    ///\ref named-templ-param "Named parameter" for setting
    262262    ///\ref DistMap type.
    263263    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;
    266266    };
    267267
    268268    template <class T>
    269     struct DefReachedMapTraits : public Traits {
     269    struct SetReachedMapTraits : public Traits {
    270270      typedef T ReachedMap;
    271271      static ReachedMap *createReachedMap(const Digraph &)
    272272      {
     
    279279    ///\ref named-templ-param "Named parameter" for setting
    280280    ///\ref ReachedMap type.
    281281    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;
    284284    };
    285285
    286286    template <class T>
    287     struct DefProcessedMapTraits : public Traits {
     287    struct SetProcessedMapTraits : public Traits {
    288288      typedef T ProcessedMap;
    289289      static ProcessedMap *createProcessedMap(const Digraph &)
    290290      {
     
    297297    ///\ref named-templ-param "Named parameter" for setting
    298298    ///\ref ProcessedMap type.
    299299    template <class T>
    300     struct DefProcessedMap : public Bfs< Digraph, DefProcessedMapTraits<T> > {
    301       typedef Bfs< Digraph, DefProcessedMapTraits<T> > Create;
     300    struct SetProcessedMap : public Bfs< Digraph, SetProcessedMapTraits<T> > {
     301      typedef Bfs< Digraph, SetProcessedMapTraits<T> > Create;
    302302    };
    303303
    304     struct DefDigraphProcessedMapTraits : public Traits {
     304    struct SetStandardProcessedMapTraits : public Traits {
    305305      typedef typename Digraph::template NodeMap<bool> ProcessedMap;
    306306      static ProcessedMap *createProcessedMap(const Digraph &g)
    307307      {
     
    314314    ///\ref named-templ-param "Named parameter" for setting
    315315    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
    316316    ///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;
    321320    };
    322321
    323322    ///@}
     
    10651064    }
    10661065
    10671066    template<class T>
    1068     struct DefPredMapBase : public Base {
     1067    struct SetPredMapBase : public Base {
    10691068      typedef T PredMap;
    10701069      static PredMap *createPredMap(const Digraph &) { return 0; };
    1071       DefPredMapBase(const TR &b) : TR(b) {}
     1070      SetPredMapBase(const TR &b) : TR(b) {}
    10721071    };
    10731072    ///\brief \ref named-templ-param "Named parameter"
    10741073    ///for setting \ref PredMap object.
     
    10761075    /// \ref named-templ-param "Named parameter"
    10771076    ///for setting \ref PredMap object.
    10781077    template<class T>
    1079     BfsWizard<DefPredMapBase<T> > predMap(const T &t)
     1078    BfsWizard<SetPredMapBase<T> > predMap(const T &t)
    10801079    {
    10811080      Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t));
    1082       return BfsWizard<DefPredMapBase<T> >(*this);
     1081      return BfsWizard<SetPredMapBase<T> >(*this);
    10831082    }
    10841083
    10851084    template<class T>
    1086     struct DefReachedMapBase : public Base {
     1085    struct SetReachedMapBase : public Base {
    10871086      typedef T ReachedMap;
    10881087      static ReachedMap *createReachedMap(const Digraph &) { return 0; };
    1089       DefReachedMapBase(const TR &b) : TR(b) {}
     1088      SetReachedMapBase(const TR &b) : TR(b) {}
    10901089    };
    10911090    ///\brief \ref named-templ-param "Named parameter"
    10921091    ///for setting \ref ReachedMap object.
     
    10941093    /// \ref named-templ-param "Named parameter"
    10951094    ///for setting \ref ReachedMap object.
    10961095    template<class T>
    1097     BfsWizard<DefReachedMapBase<T> > reachedMap(const T &t)
     1096    BfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
    10981097    {
    10991098      Base::_reached=reinterpret_cast<void*>(const_cast<T*>(&t));
    1100       return BfsWizard<DefReachedMapBase<T> >(*this);
     1099      return BfsWizard<SetReachedMapBase<T> >(*this);
    11011100    }
    11021101
    11031102    template<class T>
    1104     struct DefProcessedMapBase : public Base {
     1103    struct SetProcessedMapBase : public Base {
    11051104      typedef T ProcessedMap;
    11061105      static ProcessedMap *createProcessedMap(const Digraph &) { return 0; };
    1107       DefProcessedMapBase(const TR &b) : TR(b) {}
     1106      SetProcessedMapBase(const TR &b) : TR(b) {}
    11081107    };
    11091108    ///\brief \ref named-templ-param "Named parameter"
    11101109    ///for setting \ref ProcessedMap object.
     
    11121111    /// \ref named-templ-param "Named parameter"
    11131112    ///for setting \ref ProcessedMap object.
    11141113    template<class T>
    1115     BfsWizard<DefProcessedMapBase<T> > processedMap(const T &t)
     1114    BfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
    11161115    {
    11171116      Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t));
    1118       return BfsWizard<DefProcessedMapBase<T> >(*this);
     1117      return BfsWizard<SetProcessedMapBase<T> >(*this);
    11191118    }
    11201119
    11211120    template<class T>
    1122     struct DefDistMapBase : public Base {
     1121    struct SetDistMapBase : public Base {
    11231122      typedef T DistMap;
    11241123      static DistMap *createDistMap(const Digraph &) { return 0; };
    1125       DefDistMapBase(const TR &b) : TR(b) {}
     1124      SetDistMapBase(const TR &b) : TR(b) {}
    11261125    };
    11271126    ///\brief \ref named-templ-param "Named parameter"
    11281127    ///for setting \ref DistMap object.
     
    11301129    /// \ref named-templ-param "Named parameter"
    11311130    ///for setting \ref DistMap object.
    11321131    template<class T>
    1133     BfsWizard<DefDistMapBase<T> > distMap(const T &t)
     1132    BfsWizard<SetDistMapBase<T> > distMap(const T &t)
    11341133    {
    11351134      Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t));
    1136       return BfsWizard<DefDistMapBase<T> >(*this);
     1135      return BfsWizard<SetDistMapBase<T> >(*this);
    11371136    }
    11381137
    11391138  };
     
    13491348
    13501349    ///@{
    13511350    template <class T>
    1352     struct DefReachedMapTraits : public Traits {
     1351    struct SetReachedMapTraits : public Traits {
    13531352      typedef T ReachedMap;
    13541353      static ReachedMap *createReachedMap(const Digraph &digraph) {
    13551354        throw UninitializedParameter();
     
    13601359    ///
    13611360    /// \ref named-templ-param "Named parameter" for setting ReachedMap type.
    13621361    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;
    13661365    };
    13671366    ///@}
    13681367
  • lemon/dfs.h

    diff -r f0b89f242745 -r 8d76a7bf9961 lemon/dfs.h
    a b  
    230230    ///@{
    231231
    232232    template <class T>
    233     struct DefPredMapTraits : public Traits {
     233    struct SetPredMapTraits : public Traits {
    234234      typedef T PredMap;
    235235      static PredMap *createPredMap(const Digraph &)
    236236      {
     
    243243    ///\ref named-templ-param "Named parameter" for setting
    244244    ///\ref PredMap type.
    245245    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;
    248248    };
    249249
    250250    template <class T>
    251     struct DefDistMapTraits : public Traits {
     251    struct SetDistMapTraits : public Traits {
    252252      typedef T DistMap;
    253253      static DistMap *createDistMap(const Digraph &)
    254254      {
     
    261261    ///\ref named-templ-param "Named parameter" for setting
    262262    ///\ref DistMap type.
    263263    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;
    266266    };
    267267
    268268    template <class T>
    269     struct DefReachedMapTraits : public Traits {
     269    struct SetReachedMapTraits : public Traits {
    270270      typedef T ReachedMap;
    271271      static ReachedMap *createReachedMap(const Digraph &)
    272272      {
     
    279279    ///\ref named-templ-param "Named parameter" for setting
    280280    ///\ref ReachedMap type.
    281281    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;
    284284    };
    285285
    286286    template <class T>
    287     struct DefProcessedMapTraits : public Traits {
     287    struct SetProcessedMapTraits : public Traits {
    288288      typedef T ProcessedMap;
    289289      static ProcessedMap *createProcessedMap(const Digraph &)
    290290      {
     
    297297    ///\ref named-templ-param "Named parameter" for setting
    298298    ///\ref ProcessedMap type.
    299299    template <class T>
    300     struct DefProcessedMap : public Dfs< Digraph, DefProcessedMapTraits<T> > {
    301       typedef Dfs< Digraph, DefProcessedMapTraits<T> > Create;
     300    struct SetProcessedMap : public Dfs< Digraph, SetProcessedMapTraits<T> > {
     301      typedef Dfs< Digraph, SetProcessedMapTraits<T> > Create;
    302302    };
    303303
    304     struct DefDigraphProcessedMapTraits : public Traits {
     304    struct SetStandardProcessedMapTraits : public Traits {
    305305      typedef typename Digraph::template NodeMap<bool> ProcessedMap;
    306306      static ProcessedMap *createProcessedMap(const Digraph &g)
    307307      {
     
    314314    ///\ref named-templ-param "Named parameter" for setting
    315315    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
    316316    ///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;
    321320    };
    322321
    323322    ///@}
     
    1000999    }
    10011000
    10021001    template<class T>
    1003     struct DefPredMapBase : public Base {
     1002    struct SetPredMapBase : public Base {
    10041003      typedef T PredMap;
    10051004      static PredMap *createPredMap(const Digraph &) { return 0; };
    1006       DefPredMapBase(const TR &b) : TR(b) {}
     1005      SetPredMapBase(const TR &b) : TR(b) {}
    10071006    };
    10081007    ///\brief \ref named-templ-param "Named parameter"
    10091008    ///for setting \ref PredMap object.
     
    10111010    ///\ref named-templ-param "Named parameter"
    10121011    ///for setting \ref PredMap object.
    10131012    template<class T>
    1014     DfsWizard<DefPredMapBase<T> > predMap(const T &t)
     1013    DfsWizard<SetPredMapBase<T> > predMap(const T &t)
    10151014    {
    10161015      Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t));
    1017       return DfsWizard<DefPredMapBase<T> >(*this);
     1016      return DfsWizard<SetPredMapBase<T> >(*this);
    10181017    }
    10191018
    10201019    template<class T>
    1021     struct DefReachedMapBase : public Base {
     1020    struct SetReachedMapBase : public Base {
    10221021      typedef T ReachedMap;
    10231022      static ReachedMap *createReachedMap(const Digraph &) { return 0; };
    1024       DefReachedMapBase(const TR &b) : TR(b) {}
     1023      SetReachedMapBase(const TR &b) : TR(b) {}
    10251024    };
    10261025    ///\brief \ref named-templ-param "Named parameter"
    10271026    ///for setting \ref ReachedMap object.
     
    10291028    /// \ref named-templ-param "Named parameter"
    10301029    ///for setting \ref ReachedMap object.
    10311030    template<class T>
    1032     DfsWizard<DefReachedMapBase<T> > reachedMap(const T &t)
     1031    DfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
    10331032    {
    10341033      Base::_reached=reinterpret_cast<void*>(const_cast<T*>(&t));
    1035       return DfsWizard<DefReachedMapBase<T> >(*this);
     1034      return DfsWizard<SetReachedMapBase<T> >(*this);
    10361035    }
    10371036
    10381037    template<class T>
    1039     struct DefProcessedMapBase : public Base {
     1038    struct SetProcessedMapBase : public Base {
    10401039      typedef T ProcessedMap;
    10411040      static ProcessedMap *createProcessedMap(const Digraph &) { return 0; };
    1042       DefProcessedMapBase(const TR &b) : TR(b) {}
     1041      SetProcessedMapBase(const TR &b) : TR(b) {}
    10431042    };
    10441043    ///\brief \ref named-templ-param "Named parameter"
    10451044    ///for setting \ref ProcessedMap object.
     
    10471046    /// \ref named-templ-param "Named parameter"
    10481047    ///for setting \ref ProcessedMap object.
    10491048    template<class T>
    1050     DfsWizard<DefProcessedMapBase<T> > processedMap(const T &t)
     1049    DfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
    10511050    {
    10521051      Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t));
    1053       return DfsWizard<DefProcessedMapBase<T> >(*this);
     1052      return DfsWizard<SetProcessedMapBase<T> >(*this);
    10541053    }
    10551054
    10561055    template<class T>
    1057     struct DefDistMapBase : public Base {
     1056    struct SetDistMapBase : public Base {
    10581057      typedef T DistMap;
    10591058      static DistMap *createDistMap(const Digraph &) { return 0; };
    1060       DefDistMapBase(const TR &b) : TR(b) {}
     1059      SetDistMapBase(const TR &b) : TR(b) {}
    10611060    };
    10621061    ///\brief \ref named-templ-param "Named parameter"
    10631062    ///for setting \ref DistMap object.
     
    10651064    ///\ref named-templ-param "Named parameter"
    10661065    ///for setting \ref DistMap object.
    10671066    template<class T>
    1068     DfsWizard<DefDistMapBase<T> > distMap(const T &t)
     1067    DfsWizard<SetDistMapBase<T> > distMap(const T &t)
    10691068    {
    10701069      Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t));
    1071       return DfsWizard<DefDistMapBase<T> >(*this);
     1070      return DfsWizard<SetDistMapBase<T> >(*this);
    10721071    }
    10731072
    10741073  };
     
    12961295
    12971296    ///@{
    12981297    template <class T>
    1299     struct DefReachedMapTraits : public Traits {
     1298    struct SetReachedMapTraits : public Traits {
    13001299      typedef T ReachedMap;
    13011300      static ReachedMap *createReachedMap(const Digraph &digraph) {
    13021301        throw UninitializedParameter();
     
    13071306    ///
    13081307    /// \ref named-templ-param "Named parameter" for setting ReachedMap type.
    13091308    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;
    13131312    };
    13141313    ///@}
    13151314
  • lemon/dijkstra.h

    diff -r f0b89f242745 -r 8d76a7bf9961 lemon/dijkstra.h
    a b  
    331331    ///@{
    332332
    333333    template <class T>
    334     struct DefPredMapTraits : public Traits {
     334    struct SetPredMapTraits : public Traits {
    335335      typedef T PredMap;
    336336      static PredMap *createPredMap(const Digraph &)
    337337      {
     
    344344    ///\ref named-templ-param "Named parameter" for setting
    345345    ///\ref PredMap type.
    346346    template <class T>
    347     struct DefPredMap
    348       : 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;
    350350    };
    351351
    352352    template <class T>
    353     struct DefDistMapTraits : public Traits {
     353    struct SetDistMapTraits : public Traits {
    354354      typedef T DistMap;
    355355      static DistMap *createDistMap(const Digraph &)
    356356      {
     
    363363    ///\ref named-templ-param "Named parameter" for setting
    364364    ///\ref DistMap type.
    365365    template <class T>
    366     struct DefDistMap
    367       : 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;
    369369    };
    370370
    371371    template <class T>
    372     struct DefProcessedMapTraits : public Traits {
     372    struct SetProcessedMapTraits : public Traits {
    373373      typedef T ProcessedMap;
    374374      static ProcessedMap *createProcessedMap(const Digraph &)
    375375      {
     
    382382    ///\ref named-templ-param "Named parameter" for setting
    383383    ///\ref ProcessedMap type.
    384384    template <class T>
    385     struct DefProcessedMap
    386       : public Dijkstra< Digraph, LengthMap, DefProcessedMapTraits<T> > {
    387       typedef Dijkstra< Digraph, LengthMap, DefProcessedMapTraits<T> > Create;
     385    struct SetProcessedMap
     386      : public Dijkstra< Digraph, LengthMap, SetProcessedMapTraits<T> > {
     387      typedef Dijkstra< Digraph, LengthMap, SetProcessedMapTraits<T> > Create;
    388388    };
    389389
    390     struct DefDigraphProcessedMapTraits : public Traits {
     390    struct SetStandardProcessedMapTraits : public Traits {
    391391      typedef typename Digraph::template NodeMap<bool> ProcessedMap;
    392392      static ProcessedMap *createProcessedMap(const Digraph &g)
    393393      {
     
    400400    ///\ref named-templ-param "Named parameter" for setting
    401401    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
    402402    ///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 >
    407406      Create;
    408407    };
    409408
    410409    template <class H, class CR>
    411     struct DefHeapTraits : public Traits {
     410    struct SetHeapTraits : public Traits {
    412411      typedef CR HeapCrossRef;
    413412      typedef H Heap;
    414413      static HeapCrossRef *createHeapCrossRef(const Digraph &) {
     
    425424    ///\ref named-templ-param "Named parameter" for setting heap and cross
    426425    ///reference type.
    427426    template <class H, class CR = typename Digraph::template NodeMap<int> >
    428     struct DefHeap
    429       : 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;
    431430    };
    432431
    433432    template <class H, class CR>
    434     struct DefStandardHeapTraits : public Traits {
     433    struct SetStandardHeapTraits : public Traits {
    435434      typedef CR HeapCrossRef;
    436435      typedef H Heap;
    437436      static HeapCrossRef *createHeapCrossRef(const Digraph &G) {
     
    450449    ///object if the cross reference's constructor waits for the digraph as
    451450    ///parameter and the heap's constructor waits for the cross reference.
    452451    template <class H, class CR = typename Digraph::template NodeMap<int> >
    453     struct DefStandardHeap
    454       : 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> >
    456455      Create;
    457456    };
    458457
    459458    template <class T>
    460     struct DefOperationTraitsTraits : public Traits {
     459    struct SetOperationTraitsTraits : public Traits {
    461460      typedef T OperationTraits;
    462461    };
    463462
     
    467466    ///\ref named-templ-param "Named parameter" for setting
    468467    ///\ref OperationTraits type.
    469468    template <class T>
    470     struct DefOperationTraits
    471       : 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> >
    473472      Create;
    474473    };
    475474
     
    11991198    }
    12001199
    12011200    template<class T>
    1202     struct DefPredMapBase : public Base {
     1201    struct SetPredMapBase : public Base {
    12031202      typedef T PredMap;
    12041203      static PredMap *createPredMap(const Digraph &) { return 0; };
    1205       DefPredMapBase(const TR &b) : TR(b) {}
     1204      SetPredMapBase(const TR &b) : TR(b) {}
    12061205    };
    12071206    ///\brief \ref named-templ-param "Named parameter"
    12081207    ///for setting \ref PredMap object.
     
    12101209    ///\ref named-templ-param "Named parameter"
    12111210    ///for setting \ref PredMap object.
    12121211    template<class T>
    1213     DijkstraWizard<DefPredMapBase<T> > predMap(const T &t)
     1212    DijkstraWizard<SetPredMapBase<T> > predMap(const T &t)
    12141213    {
    12151214      Base::_pred=reinterpret_cast<void*>(const_cast<T*>(&t));
    1216       return DijkstraWizard<DefPredMapBase<T> >(*this);
     1215      return DijkstraWizard<SetPredMapBase<T> >(*this);
    12171216    }
    12181217
    12191218    template<class T>
    1220     struct DefProcessedMapBase : public Base {
     1219    struct SetProcessedMapBase : public Base {
    12211220      typedef T ProcessedMap;
    12221221      static ProcessedMap *createProcessedMap(const Digraph &) { return 0; };
    1223       DefProcessedMapBase(const TR &b) : TR(b) {}
     1222      SetProcessedMapBase(const TR &b) : TR(b) {}
    12241223    };
    12251224    ///\brief \ref named-templ-param "Named parameter"
    12261225    ///for setting \ref ProcessedMap object.
     
    12281227    /// \ref named-templ-param "Named parameter"
    12291228    ///for setting \ref ProcessedMap object.
    12301229    template<class T>
    1231     DijkstraWizard<DefProcessedMapBase<T> > processedMap(const T &t)
     1230    DijkstraWizard<SetProcessedMapBase<T> > processedMap(const T &t)
    12321231    {
    12331232      Base::_processed=reinterpret_cast<void*>(const_cast<T*>(&t));
    1234       return DijkstraWizard<DefProcessedMapBase<T> >(*this);
     1233      return DijkstraWizard<SetProcessedMapBase<T> >(*this);
    12351234    }
    12361235
    12371236    template<class T>
    1238     struct DefDistMapBase : public Base {
     1237    struct SetDistMapBase : public Base {
    12391238      typedef T DistMap;
    12401239      static DistMap *createDistMap(const Digraph &) { return 0; };
    1241       DefDistMapBase(const TR &b) : TR(b) {}
     1240      SetDistMapBase(const TR &b) : TR(b) {}
    12421241    };
    12431242    ///\brief \ref named-templ-param "Named parameter"
    12441243    ///for setting \ref DistMap object.
     
    12461245    ///\ref named-templ-param "Named parameter"
    12471246    ///for setting \ref DistMap object.
    12481247    template<class T>
    1249     DijkstraWizard<DefDistMapBase<T> > distMap(const T &t)
     1248    DijkstraWizard<SetDistMapBase<T> > distMap(const T &t)
    12501249    {
    12511250      Base::_dist=reinterpret_cast<void*>(const_cast<T*>(&t));
    1252       return DijkstraWizard<DefDistMapBase<T> >(*this);
     1251      return DijkstraWizard<SetDistMapBase<T> >(*this);
    12531252    }
    12541253
    12551254  };
  • test/heap_test.cc

    diff -r f0b89f242745 -r 8d76a7bf9961 test/heap_test.cc
    a b  
    131131void dijkstraHeapTest(const Digraph& digraph, const IntArcMap& length,
    132132                      Node source) {
    133133
    134   typename Dijkstra<Digraph, IntArcMap>::template DefStandardHeap<Heap>::
     134  typename Dijkstra<Digraph, IntArcMap>::template SetStandardHeap<Heap>::
    135135    Create dijkstra(digraph, length);
    136136
    137137  dijkstra.run(source);