1.1 --- a/INSTALL Thu Feb 11 07:40:29 2010 +0100
1.2 +++ b/INSTALL Fri Feb 12 22:17:20 2010 +0100
1.3 @@ -173,3 +173,25 @@
1.4 --without-coin
1.5
1.6 Disable COIN-OR support.
1.7 +
1.8 +
1.9 +Makefile Variables
1.10 +==================
1.11 +
1.12 +Some Makefile variables are reserved by the GNU Coding Standards for
1.13 +the use of the "user" - the person building the package. For instance,
1.14 +CXX and CXXFLAGS are such variables, and have the same meaning as
1.15 +explained in the previous section. These variables can be set on the
1.16 +command line when invoking `make' like this:
1.17 +`make [VARIABLE=VALUE]...'
1.18 +
1.19 +WARNINGCXXFLAGS is a non-standard Makefile variable introduced by us
1.20 +to hold several compiler flags related to warnings. Its default value
1.21 +can be overridden when invoking `make'. For example to disable all
1.22 +warning flags use `make WARNINGCXXFLAGS='.
1.23 +
1.24 +In order to turn off a single flag from the default set of warning
1.25 +flags, you can use the CXXFLAGS variable, since this is passed after
1.26 +WARNINGCXXFLAGS. For example to turn off `-Wold-style-cast' (which is
1.27 +used by default when g++ is detected) you can use
1.28 +`make CXXFLAGS="-g -O2 -Wno-old-style-cast"'.
2.1 --- a/lemon/bellman_ford.h Thu Feb 11 07:40:29 2010 +0100
2.2 +++ b/lemon/bellman_ford.h Fri Feb 12 22:17:20 2010 +0100
2.3 @@ -171,6 +171,11 @@
2.4 /// \tparam LEN A \ref concepts::ReadMap "readable" arc map that specifies
2.5 /// the lengths of the arcs. The default map type is
2.6 /// \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
2.7 + /// \tparam TR The traits class that defines various types used by the
2.8 + /// algorithm. By default, it is \ref BellmanFordDefaultTraits
2.9 + /// "BellmanFordDefaultTraits<GR, LEN>".
2.10 + /// In most cases, this parameter should not be set directly,
2.11 + /// consider to use the named template parameters instead.
2.12 #ifdef DOXYGEN
2.13 template <typename GR, typename LEN, typename TR>
2.14 #else
2.15 @@ -933,6 +938,9 @@
2.16 ///
2.17 /// This class should only be used through the \ref bellmanFord()
2.18 /// function, which makes it easier to use the algorithm.
2.19 + ///
2.20 + /// \tparam TR The traits class that defines various types used by the
2.21 + /// algorithm.
2.22 template<class TR>
2.23 class BellmanFordWizard : public TR {
2.24 typedef TR Base;
3.1 --- a/lemon/bfs.h Thu Feb 11 07:40:29 2010 +0100
3.2 +++ b/lemon/bfs.h Fri Feb 12 22:17:20 2010 +0100
3.3 @@ -121,6 +121,11 @@
3.4 ///
3.5 ///\tparam GR The type of the digraph the algorithm runs on.
3.6 ///The default type is \ref ListDigraph.
3.7 + ///\tparam TR The traits class that defines various types used by the
3.8 + ///algorithm. By default, it is \ref BfsDefaultTraits
3.9 + ///"BfsDefaultTraits<GR>".
3.10 + ///In most cases, this parameter should not be set directly,
3.11 + ///consider to use the named template parameters instead.
3.12 #ifdef DOXYGEN
3.13 template <typename GR,
3.14 typename TR>
3.15 @@ -957,6 +962,9 @@
3.16 ///
3.17 /// This class should only be used through the \ref bfs() function,
3.18 /// which makes it easier to use the algorithm.
3.19 + ///
3.20 + /// \tparam TR The traits class that defines various types used by the
3.21 + /// algorithm.
3.22 template<class TR>
3.23 class BfsWizard : public TR
3.24 {
3.25 @@ -1295,11 +1303,11 @@
3.26 /// \ref BfsVisitor "BfsVisitor<GR>" is an empty visitor, which
3.27 /// does not observe the BFS events. If you want to observe the BFS
3.28 /// events, you should implement your own visitor class.
3.29 - /// \tparam TR Traits class to set various data types used by the
3.30 - /// algorithm. The default traits class is
3.31 - /// \ref BfsVisitDefaultTraits "BfsVisitDefaultTraits<GR>".
3.32 - /// See \ref BfsVisitDefaultTraits for the documentation of
3.33 - /// a BFS visit traits class.
3.34 + /// \tparam TR The traits class that defines various types used by the
3.35 + /// algorithm. By default, it is \ref BfsVisitDefaultTraits
3.36 + /// "BfsVisitDefaultTraits<GR>".
3.37 + /// In most cases, this parameter should not be set directly,
3.38 + /// consider to use the named template parameters instead.
3.39 #ifdef DOXYGEN
3.40 template <typename GR, typename VS, typename TR>
3.41 #else
4.1 --- a/lemon/capacity_scaling.h Thu Feb 11 07:40:29 2010 +0100
4.2 +++ b/lemon/capacity_scaling.h Fri Feb 12 22:17:20 2010 +0100
4.3 @@ -77,9 +77,14 @@
4.4 ///
4.5 /// \tparam GR The digraph type the algorithm runs on.
4.6 /// \tparam V The number type used for flow amounts, capacity bounds
4.7 - /// and supply values in the algorithm. By default it is \c int.
4.8 + /// and supply values in the algorithm. By default, it is \c int.
4.9 /// \tparam C The number type used for costs and potentials in the
4.10 - /// algorithm. By default it is the same as \c V.
4.11 + /// algorithm. By default, it is the same as \c V.
4.12 + /// \tparam TR The traits class that defines various types used by the
4.13 + /// algorithm. By default, it is \ref CapacityScalingDefaultTraits
4.14 + /// "CapacityScalingDefaultTraits<GR, V, C>".
4.15 + /// In most cases, this parameter should not be set directly,
4.16 + /// consider to use the named template parameters instead.
4.17 ///
4.18 /// \warning Both number types must be signed and all input data must
4.19 /// be integer.
5.1 --- a/lemon/circulation.h Thu Feb 11 07:40:29 2010 +0100
5.2 +++ b/lemon/circulation.h Fri Feb 12 22:17:20 2010 +0100
5.3 @@ -173,6 +173,11 @@
5.4 The default map type is \c LM.
5.5 \tparam SM The type of the supply map. The default map type is
5.6 \ref concepts::Digraph::NodeMap "GR::NodeMap<UM::Value>".
5.7 + \tparam TR The traits class that defines various types used by the
5.8 + algorithm. By default, it is \ref CirculationDefaultTraits
5.9 + "CirculationDefaultTraits<GR, LM, UM, SM>".
5.10 + In most cases, this parameter should not be set directly,
5.11 + consider to use the named template parameters instead.
5.12 */
5.13 #ifdef DOXYGEN
5.14 template< typename GR,
6.1 --- a/lemon/cost_scaling.h Thu Feb 11 07:40:29 2010 +0100
6.2 +++ b/lemon/cost_scaling.h Fri Feb 12 22:17:20 2010 +0100
6.3 @@ -104,9 +104,14 @@
6.4 ///
6.5 /// \tparam GR The digraph type the algorithm runs on.
6.6 /// \tparam V The number type used for flow amounts, capacity bounds
6.7 - /// and supply values in the algorithm. By default it is \c int.
6.8 + /// and supply values in the algorithm. By default, it is \c int.
6.9 /// \tparam C The number type used for costs and potentials in the
6.10 - /// algorithm. By default it is the same as \c V.
6.11 + /// algorithm. By default, it is the same as \c V.
6.12 + /// \tparam TR The traits class that defines various types used by the
6.13 + /// algorithm. By default, it is \ref CostScalingDefaultTraits
6.14 + /// "CostScalingDefaultTraits<GR, V, C>".
6.15 + /// In most cases, this parameter should not be set directly,
6.16 + /// consider to use the named template parameters instead.
6.17 ///
6.18 /// \warning Both number types must be signed and all input data must
6.19 /// be integer.
6.20 @@ -136,8 +141,7 @@
6.21 /// \brief The large cost type
6.22 ///
6.23 /// The large cost type used for internal computations.
6.24 - /// Using the \ref CostScalingDefaultTraits "default traits class",
6.25 - /// it is \c long \c long if the \c Cost type is integer,
6.26 + /// By default, it is \c long \c long if the \c Cost type is integer,
6.27 /// otherwise it is \c double.
6.28 typedef typename TR::LargeCost LargeCost;
6.29
7.1 --- a/lemon/dfs.h Thu Feb 11 07:40:29 2010 +0100
7.2 +++ b/lemon/dfs.h Fri Feb 12 22:17:20 2010 +0100
7.3 @@ -121,6 +121,11 @@
7.4 ///
7.5 ///\tparam GR The type of the digraph the algorithm runs on.
7.6 ///The default type is \ref ListDigraph.
7.7 + ///\tparam TR The traits class that defines various types used by the
7.8 + ///algorithm. By default, it is \ref DfsDefaultTraits
7.9 + ///"DfsDefaultTraits<GR>".
7.10 + ///In most cases, this parameter should not be set directly,
7.11 + ///consider to use the named template parameters instead.
7.12 #ifdef DOXYGEN
7.13 template <typename GR,
7.14 typename TR>
7.15 @@ -887,6 +892,9 @@
7.16 ///
7.17 /// This class should only be used through the \ref dfs() function,
7.18 /// which makes it easier to use the algorithm.
7.19 + ///
7.20 + /// \tparam TR The traits class that defines various types used by the
7.21 + /// algorithm.
7.22 template<class TR>
7.23 class DfsWizard : public TR
7.24 {
7.25 @@ -1237,11 +1245,11 @@
7.26 /// \ref DfsVisitor "DfsVisitor<GR>" is an empty visitor, which
7.27 /// does not observe the DFS events. If you want to observe the DFS
7.28 /// events, you should implement your own visitor class.
7.29 - /// \tparam TR Traits class to set various data types used by the
7.30 - /// algorithm. The default traits class is
7.31 - /// \ref DfsVisitDefaultTraits "DfsVisitDefaultTraits<GR>".
7.32 - /// See \ref DfsVisitDefaultTraits for the documentation of
7.33 - /// a DFS visit traits class.
7.34 + /// \tparam TR The traits class that defines various types used by the
7.35 + /// algorithm. By default, it is \ref DfsVisitDefaultTraits
7.36 + /// "DfsVisitDefaultTraits<GR>".
7.37 + /// In most cases, this parameter should not be set directly,
7.38 + /// consider to use the named template parameters instead.
7.39 #ifdef DOXYGEN
7.40 template <typename GR, typename VS, typename TR>
7.41 #else
8.1 --- a/lemon/dijkstra.h Thu Feb 11 07:40:29 2010 +0100
8.2 +++ b/lemon/dijkstra.h Fri Feb 12 22:17:20 2010 +0100
8.3 @@ -192,6 +192,11 @@
8.4 ///relatively time consuming process to compute the arc lengths if
8.5 ///it is necessary. The default map type is \ref
8.6 ///concepts::Digraph::ArcMap "GR::ArcMap<int>".
8.7 + ///\tparam TR The traits class that defines various types used by the
8.8 + ///algorithm. By default, it is \ref DijkstraDefaultTraits
8.9 + ///"DijkstraDefaultTraits<GR, LEN>".
8.10 + ///In most cases, this parameter should not be set directly,
8.11 + ///consider to use the named template parameters instead.
8.12 #ifdef DOXYGEN
8.13 template <typename GR, typename LEN, typename TR>
8.14 #else
8.15 @@ -1092,6 +1097,9 @@
8.16 ///
8.17 /// This class should only be used through the \ref dijkstra() function,
8.18 /// which makes it easier to use the algorithm.
8.19 + ///
8.20 + /// \tparam TR The traits class that defines various types used by the
8.21 + /// algorithm.
8.22 template<class TR>
8.23 class DijkstraWizard : public TR
8.24 {
9.1 --- a/lemon/hartmann_orlin.h Thu Feb 11 07:40:29 2010 +0100
9.2 +++ b/lemon/hartmann_orlin.h Fri Feb 12 22:17:20 2010 +0100
9.3 @@ -106,6 +106,11 @@
9.4 /// \tparam GR The type of the digraph the algorithm runs on.
9.5 /// \tparam LEN The type of the length map. The default
9.6 /// map type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
9.7 + /// \tparam TR The traits class that defines various types used by the
9.8 + /// algorithm. By default, it is \ref HartmannOrlinDefaultTraits
9.9 + /// "HartmannOrlinDefaultTraits<GR, LEN>".
9.10 + /// In most cases, this parameter should not be set directly,
9.11 + /// consider to use the named template parameters instead.
9.12 #ifdef DOXYGEN
9.13 template <typename GR, typename LEN, typename TR>
9.14 #else
9.15 @@ -127,8 +132,7 @@
9.16 /// \brief The large value type
9.17 ///
9.18 /// The large value type used for internal computations.
9.19 - /// Using the \ref HartmannOrlinDefaultTraits "default traits class",
9.20 - /// it is \c long \c long if the \c Value type is integer,
9.21 + /// By default, it is \c long \c long if the \c Value type is integer,
9.22 /// otherwise it is \c double.
9.23 typedef typename TR::LargeValue LargeValue;
9.24
10.1 --- a/lemon/howard.h Thu Feb 11 07:40:29 2010 +0100
10.2 +++ b/lemon/howard.h Fri Feb 12 22:17:20 2010 +0100
10.3 @@ -106,6 +106,11 @@
10.4 /// \tparam GR The type of the digraph the algorithm runs on.
10.5 /// \tparam LEN The type of the length map. The default
10.6 /// map type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
10.7 + /// \tparam TR The traits class that defines various types used by the
10.8 + /// algorithm. By default, it is \ref HowardDefaultTraits
10.9 + /// "HowardDefaultTraits<GR, LEN>".
10.10 + /// In most cases, this parameter should not be set directly,
10.11 + /// consider to use the named template parameters instead.
10.12 #ifdef DOXYGEN
10.13 template <typename GR, typename LEN, typename TR>
10.14 #else
10.15 @@ -127,8 +132,7 @@
10.16 /// \brief The large value type
10.17 ///
10.18 /// The large value type used for internal computations.
10.19 - /// Using the \ref HowardDefaultTraits "default traits class",
10.20 - /// it is \c long \c long if the \c Value type is integer,
10.21 + /// By default, it is \c long \c long if the \c Value type is integer,
10.22 /// otherwise it is \c double.
10.23 typedef typename TR::LargeValue LargeValue;
10.24
11.1 --- a/lemon/karp.h Thu Feb 11 07:40:29 2010 +0100
11.2 +++ b/lemon/karp.h Fri Feb 12 22:17:20 2010 +0100
11.3 @@ -104,6 +104,11 @@
11.4 /// \tparam GR The type of the digraph the algorithm runs on.
11.5 /// \tparam LEN The type of the length map. The default
11.6 /// map type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
11.7 + /// \tparam TR The traits class that defines various types used by the
11.8 + /// algorithm. By default, it is \ref KarpDefaultTraits
11.9 + /// "KarpDefaultTraits<GR, LEN>".
11.10 + /// In most cases, this parameter should not be set directly,
11.11 + /// consider to use the named template parameters instead.
11.12 #ifdef DOXYGEN
11.13 template <typename GR, typename LEN, typename TR>
11.14 #else
11.15 @@ -125,8 +130,7 @@
11.16 /// \brief The large value type
11.17 ///
11.18 /// The large value type used for internal computations.
11.19 - /// Using the \ref KarpDefaultTraits "default traits class",
11.20 - /// it is \c long \c long if the \c Value type is integer,
11.21 + /// By default, it is \c long \c long if the \c Value type is integer,
11.22 /// otherwise it is \c double.
11.23 typedef typename TR::LargeValue LargeValue;
11.24
12.1 --- a/lemon/min_cost_arborescence.h Thu Feb 11 07:40:29 2010 +0100
12.2 +++ b/lemon/min_cost_arborescence.h Fri Feb 12 22:17:20 2010 +0100
12.3 @@ -112,17 +112,18 @@
12.4 /// relatively time consuming process to compute the arc costs if
12.5 /// it is necessary. The default map type is \ref
12.6 /// concepts::Digraph::ArcMap "Digraph::ArcMap<int>".
12.7 - /// \param TR Traits class to set various data types used
12.8 - /// by the algorithm. The default traits class is
12.9 - /// \ref MinCostArborescenceDefaultTraits
12.10 + /// \tparam TR The traits class that defines various types used by the
12.11 + /// algorithm. By default, it is \ref MinCostArborescenceDefaultTraits
12.12 /// "MinCostArborescenceDefaultTraits<GR, CM>".
12.13 + /// In most cases, this parameter should not be set directly,
12.14 + /// consider to use the named template parameters instead.
12.15 #ifndef DOXYGEN
12.16 template <typename GR,
12.17 typename CM = typename GR::template ArcMap<int>,
12.18 typename TR =
12.19 MinCostArborescenceDefaultTraits<GR, CM> >
12.20 #else
12.21 - template <typename GR, typename CM, typedef TR>
12.22 + template <typename GR, typename CM, typename TR>
12.23 #endif
12.24 class MinCostArborescence {
12.25 public:
13.1 --- a/lemon/preflow.h Thu Feb 11 07:40:29 2010 +0100
13.2 +++ b/lemon/preflow.h Fri Feb 12 22:17:20 2010 +0100
13.3 @@ -119,6 +119,11 @@
13.4 /// \tparam GR The type of the digraph the algorithm runs on.
13.5 /// \tparam CAP The type of the capacity map. The default map
13.6 /// type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
13.7 + /// \tparam TR The traits class that defines various types used by the
13.8 + /// algorithm. By default, it is \ref PreflowDefaultTraits
13.9 + /// "PreflowDefaultTraits<GR, CAP>".
13.10 + /// In most cases, this parameter should not be set directly,
13.11 + /// consider to use the named template parameters instead.
13.12 #ifdef DOXYGEN
13.13 template <typename GR, typename CAP, typename TR>
13.14 #else