Merge from trunk 1.0
authorAlpar Juttner <alpar@cs.elte.hu>
Thu, 09 Oct 2008 14:37:44 +0100
branch1.0
changeset 32012626fc94ccf
parent 303 de38fca76780
parent 319 c175e387da19
child 322 8c4d380787cf
Merge from trunk
benchmark/Makefile.am
doc/groups.dox
doc/mainpage.dox
lemon/maps.h
     1.1 --- a/Makefile.am	Thu Oct 09 13:52:01 2008 +0100
     1.2 +++ b/Makefile.am	Thu Oct 09 14:37:44 2008 +0100
     1.3 @@ -24,6 +24,7 @@
     1.4  noinst_PROGRAMS =
     1.5  bin_PROGRAMS =
     1.6  check_PROGRAMS =
     1.7 +dist_bin_SCRIPTS =
     1.8  TESTS =
     1.9  XFAIL_TESTS =
    1.10  
    1.11 @@ -31,7 +32,6 @@
    1.12  include test/Makefile.am
    1.13  include doc/Makefile.am
    1.14  include demo/Makefile.am
    1.15 -include benchmark/Makefile.am
    1.16  include tools/Makefile.am
    1.17  
    1.18  MRPROPERFILES = \
     2.1 --- a/README	Thu Oct 09 13:52:01 2008 +0100
     2.2 +++ b/README	Thu Oct 09 14:37:44 2008 +0100
     2.3 @@ -37,10 +37,6 @@
     2.4  
     2.5     Contains programs to check the integrity and correctness of LEMON.
     2.6  
     2.7 -benchmark/
     2.8 -  
     2.9 -   Contains programs for measuring the performance of algorithms.
    2.10 -
    2.11  tools/
    2.12  
    2.13     Various utilities related to LEMON.
     3.1 --- a/benchmark/Makefile.am	Thu Oct 09 13:52:01 2008 +0100
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,7 +0,0 @@
     3.4 -if WANT_BENCHMARK
     3.5 -
     3.6 -noinst_HEADERS +=
     3.7 -
     3.8 -noinst_PROGRAMS +=
     3.9 -
    3.10 -endif WANT_BENCHMARK
     4.1 --- a/configure.ac	Thu Oct 09 13:52:01 2008 +0100
     4.2 +++ b/configure.ac	Thu Oct 09 14:37:44 2008 +0100
     4.3 @@ -81,19 +81,6 @@
     4.4  fi
     4.5  AM_CONDITIONAL([WANT_TOOLS], [test x"$enable_tools" != x"no"])
     4.6  
     4.7 -dnl Disable/enable building the benchmarks.
     4.8 -AC_ARG_ENABLE([benchmark],
     4.9 -AS_HELP_STRING([--enable-benchmark], [build the benchmarks])
    4.10 -AS_HELP_STRING([--disable-benchmark], [do not build the benchmarks @<:@default@:>@]),
    4.11 -              [], [enable_benchmark=no])
    4.12 -AC_MSG_CHECKING([whether to build the benchmarks])
    4.13 -if test x"$enable_benchmark" != x"no"; then
    4.14 -  AC_MSG_RESULT([yes])
    4.15 -else
    4.16 -  AC_MSG_RESULT([no])
    4.17 -fi
    4.18 -AM_CONDITIONAL([WANT_BENCHMARK], [test x"$enable_benchmark" != x"no"])
    4.19 -
    4.20  dnl Checks for header files.
    4.21  AC_CHECK_HEADERS(limits.h sys/time.h sys/times.h unistd.h)
    4.22  
    4.23 @@ -132,7 +119,6 @@
    4.24  #echo CPLEX support................. : $lx_cplex_found
    4.25  #echo SOPLEX support................ : $lx_soplex_found
    4.26  #echo
    4.27 -echo Build benchmarks.............. : $enable_benchmark
    4.28  echo Build demo programs........... : $enable_demo
    4.29  echo Build additional tools........ : $enable_tools
    4.30  echo
     5.1 --- a/demo/arg_parser_demo.cc	Thu Oct 09 13:52:01 2008 +0100
     5.2 +++ b/demo/arg_parser_demo.cc	Thu Oct 09 14:37:44 2008 +0100
     5.3 @@ -27,7 +27,7 @@
     5.4  #include <lemon/arg_parser.h>
     5.5  
     5.6  using namespace lemon;
     5.7 -int main(int argc, const char **argv)
     5.8 +int main(int argc, char **argv)
     5.9  {
    5.10    // Initialize the argument parser
    5.11    ArgParser ap(argc, argv);
     6.1 --- a/demo/graph_to_eps_demo.cc	Thu Oct 09 13:52:01 2008 +0100
     6.2 +++ b/demo/graph_to_eps_demo.cc	Thu Oct 09 14:37:44 2008 +0100
     6.3 @@ -26,7 +26,7 @@
     6.4  /// graphToEps(), and showing how to draw directed graphs,
     6.5  /// how to handle parallel egdes, how to change the properties (like
     6.6  /// color, shape, size, title etc.) of nodes and arcs individually
     6.7 -/// using appropriate \ref maps-page "graph maps".
     6.8 +/// using appropriate graph maps.
     6.9  ///
    6.10  /// \include graph_to_eps_demo.cc
    6.11  
     7.1 --- a/doc/Makefile.am	Thu Oct 09 13:52:01 2008 +0100
     7.2 +++ b/doc/Makefile.am	Thu Oct 09 14:37:44 2008 +0100
     7.3 @@ -6,6 +6,7 @@
     7.4  	doc/lgf.dox \
     7.5  	doc/license.dox \
     7.6  	doc/mainpage.dox \
     7.7 +	doc/migration.dox \
     7.8  	doc/named-param.dox \
     7.9  	doc/namespaces.dox \
    7.10  	doc/html \
     8.1 --- a/doc/groups.dox	Thu Oct 09 13:52:01 2008 +0100
     8.2 +++ b/doc/groups.dox	Thu Oct 09 14:37:44 2008 +0100
     8.3 @@ -42,7 +42,9 @@
     8.4  
     8.5  You are free to use the graph structure that fit your requirements
     8.6  the best, most graph algorithms and auxiliary data structures can be used
     8.7 -with any graph structures.
     8.8 +with any graph structure.
     8.9 +
    8.10 +<b>See also:</b> \ref graph_concepts "Graph Structure Concepts".
    8.11  */
    8.12  
    8.13  /**
    8.14 @@ -52,8 +54,10 @@
    8.15  
    8.16  This group describes the map structures implemented in LEMON.
    8.17  
    8.18 -LEMON provides several special purpose maps that e.g. combine
    8.19 +LEMON provides several special purpose maps and map adaptors that e.g. combine
    8.20  new maps from existing ones.
    8.21 +
    8.22 +<b>See also:</b> \ref map_concepts "Map Concepts".
    8.23  */
    8.24  
    8.25  /**
    8.26 @@ -65,7 +69,6 @@
    8.27  values to the nodes and arcs of graphs.
    8.28  */
    8.29  
    8.30 -
    8.31  /**
    8.32  \defgroup map_adaptors Map Adaptors
    8.33  \ingroup maps
    8.34 @@ -82,7 +85,7 @@
    8.35  The typical usage of this classes is passing implicit maps to
    8.36  algorithms.  If a function type algorithm is called then the function
    8.37  type map adaptors can be used comfortable. For example let's see the
    8.38 -usage of map adaptors with the \c digraphToEps() function.
    8.39 +usage of map adaptors with the \c graphToEps() function.
    8.40  \code
    8.41    Color nodeColor(int deg) {
    8.42      if (deg >= 2) {
    8.43 @@ -96,13 +99,13 @@
    8.44  
    8.45    Digraph::NodeMap<int> degree_map(graph);
    8.46  
    8.47 -  digraphToEps(graph, "graph.eps")
    8.48 +  graphToEps(graph, "graph.eps")
    8.49      .coords(coords).scaleToA4().undirected()
    8.50      .nodeColors(composeMap(functorToMap(nodeColor), degree_map))
    8.51      .run();
    8.52  \endcode
    8.53  The \c functorToMap() function makes an \c int to \c Color map from the
    8.54 -\e nodeColor() function. The \c composeMap() compose the \e degree_map
    8.55 +\c nodeColor() function. The \c composeMap() compose the \c degree_map
    8.56  and the previously created map. The composed map is a proper function to
    8.57  get the color of each node.
    8.58  
    8.59 @@ -143,7 +146,6 @@
    8.60  any kind of path structure.
    8.61  
    8.62  \sa lemon::concepts::Path
    8.63 -
    8.64  */
    8.65  
    8.66  /**
    8.67 @@ -155,7 +157,6 @@
    8.68  order to make it easier to implement combinatorial algorithms.
    8.69  */
    8.70  
    8.71 -
    8.72  /**
    8.73  @defgroup algs Algorithms
    8.74  \brief This group describes the several algorithms
    8.75 @@ -171,11 +172,11 @@
    8.76  \brief Common graph search algorithms.
    8.77  
    8.78  This group describes the common graph search algorithms like
    8.79 -Breadth-first search (Bfs) and Depth-first search (Dfs).
    8.80 +Breadth-First Search (BFS) and Depth-First Search (DFS).
    8.81  */
    8.82  
    8.83  /**
    8.84 -@defgroup shortest_path Shortest Path algorithms
    8.85 +@defgroup shortest_path Shortest Path Algorithms
    8.86  @ingroup algs
    8.87  \brief Algorithms for finding shortest paths.
    8.88  
    8.89 @@ -183,7 +184,7 @@
    8.90  */
    8.91  
    8.92  /**
    8.93 -@defgroup spantree Minimum Spanning Tree algorithms
    8.94 +@defgroup spantree Minimum Spanning Tree Algorithms
    8.95  @ingroup algs
    8.96  \brief Algorithms for finding a minimum cost spanning tree in a graph.
    8.97  
    8.98 @@ -191,6 +192,7 @@
    8.99  tree in a graph
   8.100  */
   8.101  
   8.102 +@ingroup algs
   8.103  /**
   8.104  @defgroup utils Tools and Utilities
   8.105  \brief Tools and utilities for programming in LEMON
   8.106 @@ -216,7 +218,7 @@
   8.107  */
   8.108  
   8.109  /**
   8.110 -@defgroup timecount Time measuring and Counting
   8.111 +@defgroup timecount Time Measuring and Counting
   8.112  @ingroup misc
   8.113  \brief Simple tools for measuring the performance of algorithms.
   8.114  
   8.115 @@ -239,19 +241,20 @@
   8.116  This group describes the tools for importing and exporting graphs
   8.117  and graph related data. Now it supports the LEMON format
   8.118  and the encapsulated postscript (EPS) format.
   8.119 +postscript (EPS) format.
   8.120  */
   8.121  
   8.122  /**
   8.123  @defgroup lemon_io LEMON Input-Output
   8.124  @ingroup io_group
   8.125 -\brief Reading and writing \ref lgf-format "LEMON Graph Format".
   8.126 +\brief Reading and writing LEMON Graph Format.
   8.127  
   8.128  This group describes methods for reading and writing
   8.129  \ref lgf-format "LEMON Graph Format".
   8.130  */
   8.131  
   8.132  /**
   8.133 -@defgroup eps_io Postscript exporting
   8.134 +@defgroup eps_io Postscript Exporting
   8.135  @ingroup io_group
   8.136  \brief General \c EPS drawer and graph exporter
   8.137  
   8.138 @@ -259,7 +262,6 @@
   8.139  graph exporting tools.
   8.140  */
   8.141  
   8.142 -
   8.143  /**
   8.144  @defgroup concept Concepts
   8.145  \brief Skeleton classes and concept checking classes
   8.146 @@ -287,10 +289,8 @@
   8.147    concept indeed provides all the required features.
   8.148  
   8.149  - Finally, They can serve as a skeleton of a new implementation of a concept.
   8.150 -
   8.151  */
   8.152  
   8.153 -
   8.154  /**
   8.155  @defgroup graph_concepts Graph Structure Concepts
   8.156  @ingroup concept
   8.157 @@ -300,6 +300,8 @@
   8.158  graph structures and helper classes used to implement these.
   8.159  */
   8.160  
   8.161 +
   8.162 +This group describes the skeletons and concept checking classes of maps.
   8.163  /**
   8.164  \anchor demoprograms
   8.165  
     9.1 --- a/doc/lgf.dox	Thu Oct 09 13:52:01 2008 +0100
     9.2 +++ b/doc/lgf.dox	Thu Oct 09 14:37:44 2008 +0100
     9.3 @@ -78,7 +78,7 @@
     9.4   2   3   18
     9.5  \endcode
     9.6  
     9.7 -The \c \@edges is just a synonym of \c \@arcs. The @arcs section can
     9.8 +The \c \@edges is just a synonym of \c \@arcs. The \@arcs section can
     9.9  also store the edge set of an undirected graph. In such case there is
    9.10  a conventional method for store arc maps in the file, if two columns
    9.11  has the same caption with \c '+' and \c '-' prefix, then these columns
    10.1 --- a/doc/mainpage.dox	Thu Oct 09 13:52:01 2008 +0100
    10.2 +++ b/doc/mainpage.dox	Thu Oct 09 14:37:44 2008 +0100
    10.3 @@ -43,11 +43,12 @@
    10.4  
    10.5  If you
    10.6  want to see how LEMON works, see
    10.7 -some \ref demoprograms "demo programs"!
    10.8 +some \ref demoprograms "demo programs".
    10.9  
   10.10  If you know what you are looking for then try to find it under the
   10.11  <a class="el" href="modules.html">Modules</a>
   10.12  section.
   10.13  
   10.14 -
   10.15 +If you are a user of the old (0.x) series of LEMON, please check out the
   10.16 +\ref migration "Migration Guide" for the backward incompatibilities.
   10.17  */
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/doc/migration.dox	Thu Oct 09 14:37:44 2008 +0100
    11.3 @@ -0,0 +1,143 @@
    11.4 +/* -*- mode: C++; indent-tabs-mode: nil; -*-
    11.5 + *
    11.6 + * This file is a part of LEMON, a generic C++ optimization library.
    11.7 + *
    11.8 + * Copyright (C) 2003-2008
    11.9 + * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
   11.10 + * (Egervary Research Group on Combinatorial Optimization, EGRES).
   11.11 + *
   11.12 + * Permission to use, modify and distribute this software is granted
   11.13 + * provided that this copyright notice appears in all copies. For
   11.14 + * precise terms see the accompanying LICENSE file.
   11.15 + *
   11.16 + * This software is provided "AS IS" with no warranty of any kind,
   11.17 + * express or implied, and with no claim as to its suitability for any
   11.18 + * purpose.
   11.19 + *
   11.20 + */
   11.21 +
   11.22 +namespace lemon {
   11.23 +/*!
   11.24 +
   11.25 +\page migration Migration from the 0.x Series
   11.26 +
   11.27 +This guide gives an in depth description on what has changed compared
   11.28 +to the 0.x release series.
   11.29 +
   11.30 +Many of these changes adjusted automatically by the
   11.31 +<tt>script/lemon-0.x-to-1.x.sh</tt> tool. Those requiring manual
   11.32 +update are typeset <b>boldface</b>.
   11.33 +
   11.34 +\section migration-graph Graph Related Name Changes
   11.35 +
   11.36 +- \ref concepts::Digraph "Directed graphs" are called \c Digraph and
   11.37 +  they have <tt>Arc</tt>s (instead of <tt>Edge</tt>s), while
   11.38 +  \ref concepts::Graph "undirected graphs" are called \c Graph
   11.39 +  (instead of \c UGraph) and they have <tt>Edge</tt>s (instead of
   11.40 +  <tt>UEdge</tt>s). These changes reflected thoroughly everywhere in
   11.41 +  the library. Namely,
   11.42 +  - \c Graph -> \c Digraph
   11.43 +    - \c %ListGraph -> \c ListDigraph, \c %SmartGraph -> \c SmartDigraph etc.
   11.44 +  - \c UGraph -> \c Graph
   11.45 +    - \c ListUGraph -> \c ListGraph, \c SmartUGraph -> \c SmartGraph etc.
   11.46 +  - \c Edge -> \c Arc, \c UEdge -> \c Edge
   11.47 +  - \c EdgeMap -> \c ArcMap, \c UEdgeMap -> \c EdgeMap
   11.48 +  - \c EdgeIt -> \c ArcIt, \c UEdgeIt -> \c EdgeIt
   11.49 +  - Class names and function names containing the words \c graph,
   11.50 +    \c ugraph, \e edge or \e arc should also be updated.
   11.51 +- <b>The two endpoints of an (\e undirected) \c Edge can be obtained by the
   11.52 +  <tt>u()</tt> and <tt>v()</tt> member function of the graph
   11.53 +  (instead of <tt>source()</tt> and <tt>target()</tt>). This change
   11.54 +  must be done by hand.</b>
   11.55 +  \n Of course, you can still use <tt>source()</tt> and <tt>target()</tt>
   11.56 +  for <tt>Arc</tt>s (directed edges).
   11.57 +
   11.58 +\warning
   11.59 +<b>The <tt>script/lemon-0.x-to-1.x.sh</tt> tool replaces all instances of
   11.60 +the words \c graph, \c digraph, \c edge and \c arc, so it replaces them
   11.61 +in strings, comments etc. as well as in all identifiers.</b>
   11.62 +
   11.63 +\section migration-lgf LGF tools
   11.64 + - The \ref lgf-format "LGF file format" has changed,
   11.65 +   <tt>\@nodeset</tt> has changed to <tt>\@nodes</tt>,
   11.66 +   <tt>\@edgeset</tt> and <tt>\@uedgeset</tt> to <tt>\@arcs</tt> or
   11.67 +   <tt>\@edges</tt>, which become completely equivalents. The
   11.68 +   <tt>\@nodes</tt>, <tt>\@edges</tt> and <tt>\@uedges</tt> sections are
   11.69 +   removed from the format, the content of them should be
   11.70 +   the part of <tt>\@attributes</tt> section. The data fields in
   11.71 +   the sections must follow a strict format, they must be either character
   11.72 +   sequences without whitespaces or quoted strings.
   11.73 + - The <tt>LemonReader</tt> and <tt>LemonWriter</tt> core interfaces
   11.74 +   are no longer available.
   11.75 + - The implementation of the general section readers and writers has changed
   11.76 +   they are simple functors now. Beside the old
   11.77 +   stream based section handling, currently line oriented section
   11.78 +   reading and writing are also supported. In the
   11.79 +   section readers the lines must be counted manually. The sections
   11.80 +   should be read and written with the SectionWriter and SectionReader
   11.81 +   classes.
   11.82 + - Instead of the item readers and writers, item converters should be
   11.83 +   used. The converters are functors, which map the type to
   11.84 +   std::string or std::string to the type. The converters for standard
   11.85 +   containers hasn't yet been implemented in the new LEMON. The converters
   11.86 +   can return strings in any format, because if it is necessary, the LGF
   11.87 +   writer and reader will quote and unquote the given value.
   11.88 + - The DigraphReader and DigraphWriter can used similarly to the
   11.89 +   0.x series, however the <tt>read</tt> or <tt>write</tt> prefix of
   11.90 +   the member functions are removed.
   11.91 + - The new LEMON supports the function like interface, the \c
   11.92 +   digraphReader and \c digraphWriter functions are more convenient than
   11.93 +   using the classes directly.
   11.94 +
   11.95 +\section migration-search BFS, DFS and Dijkstra
   11.96 +- <b>Using the function interface of BFS, DFS and %Dijkstra both source and
   11.97 +  target nodes can be given as parameters of the <tt>run()</tt> function
   11.98 +  (instead of \c bfs(), \c dfs() or \c dijkstra() itself).</b>
   11.99 +- \ref named-templ-param "Named class template parameters" of \c Bfs,
  11.100 +  \c Dfs, \c Dijkstra, \c BfsVisit, \c DfsVisit are renamed to start
  11.101 +  with "Set" instead of "Def". Namely,
  11.102 +  - \c DefPredMap -> \c SetPredMap
  11.103 +  - \c DefDistMap -> \c SetDistMap
  11.104 +  - \c DefReachedMap -> \c SetReachedMap
  11.105 +  - \c DefProcessedMap -> \c SetProcessedMap
  11.106 +  - \c DefHeap -> \c SetHeap
  11.107 +  - \c DefStandardHeap -> \c SetStandardHeap
  11.108 +  - \c DefOperationTraits -> \c SetOperationTraits
  11.109 +  - \c DefProcessedMapToBeDefaultMap -> \c SetStandardProcessedMap
  11.110 +
  11.111 +\section migration-error Exceptions and Debug tools
  11.112 +
  11.113 +<b>The class hierarchy of exceptions has largely been simplified. Now,
  11.114 +only the i/o related tools may throw exceptions. All other exceptions
  11.115 +have been replaced with either the \c LEMON_ASSERT or the \c LEMON_DEBUG
  11.116 +macros.</b>
  11.117 +
  11.118 +<b>On the other hand, the parameter order of constructors of the
  11.119 +exceptions has been changed. See \ref IoError and \ref FormatError for
  11.120 +more details.</b>
  11.121 +
  11.122 +\section migration-other Others
  11.123 +- <b>The contents of <tt>graph_utils.h</tt> are moved to <tt>core.h</tt>
  11.124 +  and <tt>maps.h</tt>. <tt>core.h</tt> is included by all graph types,
  11.125 +  therefore it usually do not have to be included directly.</b>
  11.126 +- <b><tt>path_utils.h</tt> is merged to \c path.h.</b>
  11.127 +- <b>The semantic of the assignment operations and copy constructors of maps
  11.128 +  are still under discussion. So, you must copy them by hand (i.e. copy
  11.129 +  each entry one-by-one)</b>
  11.130 +- <b>The parameters of the graph copying tools (i.e. \c GraphCopy,
  11.131 +  \c DigraphCopy) have to be given in the from-to order.</b>
  11.132 +- \c copyDigraph() and \c copyGraph() are renamed to \c digraphCopy()
  11.133 +  and \c graphCopy(), respectively.
  11.134 +- <b>The interface of \ref DynArcLookUp has changed. It is now the same as
  11.135 +  of \ref ArcLookUp and \ref AllArcLookUp</b>
  11.136 +- Some map types should also been renamed. Namely,
  11.137 +  - \c IntegerMap -> \c RangeMap
  11.138 +  - \c StdMap -> \c SparseMap
  11.139 +  - \c FunctorMap -> \c FunctorToMap
  11.140 +  - \c MapFunctor -> \c MapToFunctor
  11.141 +  - \c ForkWriteMap -> \c ForkMap
  11.142 +  - \c StoreBoolMap -> \c LoggerBoolMap
  11.143 +- \c dim2::BoundingBox -> \c dim2::Box
  11.144 +
  11.145 +*/
  11.146 +}
    12.1 --- a/lemon/arg_parser.cc	Thu Oct 09 13:52:01 2008 +0100
    12.2 +++ b/lemon/arg_parser.cc	Thu Oct 09 14:37:44 2008 +0100
    12.3 @@ -26,12 +26,11 @@
    12.4      exit(1);
    12.5    }
    12.6  
    12.7 -  ArgParser::ArgParser(int argc, const char **argv) :_argc(argc), _argv(argv),
    12.8 -                                                     _command_name(argv[0]) {
    12.9 +  ArgParser::ArgParser(int argc, const char * const *argv)
   12.10 +    :_argc(argc), _argv(argv), _command_name(argv[0]) {
   12.11      funcOption("-help","Print a short help message",_showHelp,this);
   12.12      synonym("help","-help");
   12.13      synonym("h","-help");
   12.14 -
   12.15    }
   12.16  
   12.17    ArgParser::~ArgParser()
    13.1 --- a/lemon/arg_parser.h	Thu Oct 09 13:52:01 2008 +0100
    13.2 +++ b/lemon/arg_parser.h	Thu Oct 09 14:37:44 2008 +0100
    13.3 @@ -46,7 +46,7 @@
    13.4    protected:
    13.5  
    13.6      int _argc;
    13.7 -    const char **_argv;
    13.8 +    const char * const *_argv;
    13.9  
   13.10      enum OptType { UNKNOWN=0, BOOL=1, STRING=2, DOUBLE=3, INTEGER=4, FUNC=5 };
   13.11  
   13.12 @@ -119,7 +119,7 @@
   13.13    public:
   13.14  
   13.15      ///Constructor
   13.16 -    ArgParser(int argc, const char **argv);
   13.17 +    ArgParser(int argc, const char * const *argv);
   13.18  
   13.19      ~ArgParser();
   13.20  
    14.1 --- a/lemon/bfs.h	Thu Oct 09 13:52:01 2008 +0100
    14.2 +++ b/lemon/bfs.h	Thu Oct 09 14:37:44 2008 +0100
    14.3 @@ -49,11 +49,11 @@
    14.4      ///arcs of the shortest paths.
    14.5      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
    14.6      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
    14.7 -    ///Instantiates a \ref PredMap.
    14.8 +    ///Instantiates a PredMap.
    14.9  
   14.10 -    ///This function instantiates a \ref PredMap.
   14.11 +    ///This function instantiates a PredMap.
   14.12      ///\param g is the digraph, to which we would like to define the
   14.13 -    ///\ref PredMap.
   14.14 +    ///PredMap.
   14.15      static PredMap *createPredMap(const Digraph &g)
   14.16      {
   14.17        return new PredMap(g);
   14.18 @@ -64,11 +64,11 @@
   14.19      ///The type of the map that indicates which nodes are processed.
   14.20      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   14.21      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
   14.22 -    ///Instantiates a \ref ProcessedMap.
   14.23 +    ///Instantiates a ProcessedMap.
   14.24  
   14.25 -    ///This function instantiates a \ref ProcessedMap.
   14.26 +    ///This function instantiates a ProcessedMap.
   14.27      ///\param g is the digraph, to which
   14.28 -    ///we would like to define the \ref ProcessedMap
   14.29 +    ///we would like to define the ProcessedMap
   14.30  #ifdef DOXYGEN
   14.31      static ProcessedMap *createProcessedMap(const Digraph &g)
   14.32  #else
   14.33 @@ -83,11 +83,11 @@
   14.34      ///The type of the map that indicates which nodes are reached.
   14.35      ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
   14.36      typedef typename Digraph::template NodeMap<bool> ReachedMap;
   14.37 -    ///Instantiates a \ref ReachedMap.
   14.38 +    ///Instantiates a ReachedMap.
   14.39  
   14.40 -    ///This function instantiates a \ref ReachedMap.
   14.41 +    ///This function instantiates a ReachedMap.
   14.42      ///\param g is the digraph, to which
   14.43 -    ///we would like to define the \ref ReachedMap.
   14.44 +    ///we would like to define the ReachedMap.
   14.45      static ReachedMap *createReachedMap(const Digraph &g)
   14.46      {
   14.47        return new ReachedMap(g);
   14.48 @@ -98,11 +98,11 @@
   14.49      ///The type of the map that stores the distances of the nodes.
   14.50      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   14.51      typedef typename Digraph::template NodeMap<int> DistMap;
   14.52 -    ///Instantiates a \ref DistMap.
   14.53 +    ///Instantiates a DistMap.
   14.54  
   14.55 -    ///This function instantiates a \ref DistMap.
   14.56 +    ///This function instantiates a DistMap.
   14.57      ///\param g is the digraph, to which we would like to define the
   14.58 -    ///\ref DistMap.
   14.59 +    ///DistMap.
   14.60      static DistMap *createDistMap(const Digraph &g)
   14.61      {
   14.62        return new DistMap(g);
   14.63 @@ -227,10 +227,10 @@
   14.64        }
   14.65      };
   14.66      ///\brief \ref named-templ-param "Named parameter" for setting
   14.67 -    ///\ref PredMap type.
   14.68 +    ///PredMap type.
   14.69      ///
   14.70      ///\ref named-templ-param "Named parameter" for setting
   14.71 -    ///\ref PredMap type.
   14.72 +    ///PredMap type.
   14.73      template <class T>
   14.74      struct SetPredMap : public Bfs< Digraph, SetPredMapTraits<T> > {
   14.75        typedef Bfs< Digraph, SetPredMapTraits<T> > Create;
   14.76 @@ -246,10 +246,10 @@
   14.77        }
   14.78      };
   14.79      ///\brief \ref named-templ-param "Named parameter" for setting
   14.80 -    ///\ref DistMap type.
   14.81 +    ///DistMap type.
   14.82      ///
   14.83      ///\ref named-templ-param "Named parameter" for setting
   14.84 -    ///\ref DistMap type.
   14.85 +    ///DistMap type.
   14.86      template <class T>
   14.87      struct SetDistMap : public Bfs< Digraph, SetDistMapTraits<T> > {
   14.88        typedef Bfs< Digraph, SetDistMapTraits<T> > Create;
   14.89 @@ -265,10 +265,10 @@
   14.90        }
   14.91      };
   14.92      ///\brief \ref named-templ-param "Named parameter" for setting
   14.93 -    ///\ref ReachedMap type.
   14.94 +    ///ReachedMap type.
   14.95      ///
   14.96      ///\ref named-templ-param "Named parameter" for setting
   14.97 -    ///\ref ReachedMap type.
   14.98 +    ///ReachedMap type.
   14.99      template <class T>
  14.100      struct SetReachedMap : public Bfs< Digraph, SetReachedMapTraits<T> > {
  14.101        typedef Bfs< Digraph, SetReachedMapTraits<T> > Create;
  14.102 @@ -284,10 +284,10 @@
  14.103        }
  14.104      };
  14.105      ///\brief \ref named-templ-param "Named parameter" for setting
  14.106 -    ///\ref ProcessedMap type.
  14.107 +    ///ProcessedMap type.
  14.108      ///
  14.109      ///\ref named-templ-param "Named parameter" for setting
  14.110 -    ///\ref ProcessedMap type.
  14.111 +    ///ProcessedMap type.
  14.112      template <class T>
  14.113      struct SetProcessedMap : public Bfs< Digraph, SetProcessedMapTraits<T> > {
  14.114        typedef Bfs< Digraph, SetProcessedMapTraits<T> > Create;
  14.115 @@ -302,10 +302,10 @@
  14.116        }
  14.117      };
  14.118      ///\brief \ref named-templ-param "Named parameter" for setting
  14.119 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  14.120 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  14.121      ///
  14.122      ///\ref named-templ-param "Named parameter" for setting
  14.123 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  14.124 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  14.125      ///If you don't set it explicitly, it will be automatically allocated.
  14.126      struct SetStandardProcessedMap :
  14.127        public Bfs< Digraph, SetStandardProcessedMapTraits > {
  14.128 @@ -835,11 +835,11 @@
  14.129      ///arcs of the shortest paths.
  14.130      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  14.131      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
  14.132 -    ///Instantiates a \ref PredMap.
  14.133 +    ///Instantiates a PredMap.
  14.134  
  14.135 -    ///This function instantiates a \ref PredMap.
  14.136 +    ///This function instantiates a PredMap.
  14.137      ///\param g is the digraph, to which we would like to define the
  14.138 -    ///\ref PredMap.
  14.139 +    ///PredMap.
  14.140      static PredMap *createPredMap(const Digraph &g)
  14.141      {
  14.142        return new PredMap(g);
  14.143 @@ -851,11 +851,11 @@
  14.144      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  14.145      ///By default it is a NullMap.
  14.146      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
  14.147 -    ///Instantiates a \ref ProcessedMap.
  14.148 +    ///Instantiates a ProcessedMap.
  14.149  
  14.150 -    ///This function instantiates a \ref ProcessedMap.
  14.151 +    ///This function instantiates a ProcessedMap.
  14.152      ///\param g is the digraph, to which
  14.153 -    ///we would like to define the \ref ProcessedMap.
  14.154 +    ///we would like to define the ProcessedMap.
  14.155  #ifdef DOXYGEN
  14.156      static ProcessedMap *createProcessedMap(const Digraph &g)
  14.157  #else
  14.158 @@ -870,11 +870,11 @@
  14.159      ///The type of the map that indicates which nodes are reached.
  14.160      ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
  14.161      typedef typename Digraph::template NodeMap<bool> ReachedMap;
  14.162 -    ///Instantiates a \ref ReachedMap.
  14.163 +    ///Instantiates a ReachedMap.
  14.164  
  14.165 -    ///This function instantiates a \ref ReachedMap.
  14.166 +    ///This function instantiates a ReachedMap.
  14.167      ///\param g is the digraph, to which
  14.168 -    ///we would like to define the \ref ReachedMap.
  14.169 +    ///we would like to define the ReachedMap.
  14.170      static ReachedMap *createReachedMap(const Digraph &g)
  14.171      {
  14.172        return new ReachedMap(g);
  14.173 @@ -885,11 +885,11 @@
  14.174      ///The type of the map that stores the distances of the nodes.
  14.175      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  14.176      typedef typename Digraph::template NodeMap<int> DistMap;
  14.177 -    ///Instantiates a \ref DistMap.
  14.178 +    ///Instantiates a DistMap.
  14.179  
  14.180 -    ///This function instantiates a \ref DistMap.
  14.181 +    ///This function instantiates a DistMap.
  14.182      ///\param g is the digraph, to which we would like to define
  14.183 -    ///the \ref DistMap
  14.184 +    ///the DistMap
  14.185      static DistMap *createDistMap(const Digraph &g)
  14.186      {
  14.187        return new DistMap(g);
  14.188 @@ -902,7 +902,7 @@
  14.189      typedef lemon::Path<Digraph> Path;
  14.190    };
  14.191  
  14.192 -  /// Default traits class used by \ref BfsWizard
  14.193 +  /// Default traits class used by BfsWizard
  14.194  
  14.195    /// To make it easier to use Bfs algorithm
  14.196    /// we have created a wizard class.
  14.197 @@ -1068,10 +1068,10 @@
  14.198        SetPredMapBase(const TR &b) : TR(b) {}
  14.199      };
  14.200      ///\brief \ref named-func-param "Named parameter"
  14.201 -    ///for setting \ref PredMap object.
  14.202 +    ///for setting PredMap object.
  14.203      ///
  14.204      ///\ref named-func-param "Named parameter"
  14.205 -    ///for setting \ref PredMap object.
  14.206 +    ///for setting PredMap object.
  14.207      template<class T>
  14.208      BfsWizard<SetPredMapBase<T> > predMap(const T &t)
  14.209      {
  14.210 @@ -1086,10 +1086,10 @@
  14.211        SetReachedMapBase(const TR &b) : TR(b) {}
  14.212      };
  14.213      ///\brief \ref named-func-param "Named parameter"
  14.214 -    ///for setting \ref ReachedMap object.
  14.215 +    ///for setting ReachedMap object.
  14.216      ///
  14.217      /// \ref named-func-param "Named parameter"
  14.218 -    ///for setting \ref ReachedMap object.
  14.219 +    ///for setting ReachedMap object.
  14.220      template<class T>
  14.221      BfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
  14.222      {
  14.223 @@ -1104,10 +1104,10 @@
  14.224        SetDistMapBase(const TR &b) : TR(b) {}
  14.225      };
  14.226      ///\brief \ref named-func-param "Named parameter"
  14.227 -    ///for setting \ref DistMap object.
  14.228 +    ///for setting DistMap object.
  14.229      ///
  14.230      /// \ref named-func-param "Named parameter"
  14.231 -    ///for setting \ref DistMap object.
  14.232 +    ///for setting DistMap object.
  14.233      template<class T>
  14.234      BfsWizard<SetDistMapBase<T> > distMap(const T &t)
  14.235      {
  14.236 @@ -1122,10 +1122,10 @@
  14.237        SetProcessedMapBase(const TR &b) : TR(b) {}
  14.238      };
  14.239      ///\brief \ref named-func-param "Named parameter"
  14.240 -    ///for setting \ref ProcessedMap object.
  14.241 +    ///for setting ProcessedMap object.
  14.242      ///
  14.243      /// \ref named-func-param "Named parameter"
  14.244 -    ///for setting \ref ProcessedMap object.
  14.245 +    ///for setting ProcessedMap object.
  14.246      template<class T>
  14.247      BfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
  14.248      {
  14.249 @@ -1267,11 +1267,11 @@
  14.250      /// It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
  14.251      typedef typename Digraph::template NodeMap<bool> ReachedMap;
  14.252  
  14.253 -    /// \brief Instantiates a \ref ReachedMap.
  14.254 +    /// \brief Instantiates a ReachedMap.
  14.255      ///
  14.256 -    /// This function instantiates a \ref ReachedMap.
  14.257 +    /// This function instantiates a ReachedMap.
  14.258      /// \param digraph is the digraph, to which
  14.259 -    /// we would like to define the \ref ReachedMap.
  14.260 +    /// we would like to define the ReachedMap.
  14.261      static ReachedMap *createReachedMap(const Digraph &digraph) {
  14.262        return new ReachedMap(digraph);
  14.263      }
    15.1 --- a/lemon/bits/alteration_notifier.h	Thu Oct 09 13:52:01 2008 +0100
    15.2 +++ b/lemon/bits/alteration_notifier.h	Thu Oct 09 14:37:44 2008 +0100
    15.3 @@ -24,76 +24,75 @@
    15.4  
    15.5  #include <lemon/core.h>
    15.6  
    15.7 -///\ingroup graphbits
    15.8 -///\file
    15.9 -///\brief Observer notifier for graph alteration observers.
   15.10 +//\ingroup graphbits
   15.11 +//\file
   15.12 +//\brief Observer notifier for graph alteration observers.
   15.13  
   15.14  namespace lemon {
   15.15  
   15.16 -  /// \ingroup graphbits
   15.17 -  ///
   15.18 -  /// \brief Notifier class to notify observes about alterations in
   15.19 -  /// a container.
   15.20 -  ///
   15.21 -  /// The simple graph's can be refered as two containers, one node container
   15.22 -  /// and one edge container. But they are not standard containers they
   15.23 -  /// does not store values directly they are just key continars for more
   15.24 -  /// value containers which are the node and edge maps.
   15.25 -  ///
   15.26 -  /// The graph's node and edge sets can be changed as we add or erase
   15.27 -  /// nodes and edges in the graph. LEMON would like to handle easily
   15.28 -  /// that the node and edge maps should contain values for all nodes or
   15.29 -  /// edges. If we want to check on every indicing if the map contains
   15.30 -  /// the current indicing key that cause a drawback in the performance
   15.31 -  /// in the library. We use another solution we notify all maps about
   15.32 -  /// an alteration in the graph, which cause only drawback on the
   15.33 -  /// alteration of the graph.
   15.34 -  ///
   15.35 -  /// This class provides an interface to the container. The \e first() and \e
   15.36 -  /// next() member functions make possible to iterate on the keys of the
   15.37 -  /// container. The \e id() function returns an integer id for each key.
   15.38 -  /// The \e maxId() function gives back an upper bound of the ids.
   15.39 -  ///
   15.40 -  /// For the proper functonality of this class, we should notify it
   15.41 -  /// about each alteration in the container. The alterations have four type
   15.42 -  /// as \e add(), \e erase(), \e build() and \e clear(). The \e add() and
   15.43 -  /// \e erase() signals that only one or few items added or erased to or
   15.44 -  /// from the graph. If all items are erased from the graph or from an empty
   15.45 -  /// graph a new graph is builded then it can be signaled with the
   15.46 -  /// clear() and build() members. Important rule that if we erase items
   15.47 -  /// from graph we should first signal the alteration and after that erase
   15.48 -  /// them from the container, on the other way on item addition we should
   15.49 -  /// first extend the container and just after that signal the alteration.
   15.50 -  ///
   15.51 -  /// The alteration can be observed with a class inherited from the
   15.52 -  /// \e ObserverBase nested class. The signals can be handled with
   15.53 -  /// overriding the virtual functions defined in the base class.  The
   15.54 -  /// observer base can be attached to the notifier with the
   15.55 -  /// \e attach() member and can be detached with detach() function. The
   15.56 -  /// alteration handlers should not call any function which signals
   15.57 -  /// an other alteration in the same notifier and should not
   15.58 -  /// detach any observer from the notifier.
   15.59 -  ///
   15.60 -  /// Alteration observers try to be exception safe. If an \e add() or
   15.61 -  /// a \e clear() function throws an exception then the remaining
   15.62 -  /// observeres will not be notified and the fulfilled additions will
   15.63 -  /// be rolled back by calling the \e erase() or \e clear()
   15.64 -  /// functions. Thence the \e erase() and \e clear() should not throw
   15.65 -  /// exception. Actullay, it can be throw only
   15.66 -  /// \ref AlterationObserver::ImmediateDetach ImmediateDetach
   15.67 -  /// exception which detach the observer from the notifier.
   15.68 -  ///
   15.69 -  /// There are some place when the alteration observing is not completly
   15.70 -  /// reliable. If we want to carry out the node degree in the graph
   15.71 -  /// as in the \ref InDegMap and we use the reverseEdge that cause
   15.72 -  /// unreliable functionality. Because the alteration observing signals
   15.73 -  /// only erasing and adding but not the reversing it will stores bad
   15.74 -  /// degrees. The sub graph adaptors cannot signal the alterations because
   15.75 -  /// just a setting in the filter map can modify the graph and this cannot
   15.76 -  /// be watched in any way.
   15.77 -  ///
   15.78 -  /// \param _Container The container which is observed.
   15.79 -  /// \param _Item The item type which is obserbved.
   15.80 +  // \ingroup graphbits
   15.81 +  //
   15.82 +  // \brief Notifier class to notify observes about alterations in
   15.83 +  // a container.
   15.84 +  //
   15.85 +  // The simple graph's can be refered as two containers, one node container
   15.86 +  // and one edge container. But they are not standard containers they
   15.87 +  // does not store values directly they are just key continars for more
   15.88 +  // value containers which are the node and edge maps.
   15.89 +  //
   15.90 +  // The graph's node and edge sets can be changed as we add or erase
   15.91 +  // nodes and edges in the graph. LEMON would like to handle easily
   15.92 +  // that the node and edge maps should contain values for all nodes or
   15.93 +  // edges. If we want to check on every indicing if the map contains
   15.94 +  // the current indicing key that cause a drawback in the performance
   15.95 +  // in the library. We use another solution we notify all maps about
   15.96 +  // an alteration in the graph, which cause only drawback on the
   15.97 +  // alteration of the graph.
   15.98 +  //
   15.99 +  // This class provides an interface to the container. The \e first() and \e
  15.100 +  // next() member functions make possible to iterate on the keys of the
  15.101 +  // container. The \e id() function returns an integer id for each key.
  15.102 +  // The \e maxId() function gives back an upper bound of the ids.
  15.103 +  //
  15.104 +  // For the proper functonality of this class, we should notify it
  15.105 +  // about each alteration in the container. The alterations have four type
  15.106 +  // as \e add(), \e erase(), \e build() and \e clear(). The \e add() and
  15.107 +  // \e erase() signals that only one or few items added or erased to or
  15.108 +  // from the graph. If all items are erased from the graph or from an empty
  15.109 +  // graph a new graph is builded then it can be signaled with the
  15.110 +  // clear() and build() members. Important rule that if we erase items
  15.111 +  // from graph we should first signal the alteration and after that erase
  15.112 +  // them from the container, on the other way on item addition we should
  15.113 +  // first extend the container and just after that signal the alteration.
  15.114 +  //
  15.115 +  // The alteration can be observed with a class inherited from the
  15.116 +  // \e ObserverBase nested class. The signals can be handled with
  15.117 +  // overriding the virtual functions defined in the base class.  The
  15.118 +  // observer base can be attached to the notifier with the
  15.119 +  // \e attach() member and can be detached with detach() function. The
  15.120 +  // alteration handlers should not call any function which signals
  15.121 +  // an other alteration in the same notifier and should not
  15.122 +  // detach any observer from the notifier.
  15.123 +  //
  15.124 +  // Alteration observers try to be exception safe. If an \e add() or
  15.125 +  // a \e clear() function throws an exception then the remaining
  15.126 +  // observeres will not be notified and the fulfilled additions will
  15.127 +  // be rolled back by calling the \e erase() or \e clear()
  15.128 +  // functions. Thence the \e erase() and \e clear() should not throw
  15.129 +  // exception. Actullay, it can be throw only \ref ImmediateDetach
  15.130 +  // exception which detach the observer from the notifier.
  15.131 +  //
  15.132 +  // There are some place when the alteration observing is not completly
  15.133 +  // reliable. If we want to carry out the node degree in the graph
  15.134 +  // as in the \ref InDegMap and we use the reverseEdge that cause
  15.135 +  // unreliable functionality. Because the alteration observing signals
  15.136 +  // only erasing and adding but not the reversing it will stores bad
  15.137 +  // degrees. The sub graph adaptors cannot signal the alterations because
  15.138 +  // just a setting in the filter map can modify the graph and this cannot
  15.139 +  // be watched in any way.
  15.140 +  //
  15.141 +  // \param _Container The container which is observed.
  15.142 +  // \param _Item The item type which is obserbved.
  15.143  
  15.144    template <typename _Container, typename _Item>
  15.145    class AlterationNotifier {
  15.146 @@ -104,92 +103,87 @@
  15.147      typedef _Container Container;
  15.148      typedef _Item Item;
  15.149  
  15.150 -    /// \brief Exception which can be called from \e clear() and
  15.151 -    /// \e erase().
  15.152 -    ///
  15.153 -    /// From the \e clear() and \e erase() function only this
  15.154 -    /// exception is allowed to throw. The exception immediatly
  15.155 -    /// detaches the current observer from the notifier. Because the
  15.156 -    /// \e clear() and \e erase() should not throw other exceptions
  15.157 -    /// it can be used to invalidate the observer.
  15.158 +    // \brief Exception which can be called from \e clear() and
  15.159 +    // \e erase().
  15.160 +    //
  15.161 +    // From the \e clear() and \e erase() function only this
  15.162 +    // exception is allowed to throw. The exception immediatly
  15.163 +    // detaches the current observer from the notifier. Because the
  15.164 +    // \e clear() and \e erase() should not throw other exceptions
  15.165 +    // it can be used to invalidate the observer.
  15.166      struct ImmediateDetach {};
  15.167  
  15.168 -    /// \brief ObserverBase is the base class for the observers.
  15.169 -    ///
  15.170 -    /// ObserverBase is the abstract base class for the observers.
  15.171 -    /// It will be notified about an item was inserted into or
  15.172 -    /// erased from the graph.
  15.173 -    ///
  15.174 -    /// The observer interface contains some pure virtual functions
  15.175 -    /// to override. The add() and erase() functions are
  15.176 -    /// to notify the oberver when one item is added or
  15.177 -    /// erased.
  15.178 -    ///
  15.179 -    /// The build() and clear() members are to notify the observer
  15.180 -    /// about the container is built from an empty container or
  15.181 -    /// is cleared to an empty container.
  15.182 -
  15.183 +    // \brief ObserverBase is the base class for the observers.
  15.184 +    //
  15.185 +    // ObserverBase is the abstract base class for the observers.
  15.186 +    // It will be notified about an item was inserted into or
  15.187 +    // erased from the graph.
  15.188 +    //
  15.189 +    // The observer interface contains some pure virtual functions
  15.190 +    // to override. The add() and erase() functions are
  15.191 +    // to notify the oberver when one item is added or
  15.192 +    // erased.
  15.193 +    //
  15.194 +    // The build() and clear() members are to notify the observer
  15.195 +    // about the container is built from an empty container or
  15.196 +    // is cleared to an empty container.
  15.197      class ObserverBase {
  15.198      protected:
  15.199        typedef AlterationNotifier Notifier;
  15.200  
  15.201        friend class AlterationNotifier;
  15.202  
  15.203 -      /// \brief Default constructor.
  15.204 -      ///
  15.205 -      /// Default constructor for ObserverBase.
  15.206 -      ///
  15.207 +      // \brief Default constructor.
  15.208 +      //
  15.209 +      // Default constructor for ObserverBase.
  15.210        ObserverBase() : _notifier(0) {}
  15.211  
  15.212 -      /// \brief Constructor which attach the observer into notifier.
  15.213 -      ///
  15.214 -      /// Constructor which attach the observer into notifier.
  15.215 +      // \brief Constructor which attach the observer into notifier.
  15.216 +      //
  15.217 +      // Constructor which attach the observer into notifier.
  15.218        ObserverBase(AlterationNotifier& nf) {
  15.219          attach(nf);
  15.220        }
  15.221  
  15.222 -      /// \brief Constructor which attach the obserever to the same notifier.
  15.223 -      ///
  15.224 -      /// Constructor which attach the obserever to the same notifier as
  15.225 -      /// the other observer is attached to.
  15.226 +      // \brief Constructor which attach the obserever to the same notifier.
  15.227 +      //
  15.228 +      // Constructor which attach the obserever to the same notifier as
  15.229 +      // the other observer is attached to.
  15.230        ObserverBase(const ObserverBase& copy) {
  15.231          if (copy.attached()) {
  15.232            attach(*copy.notifier());
  15.233          }
  15.234        }
  15.235  
  15.236 -      /// \brief Destructor
  15.237 +      // \brief Destructor
  15.238        virtual ~ObserverBase() {
  15.239          if (attached()) {
  15.240            detach();
  15.241          }
  15.242        }
  15.243  
  15.244 -      /// \brief Attaches the observer into an AlterationNotifier.
  15.245 -      ///
  15.246 -      /// This member attaches the observer into an AlterationNotifier.
  15.247 -      ///
  15.248 +      // \brief Attaches the observer into an AlterationNotifier.
  15.249 +      //
  15.250 +      // This member attaches the observer into an AlterationNotifier.
  15.251        void attach(AlterationNotifier& nf) {
  15.252          nf.attach(*this);
  15.253        }
  15.254  
  15.255 -      /// \brief Detaches the observer into an AlterationNotifier.
  15.256 -      ///
  15.257 -      /// This member detaches the observer from an AlterationNotifier.
  15.258 -      ///
  15.259 +      // \brief Detaches the observer into an AlterationNotifier.
  15.260 +      //
  15.261 +      // This member detaches the observer from an AlterationNotifier.
  15.262        void detach() {
  15.263          _notifier->detach(*this);
  15.264        }
  15.265  
  15.266 -      /// \brief Gives back a pointer to the notifier which the map
  15.267 -      /// attached into.
  15.268 -      ///
  15.269 -      /// This function gives back a pointer to the notifier which the map
  15.270 -      /// attached into.
  15.271 -      ///
  15.272 +      // \brief Gives back a pointer to the notifier which the map
  15.273 +      // attached into.
  15.274 +      //
  15.275 +      // This function gives back a pointer to the notifier which the map
  15.276 +      // attached into.
  15.277        Notifier* notifier() const { return const_cast<Notifier*>(_notifier); }
  15.278  
  15.279 -      /// Gives back true when the observer is attached into a notifier.
  15.280 +      // Gives back true when the observer is attached into a notifier.
  15.281        bool attached() const { return _notifier != 0; }
  15.282  
  15.283      private:
  15.284 @@ -201,53 +195,52 @@
  15.285        Notifier* _notifier;
  15.286        typename std::list<ObserverBase*>::iterator _index;
  15.287  
  15.288 -      /// \brief The member function to notificate the observer about an
  15.289 -      /// item is added to the container.
  15.290 -      ///
  15.291 -      /// The add() member function notificates the observer about an item
  15.292 -      /// is added to the container. It have to be overrided in the
  15.293 -      /// subclasses.
  15.294 +      // \brief The member function to notificate the observer about an
  15.295 +      // item is added to the container.
  15.296 +      //
  15.297 +      // The add() member function notificates the observer about an item
  15.298 +      // is added to the container. It have to be overrided in the
  15.299 +      // subclasses.
  15.300        virtual void add(const Item&) = 0;
  15.301  
  15.302 -      /// \brief The member function to notificate the observer about
  15.303 -      /// more item is added to the container.
  15.304 -      ///
  15.305 -      /// The add() member function notificates the observer about more item
  15.306 -      /// is added to the container. It have to be overrided in the
  15.307 -      /// subclasses.
  15.308 +      // \brief The member function to notificate the observer about
  15.309 +      // more item is added to the container.
  15.310 +      //
  15.311 +      // The add() member function notificates the observer about more item
  15.312 +      // is added to the container. It have to be overrided in the
  15.313 +      // subclasses.
  15.314        virtual void add(const std::vector<Item>& items) = 0;
  15.315  
  15.316 -      /// \brief The member function to notificate the observer about an
  15.317 -      /// item is erased from the container.
  15.318 -      ///
  15.319 -      /// The erase() member function notificates the observer about an
  15.320 -      /// item is erased from the container. It have to be overrided in
  15.321 -      /// the subclasses.
  15.322 +      // \brief The member function to notificate the observer about an
  15.323 +      // item is erased from the container.
  15.324 +      //
  15.325 +      // The erase() member function notificates the observer about an
  15.326 +      // item is erased from the container. It have to be overrided in
  15.327 +      // the subclasses.
  15.328        virtual void erase(const Item&) = 0;
  15.329  
  15.330 -      /// \brief The member function to notificate the observer about
  15.331 -      /// more item is erased from the container.
  15.332 -      ///
  15.333 -      /// The erase() member function notificates the observer about more item
  15.334 -      /// is erased from the container. It have to be overrided in the
  15.335 -      /// subclasses.
  15.336 +      // \brief The member function to notificate the observer about
  15.337 +      // more item is erased from the container.
  15.338 +      //
  15.339 +      // The erase() member function notificates the observer about more item
  15.340 +      // is erased from the container. It have to be overrided in the
  15.341 +      // subclasses.
  15.342        virtual void erase(const std::vector<Item>& items) = 0;
  15.343  
  15.344 -      /// \brief The member function to notificate the observer about the
  15.345 -      /// container is built.
  15.346 -      ///
  15.347 -      /// The build() member function notificates the observer about the
  15.348 -      /// container is built from an empty container. It have to be
  15.349 -      /// overrided in the subclasses.
  15.350 -
  15.351 +      // \brief The member function to notificate the observer about the
  15.352 +      // container is built.
  15.353 +      //
  15.354 +      // The build() member function notificates the observer about the
  15.355 +      // container is built from an empty container. It have to be
  15.356 +      // overrided in the subclasses.
  15.357        virtual void build() = 0;
  15.358  
  15.359 -      /// \brief The member function to notificate the observer about all
  15.360 -      /// items are erased from the container.
  15.361 -      ///
  15.362 -      /// The clear() member function notificates the observer about all
  15.363 -      /// items are erased from the container. It have to be overrided in
  15.364 -      /// the subclasses.
  15.365 +      // \brief The member function to notificate the observer about all
  15.366 +      // items are erased from the container.
  15.367 +      //
  15.368 +      // The clear() member function notificates the observer about all
  15.369 +      // items are erased from the container. It have to be overrided in
  15.370 +      // the subclasses.
  15.371        virtual void clear() = 0;
  15.372  
  15.373      };
  15.374 @@ -262,31 +255,30 @@
  15.375  
  15.376    public:
  15.377  
  15.378 -    /// \brief Default constructor.
  15.379 -    ///
  15.380 -    /// The default constructor of the AlterationNotifier.
  15.381 -    /// It creates an empty notifier.
  15.382 +    // \brief Default constructor.
  15.383 +    //
  15.384 +    // The default constructor of the AlterationNotifier.
  15.385 +    // It creates an empty notifier.
  15.386      AlterationNotifier()
  15.387        : container(0) {}
  15.388  
  15.389 -    /// \brief Constructor.
  15.390 -    ///
  15.391 -    /// Constructor with the observed container parameter.
  15.392 +    // \brief Constructor.
  15.393 +    //
  15.394 +    // Constructor with the observed container parameter.
  15.395      AlterationNotifier(const Container& _container)
  15.396        : container(&_container) {}
  15.397  
  15.398 -    /// \brief Copy Constructor of the AlterationNotifier.
  15.399 -    ///
  15.400 -    /// Copy constructor of the AlterationNotifier.
  15.401 -    /// It creates only an empty notifier because the copiable
  15.402 -    /// notifier's observers have to be registered still into that notifier.
  15.403 +    // \brief Copy Constructor of the AlterationNotifier.
  15.404 +    //
  15.405 +    // Copy constructor of the AlterationNotifier.
  15.406 +    // It creates only an empty notifier because the copiable
  15.407 +    // notifier's observers have to be registered still into that notifier.
  15.408      AlterationNotifier(const AlterationNotifier& _notifier)
  15.409        : container(_notifier.container) {}
  15.410  
  15.411 -    /// \brief Destructor.
  15.412 -    ///
  15.413 -    /// Destructor of the AlterationNotifier.
  15.414 -    ///
  15.415 +    // \brief Destructor.
  15.416 +    //
  15.417 +    // Destructor of the AlterationNotifier.
  15.418      ~AlterationNotifier() {
  15.419        typename Observers::iterator it;
  15.420        for (it = _observers.begin(); it != _observers.end(); ++it) {
  15.421 @@ -294,9 +286,9 @@
  15.422        }
  15.423      }
  15.424  
  15.425 -    /// \brief Sets the container.
  15.426 -    ///
  15.427 -    /// Sets the container.
  15.428 +    // \brief Sets the container.
  15.429 +    //
  15.430 +    // Sets the container.
  15.431      void setContainer(const Container& _container) {
  15.432        container = &_container;
  15.433      }
  15.434 @@ -307,34 +299,32 @@
  15.435  
  15.436    public:
  15.437  
  15.438 -
  15.439 -
  15.440 -    /// \brief First item in the container.
  15.441 -    ///
  15.442 -    /// Returns the first item in the container. It is
  15.443 -    /// for start the iteration on the container.
  15.444 +    // \brief First item in the container.
  15.445 +    //
  15.446 +    // Returns the first item in the container. It is
  15.447 +    // for start the iteration on the container.
  15.448      void first(Item& item) const {
  15.449        container->first(item);
  15.450      }
  15.451  
  15.452 -    /// \brief Next item in the container.
  15.453 -    ///
  15.454 -    /// Returns the next item in the container. It is
  15.455 -    /// for iterate on the container.
  15.456 +    // \brief Next item in the container.
  15.457 +    //
  15.458 +    // Returns the next item in the container. It is
  15.459 +    // for iterate on the container.
  15.460      void next(Item& item) const {
  15.461        container->next(item);
  15.462      }
  15.463  
  15.464 -    /// \brief Returns the id of the item.
  15.465 -    ///
  15.466 -    /// Returns the id of the item provided by the container.
  15.467 +    // \brief Returns the id of the item.
  15.468 +    //
  15.469 +    // Returns the id of the item provided by the container.
  15.470      int id(const Item& item) const {
  15.471        return container->id(item);
  15.472      }
  15.473  
  15.474 -    /// \brief Returns the maximum id of the container.
  15.475 -    ///
  15.476 -    /// Returns the maximum id of the container.
  15.477 +    // \brief Returns the maximum id of the container.
  15.478 +    //
  15.479 +    // Returns the maximum id of the container.
  15.480      int maxId() const {
  15.481        return container->maxId(Item());
  15.482      }
  15.483 @@ -354,12 +344,11 @@
  15.484  
  15.485    public:
  15.486  
  15.487 -    /// \brief Notifies all the registed observers about an item added to
  15.488 -    /// the container.
  15.489 -    ///
  15.490 -    /// It notifies all the registed observers about an item added to
  15.491 -    /// the container.
  15.492 -    ///
  15.493 +    // \brief Notifies all the registed observers about an item added to
  15.494 +    // the container.
  15.495 +    //
  15.496 +    // It notifies all the registed observers about an item added to
  15.497 +    // the container.
  15.498      void add(const Item& item) {
  15.499        typename Observers::reverse_iterator it;
  15.500        try {
  15.501 @@ -375,12 +364,11 @@
  15.502        }
  15.503      }
  15.504  
  15.505 -    /// \brief Notifies all the registed observers about more item added to
  15.506 -    /// the container.
  15.507 -    ///
  15.508 -    /// It notifies all the registed observers about more item added to
  15.509 -    /// the container.
  15.510 -    ///
  15.511 +    // \brief Notifies all the registed observers about more item added to
  15.512 +    // the container.
  15.513 +    //
  15.514 +    // It notifies all the registed observers about more item added to
  15.515 +    // the container.
  15.516      void add(const std::vector<Item>& items) {
  15.517        typename Observers::reverse_iterator it;
  15.518        try {
  15.519 @@ -396,12 +384,11 @@
  15.520        }
  15.521      }
  15.522  
  15.523 -    /// \brief Notifies all the registed observers about an item erased from
  15.524 -    /// the container.
  15.525 -    ///
  15.526 -    /// It notifies all the registed observers about an item erased from
  15.527 -    /// the container.
  15.528 -    ///
  15.529 +    // \brief Notifies all the registed observers about an item erased from
  15.530 +    // the container.
  15.531 +    //
  15.532 +    // It notifies all the registed observers about an item erased from
  15.533 +    // the container.
  15.534      void erase(const Item& item) throw() {
  15.535        typename Observers::iterator it = _observers.begin();
  15.536        while (it != _observers.end()) {
  15.537 @@ -416,12 +403,11 @@
  15.538        }
  15.539      }
  15.540  
  15.541 -    /// \brief Notifies all the registed observers about more item erased
  15.542 -    /// from the container.
  15.543 -    ///
  15.544 -    /// It notifies all the registed observers about more item erased from
  15.545 -    /// the container.
  15.546 -    ///
  15.547 +    // \brief Notifies all the registed observers about more item erased
  15.548 +    // from the container.
  15.549 +    //
  15.550 +    // It notifies all the registed observers about more item erased from
  15.551 +    // the container.
  15.552      void erase(const std::vector<Item>& items) {
  15.553        typename Observers::iterator it = _observers.begin();
  15.554        while (it != _observers.end()) {
  15.555 @@ -436,11 +422,11 @@
  15.556        }
  15.557      }
  15.558  
  15.559 -    /// \brief Notifies all the registed observers about the container is
  15.560 -    /// built.
  15.561 -    ///
  15.562 -    /// Notifies all the registed observers about the container is built
  15.563 -    /// from an empty container.
  15.564 +    // \brief Notifies all the registed observers about the container is
  15.565 +    // built.
  15.566 +    //
  15.567 +    // Notifies all the registed observers about the container is built
  15.568 +    // from an empty container.
  15.569      void build() {
  15.570        typename Observers::reverse_iterator it;
  15.571        try {
  15.572 @@ -456,11 +442,11 @@
  15.573        }
  15.574      }
  15.575  
  15.576 -    /// \brief Notifies all the registed observers about all items are
  15.577 -    /// erased.
  15.578 -    ///
  15.579 -    /// Notifies all the registed observers about all items are erased
  15.580 -    /// from the container.
  15.581 +    // \brief Notifies all the registed observers about all items are
  15.582 +    // erased.
  15.583 +    //
  15.584 +    // Notifies all the registed observers about all items are erased
  15.585 +    // from the container.
  15.586      void clear() {
  15.587        typename Observers::iterator it = _observers.begin();
  15.588        while (it != _observers.end()) {
    16.1 --- a/lemon/bits/array_map.h	Thu Oct 09 13:52:01 2008 +0100
    16.2 +++ b/lemon/bits/array_map.h	Thu Oct 09 14:37:44 2008 +0100
    16.3 @@ -26,48 +26,48 @@
    16.4  #include <lemon/concept_check.h>
    16.5  #include <lemon/concepts/maps.h>
    16.6  
    16.7 -/// \ingroup graphbits
    16.8 -/// \file
    16.9 -/// \brief Graph map based on the array storage.
   16.10 +// \ingroup graphbits
   16.11 +// \file
   16.12 +// \brief Graph map based on the array storage.
   16.13  
   16.14  namespace lemon {
   16.15  
   16.16 -  /// \ingroup graphbits
   16.17 -  ///
   16.18 -  /// \brief Graph map based on the array storage.
   16.19 -  ///
   16.20 -  /// The ArrayMap template class is graph map structure what
   16.21 -  /// automatically updates the map when a key is added to or erased from
   16.22 -  /// the map. This map uses the allocators to implement
   16.23 -  /// the container functionality.
   16.24 -  ///
   16.25 -  /// The template parameters are the Graph the current Item type and
   16.26 -  /// the Value type of the map.
   16.27 +  // \ingroup graphbits
   16.28 +  //
   16.29 +  // \brief Graph map based on the array storage.
   16.30 +  //
   16.31 +  // The ArrayMap template class is graph map structure what
   16.32 +  // automatically updates the map when a key is added to or erased from
   16.33 +  // the map. This map uses the allocators to implement
   16.34 +  // the container functionality.
   16.35 +  //
   16.36 +  // The template parameters are the Graph the current Item type and
   16.37 +  // the Value type of the map.
   16.38    template <typename _Graph, typename _Item, typename _Value>
   16.39    class ArrayMap
   16.40      : public ItemSetTraits<_Graph, _Item>::ItemNotifier::ObserverBase {
   16.41    public:
   16.42 -    /// The graph type of the maps.
   16.43 +    // The graph type of the maps.
   16.44      typedef _Graph Graph;
   16.45 -    /// The item type of the map.
   16.46 +    // The item type of the map.
   16.47      typedef _Item Item;
   16.48 -    /// The reference map tag.
   16.49 +    // The reference map tag.
   16.50      typedef True ReferenceMapTag;
   16.51  
   16.52 -    /// The key type of the maps.
   16.53 +    // The key type of the maps.
   16.54      typedef _Item Key;
   16.55 -    /// The value type of the map.
   16.56 +    // The value type of the map.
   16.57      typedef _Value Value;
   16.58  
   16.59 -    /// The const reference type of the map.
   16.60 +    // The const reference type of the map.
   16.61      typedef const _Value& ConstReference;
   16.62 -    /// The reference type of the map.
   16.63 +    // The reference type of the map.
   16.64      typedef _Value& Reference;
   16.65  
   16.66 -    /// The notifier type.
   16.67 +    // The notifier type.
   16.68      typedef typename ItemSetTraits<_Graph, _Item>::ItemNotifier Notifier;
   16.69  
   16.70 -    /// The MapBase of the Map which imlements the core regisitry function.
   16.71 +    // The MapBase of the Map which imlements the core regisitry function.
   16.72      typedef typename Notifier::ObserverBase Parent;
   16.73  
   16.74    private:
   16.75 @@ -75,9 +75,9 @@
   16.76  
   16.77    public:
   16.78  
   16.79 -    /// \brief Graph initialized map constructor.
   16.80 -    ///
   16.81 -    /// Graph initialized map constructor.
   16.82 +    // \brief Graph initialized map constructor.
   16.83 +    //
   16.84 +    // Graph initialized map constructor.
   16.85      explicit ArrayMap(const Graph& graph) {
   16.86        Parent::attach(graph.notifier(Item()));
   16.87        allocate_memory();
   16.88 @@ -89,9 +89,9 @@
   16.89        }
   16.90      }
   16.91  
   16.92 -    /// \brief Constructor to use default value to initialize the map.
   16.93 -    ///
   16.94 -    /// It constructs a map and initialize all of the the map.
   16.95 +    // \brief Constructor to use default value to initialize the map.
   16.96 +    //
   16.97 +    // It constructs a map and initialize all of the the map.
   16.98      ArrayMap(const Graph& graph, const Value& value) {
   16.99        Parent::attach(graph.notifier(Item()));
  16.100        allocate_memory();
  16.101 @@ -104,9 +104,9 @@
  16.102      }
  16.103  
  16.104    private:
  16.105 -    /// \brief Constructor to copy a map of the same map type.
  16.106 -    ///
  16.107 -    /// Constructor to copy a map of the same map type.
  16.108 +    // \brief Constructor to copy a map of the same map type.
  16.109 +    //
  16.110 +    // Constructor to copy a map of the same map type.
  16.111      ArrayMap(const ArrayMap& copy) : Parent() {
  16.112        if (copy.attached()) {
  16.113          attach(*copy.notifier());
  16.114 @@ -122,24 +122,24 @@
  16.115        }
  16.116      }
  16.117  
  16.118 -    /// \brief Assign operator.
  16.119 -    ///
  16.120 -    /// This operator assigns for each item in the map the
  16.121 -    /// value mapped to the same item in the copied map.
  16.122 -    /// The parameter map should be indiced with the same
  16.123 -    /// itemset because this assign operator does not change
  16.124 -    /// the container of the map.
  16.125 +    // \brief Assign operator.
  16.126 +    //
  16.127 +    // This operator assigns for each item in the map the
  16.128 +    // value mapped to the same item in the copied map.
  16.129 +    // The parameter map should be indiced with the same
  16.130 +    // itemset because this assign operator does not change
  16.131 +    // the container of the map.
  16.132      ArrayMap& operator=(const ArrayMap& cmap) {
  16.133        return operator=<ArrayMap>(cmap);
  16.134      }
  16.135  
  16.136  
  16.137 -    /// \brief Template assign operator.
  16.138 -    ///
  16.139 -    /// The given parameter should be conform to the ReadMap
  16.140 -    /// concecpt and could be indiced by the current item set of
  16.141 -    /// the NodeMap. In this case the value for each item
  16.142 -    /// is assigned by the value of the given ReadMap.
  16.143 +    // \brief Template assign operator.
  16.144 +    //
  16.145 +    // The given parameter should be conform to the ReadMap
  16.146 +    // concecpt and could be indiced by the current item set of
  16.147 +    // the NodeMap. In this case the value for each item
  16.148 +    // is assigned by the value of the given ReadMap.
  16.149      template <typename CMap>
  16.150      ArrayMap& operator=(const CMap& cmap) {
  16.151        checkConcept<concepts::ReadMap<Key, _Value>, CMap>();
  16.152 @@ -152,9 +152,9 @@
  16.153      }
  16.154  
  16.155    public:
  16.156 -    /// \brief The destructor of the map.
  16.157 -    ///
  16.158 -    /// The destructor of the map.
  16.159 +    // \brief The destructor of the map.
  16.160 +    //
  16.161 +    // The destructor of the map.
  16.162      virtual ~ArrayMap() {
  16.163        if (attached()) {
  16.164          clear();
  16.165 @@ -170,38 +170,38 @@
  16.166  
  16.167    public:
  16.168  
  16.169 -    /// \brief The subscript operator.
  16.170 -    ///
  16.171 -    /// The subscript operator. The map can be subscripted by the
  16.172 -    /// actual keys of the graph.
  16.173 +    // \brief The subscript operator.
  16.174 +    //
  16.175 +    // The subscript operator. The map can be subscripted by the
  16.176 +    // actual keys of the graph.
  16.177      Value& operator[](const Key& key) {
  16.178        int id = Parent::notifier()->id(key);
  16.179        return values[id];
  16.180      }
  16.181  
  16.182 -    /// \brief The const subscript operator.
  16.183 -    ///
  16.184 -    /// The const subscript operator. The map can be subscripted by the
  16.185 -    /// actual keys of the graph.
  16.186 +    // \brief The const subscript operator.
  16.187 +    //
  16.188 +    // The const subscript operator. The map can be subscripted by the
  16.189 +    // actual keys of the graph.
  16.190      const Value& operator[](const Key& key) const {
  16.191        int id = Parent::notifier()->id(key);
  16.192        return values[id];
  16.193      }
  16.194  
  16.195 -    /// \brief Setter function of the map.
  16.196 -    ///
  16.197 -    /// Setter function of the map. Equivalent with map[key] = val.
  16.198 -    /// This is a compatibility feature with the not dereferable maps.
  16.199 +    // \brief Setter function of the map.
  16.200 +    //
  16.201 +    // Setter function of the map. Equivalent with map[key] = val.
  16.202 +    // This is a compatibility feature with the not dereferable maps.
  16.203      void set(const Key& key, const Value& val) {
  16.204        (*this)[key] = val;
  16.205      }
  16.206  
  16.207    protected:
  16.208  
  16.209 -    /// \brief Adds a new key to the map.
  16.210 -    ///
  16.211 -    /// It adds a new key to the map. It called by the observer notifier
  16.212 -    /// and it overrides the add() member function of the observer base.
  16.213 +    // \brief Adds a new key to the map.
  16.214 +    //
  16.215 +    // It adds a new key to the map. It called by the observer notifier
  16.216 +    // and it overrides the add() member function of the observer base.
  16.217      virtual void add(const Key& key) {
  16.218        Notifier* nf = Parent::notifier();
  16.219        int id = nf->id(key);
  16.220 @@ -226,10 +226,10 @@
  16.221        allocator.construct(&(values[id]), Value());
  16.222      }
  16.223  
  16.224 -    /// \brief Adds more new keys to the map.
  16.225 -    ///
  16.226 -    /// It adds more new keys to the map. It called by the observer notifier
  16.227 -    /// and it overrides the add() member function of the observer base.
  16.228 +    // \brief Adds more new keys to the map.
  16.229 +    //
  16.230 +    // It adds more new keys to the map. It called by the observer notifier
  16.231 +    // and it overrides the add() member function of the observer base.
  16.232      virtual void add(const std::vector<Key>& keys) {
  16.233        Notifier* nf = Parent::notifier();
  16.234        int max_id = -1;
  16.235 @@ -270,19 +270,19 @@
  16.236        }
  16.237      }
  16.238  
  16.239 -    /// \brief Erase a key from the map.
  16.240 -    ///
  16.241 -    /// Erase a key from the map. It called by the observer notifier
  16.242 -    /// and it overrides the erase() member function of the observer base.
  16.243 +    // \brief Erase a key from the map.
  16.244 +    //
  16.245 +    // Erase a key from the map. It called by the observer notifier
  16.246 +    // and it overrides the erase() member function of the observer base.
  16.247      virtual void erase(const Key& key) {
  16.248        int id = Parent::notifier()->id(key);
  16.249        allocator.destroy(&(values[id]));
  16.250      }
  16.251  
  16.252 -    /// \brief Erase more keys from the map.
  16.253 -    ///
  16.254 -    /// Erase more keys from the map. It called by the observer notifier
  16.255 -    /// and it overrides the erase() member function of the observer base.
  16.256 +    // \brief Erase more keys from the map.
  16.257 +    //
  16.258 +    // Erase more keys from the map. It called by the observer notifier
  16.259 +    // and it overrides the erase() member function of the observer base.
  16.260      virtual void erase(const std::vector<Key>& keys) {
  16.261        for (int i = 0; i < int(keys.size()); ++i) {
  16.262          int id = Parent::notifier()->id(keys[i]);
  16.263 @@ -290,10 +290,10 @@
  16.264        }
  16.265      }
  16.266  
  16.267 -    /// \brief Buildes the map.
  16.268 -    ///
  16.269 -    /// It buildes the map. It called by the observer notifier
  16.270 -    /// and it overrides the build() member function of the observer base.
  16.271 +    // \brief Buildes the map.
  16.272 +    //
  16.273 +    // It buildes the map. It called by the observer notifier
  16.274 +    // and it overrides the build() member function of the observer base.
  16.275      virtual void build() {
  16.276        Notifier* nf = Parent::notifier();
  16.277        allocate_memory();
  16.278 @@ -304,10 +304,10 @@
  16.279        }
  16.280      }
  16.281  
  16.282 -    /// \brief Clear the map.
  16.283 -    ///
  16.284 -    /// It erase all items from the map. It called by the observer notifier
  16.285 -    /// and it overrides the clear() member function of the observer base.
  16.286 +    // \brief Clear the map.
  16.287 +    //
  16.288 +    // It erase all items from the map. It called by the observer notifier
  16.289 +    // and it overrides the clear() member function of the observer base.
  16.290      virtual void clear() {
  16.291        Notifier* nf = Parent::notifier();
  16.292        if (capacity != 0) {
    17.1 --- a/lemon/bits/base_extender.h	Thu Oct 09 13:52:01 2008 +0100
    17.2 +++ b/lemon/bits/base_extender.h	Thu Oct 09 14:37:44 2008 +0100
    17.3 @@ -28,14 +28,14 @@
    17.4  #include <lemon/concept_check.h>
    17.5  #include <lemon/concepts/maps.h>
    17.6  
    17.7 -///\ingroup digraphbits
    17.8 -///\file
    17.9 -///\brief Extenders for the digraph types
   17.10 +//\ingroup digraphbits
   17.11 +//\file
   17.12 +//\brief Extenders for the digraph types
   17.13  namespace lemon {
   17.14  
   17.15 -  /// \ingroup digraphbits
   17.16 -  ///
   17.17 -  /// \brief BaseDigraph to BaseGraph extender
   17.18 +  // \ingroup digraphbits
   17.19 +  //
   17.20 +  // \brief BaseDigraph to BaseGraph extender
   17.21    template <typename Base>
   17.22    class UndirDigraphExtender : public Base {
   17.23  
   17.24 @@ -74,37 +74,37 @@
   17.25        }
   17.26      };
   17.27  
   17.28 -    /// First node of the edge
   17.29 +    // First node of the edge
   17.30      Node u(const Edge &e) const {
   17.31        return Parent::source(e);
   17.32      }
   17.33  
   17.34 -    /// Source of the given arc
   17.35 +    // Source of the given arc
   17.36      Node source(const Arc &e) const {
   17.37        return e.forward ? Parent::source(e) : Parent::target(e);
   17.38      }
   17.39  
   17.40 -    /// Second node of the edge
   17.41 +    // Second node of the edge
   17.42      Node v(const Edge &e) const {
   17.43        return Parent::target(e);
   17.44      }
   17.45  
   17.46 -    /// Target of the given arc
   17.47 +    // Target of the given arc
   17.48      Node target(const Arc &e) const {
   17.49        return e.forward ? Parent::target(e) : Parent::source(e);
   17.50      }
   17.51  
   17.52 -    /// \brief Directed arc from an edge.
   17.53 -    ///
   17.54 -    /// Returns a directed arc corresponding to the specified edge.
   17.55 -    /// If the given bool is true, the first node of the given edge and
   17.56 -    /// the source node of the returned arc are the same.
   17.57 +    // \brief Directed arc from an edge.
   17.58 +    //
   17.59 +    // Returns a directed arc corresponding to the specified edge.
   17.60 +    // If the given bool is true, the first node of the given edge and
   17.61 +    // the source node of the returned arc are the same.
   17.62      static Arc direct(const Edge &e, bool d) {
   17.63        return Arc(e, d);
   17.64      }
   17.65  
   17.66 -    /// Returns whether the given directed arc has the same orientation
   17.67 -    /// as the corresponding edge.
   17.68 +    // Returns whether the given directed arc has the same orientation
   17.69 +    // as the corresponding edge.
   17.70      static bool direction(const Arc &a) { return a.forward; }
   17.71  
   17.72      using Parent::first;
    18.1 --- a/lemon/bits/bezier.h	Thu Oct 09 13:52:01 2008 +0100
    18.2 +++ b/lemon/bits/bezier.h	Thu Oct 09 14:37:44 2008 +0100
    18.3 @@ -19,11 +19,11 @@
    18.4  #ifndef LEMON_BEZIER_H
    18.5  #define LEMON_BEZIER_H
    18.6  
    18.7 -///\ingroup misc
    18.8 -///\file
    18.9 -///\brief Classes to compute with Bezier curves.
   18.10 -///
   18.11 -///Up to now this file is used internally by \ref graph_to_eps.h
   18.12 +//\ingroup misc
   18.13 +//\file
   18.14 +//\brief Classes to compute with Bezier curves.
   18.15 +//
   18.16 +//Up to now this file is used internally by \ref graph_to_eps.h
   18.17  
   18.18  #include<lemon/dim2.h>
   18.19  
    19.1 --- a/lemon/bits/default_map.h	Thu Oct 09 13:52:01 2008 +0100
    19.2 +++ b/lemon/bits/default_map.h	Thu Oct 09 14:37:44 2008 +0100
    19.3 @@ -19,14 +19,13 @@
    19.4  #ifndef LEMON_BITS_DEFAULT_MAP_H
    19.5  #define LEMON_BITS_DEFAULT_MAP_H
    19.6  
    19.7 -
    19.8  #include <lemon/bits/array_map.h>
    19.9  #include <lemon/bits/vector_map.h>
   19.10  //#include <lemon/bits/debug_map.h>
   19.11  
   19.12 -///\ingroup graphbits
   19.13 -///\file
   19.14 -///\brief Graph maps that construct and destruct their elements dynamically.
   19.15 +//\ingroup graphbits
   19.16 +//\file
   19.17 +//\brief Graph maps that construct and destruct their elements dynamically.
   19.18  
   19.19  namespace lemon {
   19.20  
   19.21 @@ -149,7 +148,7 @@
   19.22  
   19.23  // #endif
   19.24  
   19.25 -  /// \e
   19.26 +  // DefaultMap class
   19.27    template <typename _Graph, typename _Item, typename _Value>
   19.28    class DefaultMap
   19.29      : public DefaultMapSelector<_Graph, _Item, _Value>::Map {
    20.1 --- a/lemon/bits/enable_if.h	Thu Oct 09 13:52:01 2008 +0100
    20.2 +++ b/lemon/bits/enable_if.h	Thu Oct 09 14:37:44 2008 +0100
    20.3 @@ -35,29 +35,29 @@
    20.4  #ifndef LEMON_BITS_ENABLE_IF_H
    20.5  #define LEMON_BITS_ENABLE_IF_H
    20.6  
    20.7 -///\file
    20.8 -///\brief Miscellaneous basic utilities
    20.9 +//\file
   20.10 +//\brief Miscellaneous basic utilities
   20.11  
   20.12  namespace lemon
   20.13  {
   20.14  
   20.15 -  /// Basic type for defining "tags". A "YES" condition for \c enable_if.
   20.16 +  // Basic type for defining "tags". A "YES" condition for \c enable_if.
   20.17  
   20.18 -  /// Basic type for defining "tags". A "YES" condition for \c enable_if.
   20.19 -  ///
   20.20 -  ///\sa False
   20.21 +  // Basic type for defining "tags". A "YES" condition for \c enable_if.
   20.22 +  //
   20.23 +  //\sa False
   20.24    struct True {
   20.25 -    ///\e
   20.26 +    //\e
   20.27      static const bool value = true;
   20.28    };
   20.29  
   20.30 -  /// Basic type for defining "tags". A "NO" condition for \c enable_if.
   20.31 +  // Basic type for defining "tags". A "NO" condition for \c enable_if.
   20.32  
   20.33 -  /// Basic type for defining "tags". A "NO" condition for \c enable_if.
   20.34 -  ///
   20.35 -  ///\sa True
   20.36 +  // Basic type for defining "tags". A "NO" condition for \c enable_if.
   20.37 +  //
   20.38 +  //\sa True
   20.39    struct False {
   20.40 -    ///\e
   20.41 +    //\e
   20.42      static const bool value = false;
   20.43    };
   20.44  
    21.1 --- a/lemon/bits/graph_extender.h	Thu Oct 09 13:52:01 2008 +0100
    21.2 +++ b/lemon/bits/graph_extender.h	Thu Oct 09 14:37:44 2008 +0100
    21.3 @@ -27,14 +27,14 @@
    21.4  #include <lemon/concept_check.h>
    21.5  #include <lemon/concepts/maps.h>
    21.6  
    21.7 -///\ingroup graphbits
    21.8 -///\file
    21.9 -///\brief Extenders for the digraph types
   21.10 +//\ingroup graphbits
   21.11 +//\file
   21.12 +//\brief Extenders for the digraph types
   21.13  namespace lemon {
   21.14  
   21.15 -  /// \ingroup graphbits
   21.16 -  ///
   21.17 -  /// \brief Extender for the Digraphs
   21.18 +  // \ingroup graphbits
   21.19 +  //
   21.20 +  // \brief Extender for the Digraphs
   21.21    template <typename Base>
   21.22    class DigraphExtender : public Base {
   21.23    public:
   21.24 @@ -186,30 +186,30 @@
   21.25  
   21.26      };
   21.27  
   21.28 -    /// \brief Base node of the iterator
   21.29 -    ///
   21.30 -    /// Returns the base node (i.e. the source in this case) of the iterator
   21.31 +    // \brief Base node of the iterator
   21.32 +    //
   21.33 +    // Returns the base node (i.e. the source in this case) of the iterator
   21.34      Node baseNode(const OutArcIt &arc) const {
   21.35        return Parent::source(arc);
   21.36      }
   21.37 -    /// \brief Running node of the iterator
   21.38 -    ///
   21.39 -    /// Returns the running node (i.e. the target in this case) of the
   21.40 -    /// iterator
   21.41 +    // \brief Running node of the iterator
   21.42 +    //
   21.43 +    // Returns the running node (i.e. the target in this case) of the
   21.44 +    // iterator
   21.45      Node runningNode(const OutArcIt &arc) const {
   21.46        return Parent::target(arc);
   21.47      }
   21.48  
   21.49 -    /// \brief Base node of the iterator
   21.50 -    ///
   21.51 -    /// Returns the base node (i.e. the target in this case) of the iterator
   21.52 +    // \brief Base node of the iterator
   21.53 +    //
   21.54 +    // Returns the base node (i.e. the target in this case) of the iterator
   21.55      Node baseNode(const InArcIt &arc) const {
   21.56        return Parent::target(arc);
   21.57      }
   21.58 -    /// \brief Running node of the iterator
   21.59 -    ///
   21.60 -    /// Returns the running node (i.e. the source in this case) of the
   21.61 -    /// iterator
   21.62 +    // \brief Running node of the iterator
   21.63 +    //
   21.64 +    // Returns the running node (i.e. the source in this case) of the
   21.65 +    // iterator
   21.66      Node runningNode(const InArcIt &arc) const {
   21.67        return Parent::source(arc);
   21.68      }
   21.69 @@ -325,9 +325,9 @@
   21.70      }
   21.71    };
   21.72  
   21.73 -  /// \ingroup _graphbits
   21.74 -  ///
   21.75 -  /// \brief Extender for the Graphs
   21.76 +  // \ingroup _graphbits
   21.77 +  //
   21.78 +  // \brief Extender for the Graphs
   21.79    template <typename Base>
   21.80    class GraphExtender : public Base {
   21.81    public:
   21.82 @@ -555,43 +555,43 @@
   21.83        }
   21.84      };
   21.85  
   21.86 -    /// \brief Base node of the iterator
   21.87 -    ///
   21.88 -    /// Returns the base node (ie. the source in this case) of the iterator
   21.89 +    // \brief Base node of the iterator
   21.90 +    //
   21.91 +    // Returns the base node (ie. the source in this case) of the iterator
   21.92      Node baseNode(const OutArcIt &arc) const {
   21.93        return Parent::source(static_cast<const Arc&>(arc));
   21.94      }
   21.95 -    /// \brief Running node of the iterator
   21.96 -    ///
   21.97 -    /// Returns the running node (ie. the target in this case) of the
   21.98 -    /// iterator
   21.99 +    // \brief Running node of the iterator
  21.100 +    //
  21.101 +    // Returns the running node (ie. the target in this case) of the
  21.102 +    // iterator
  21.103      Node runningNode(const OutArcIt &arc) const {
  21.104        return Parent::target(static_cast<const Arc&>(arc));
  21.105      }
  21.106  
  21.107 -    /// \brief Base node of the iterator
  21.108 -    ///
  21.109 -    /// Returns the base node (ie. the target in this case) of the iterator
  21.110 +    // \brief Base node of the iterator
  21.111 +    //
  21.112 +    // Returns the base node (ie. the target in this case) of the iterator
  21.113      Node baseNode(const InArcIt &arc) const {
  21.114        return Parent::target(static_cast<const Arc&>(arc));
  21.115      }
  21.116 -    /// \brief Running node of the iterator
  21.117 -    ///
  21.118 -    /// Returns the running node (ie. the source in this case) of the
  21.119 -    /// iterator
  21.120 +    // \brief Running node of the iterator
  21.121 +    //
  21.122 +    // Returns the running node (ie. the source in this case) of the
  21.123 +    // iterator
  21.124      Node runningNode(const InArcIt &arc) const {
  21.125        return Parent::source(static_cast<const Arc&>(arc));
  21.126      }
  21.127  
  21.128 -    /// Base node of the iterator
  21.129 -    ///
  21.130 -    /// Returns the base node of the iterator
  21.131 +    // Base node of the iterator
  21.132 +    //
  21.133 +    // Returns the base node of the iterator
  21.134      Node baseNode(const IncEdgeIt &edge) const {
  21.135        return edge._direction ? u(edge) : v(edge);
  21.136      }
  21.137 -    /// Running node of the iterator
  21.138 -    ///
  21.139 -    /// Returns the running node of the iterator
  21.140 +    // Running node of the iterator
  21.141 +    //
  21.142 +    // Returns the running node of the iterator
  21.143      Node runningNode(const IncEdgeIt &edge) const {
  21.144        return edge._direction ? v(edge) : u(edge);
  21.145      }
    22.1 --- a/lemon/bits/map_extender.h	Thu Oct 09 13:52:01 2008 +0100
    22.2 +++ b/lemon/bits/map_extender.h	Thu Oct 09 14:37:44 2008 +0100
    22.3 @@ -26,14 +26,14 @@
    22.4  #include <lemon/concept_check.h>
    22.5  #include <lemon/concepts/maps.h>
    22.6  
    22.7 -///\file
    22.8 -///\brief Extenders for iterable maps.
    22.9 +//\file
   22.10 +//\brief Extenders for iterable maps.
   22.11  
   22.12  namespace lemon {
   22.13  
   22.14 -  /// \ingroup graphbits
   22.15 -  ///
   22.16 -  /// \brief Extender for maps
   22.17 +  // \ingroup graphbits
   22.18 +  //
   22.19 +  // \brief Extender for maps
   22.20    template <typename _Map>
   22.21    class MapExtender : public _Map {
   22.22    public:
   22.23 @@ -171,9 +171,9 @@
   22.24      };
   22.25    };
   22.26  
   22.27 -  /// \ingroup graphbits
   22.28 -  ///
   22.29 -  /// \brief Extender for maps which use a subset of the items.
   22.30 +  // \ingroup graphbits
   22.31 +  //
   22.32 +  // \brief Extender for maps which use a subset of the items.
   22.33    template <typename _Graph, typename _Map>
   22.34    class SubMapExtender : public _Map {
   22.35    public:
    23.1 --- a/lemon/bits/traits.h	Thu Oct 09 13:52:01 2008 +0100
    23.2 +++ b/lemon/bits/traits.h	Thu Oct 09 14:37:44 2008 +0100
    23.3 @@ -19,9 +19,9 @@
    23.4  #ifndef LEMON_BITS_TRAITS_H
    23.5  #define LEMON_BITS_TRAITS_H
    23.6  
    23.7 -///\file
    23.8 -///\brief Traits for graphs and maps
    23.9 -///
   23.10 +//\file
   23.11 +//\brief Traits for graphs and maps
   23.12 +//
   23.13  
   23.14  #include <lemon/bits/enable_if.h>
   23.15  
    24.1 --- a/lemon/bits/vector_map.h	Thu Oct 09 13:52:01 2008 +0100
    24.2 +++ b/lemon/bits/vector_map.h	Thu Oct 09 14:37:44 2008 +0100
    24.3 @@ -28,81 +28,81 @@
    24.4  #include <lemon/concept_check.h>
    24.5  #include <lemon/concepts/maps.h>
    24.6  
    24.7 -///\ingroup graphbits
    24.8 -///
    24.9 -///\file
   24.10 -///\brief Vector based graph maps.
   24.11 +//\ingroup graphbits
   24.12 +//
   24.13 +//\file
   24.14 +//\brief Vector based graph maps.
   24.15  namespace lemon {
   24.16  
   24.17 -  /// \ingroup graphbits
   24.18 -  ///
   24.19 -  /// \brief Graph map based on the std::vector storage.
   24.20 -  ///
   24.21 -  /// The VectorMap template class is graph map structure what
   24.22 -  /// automatically updates the map when a key is added to or erased from
   24.23 -  /// the map. This map type uses the std::vector to store the values.
   24.24 -  ///
   24.25 -  /// \tparam _Graph The graph this map is attached to.
   24.26 -  /// \tparam _Item The item type of the graph items.
   24.27 -  /// \tparam _Value The value type of the map.
   24.28 +  // \ingroup graphbits
   24.29 +  //
   24.30 +  // \brief Graph map based on the std::vector storage.
   24.31 +  //
   24.32 +  // The VectorMap template class is graph map structure what
   24.33 +  // automatically updates the map when a key is added to or erased from
   24.34 +  // the map. This map type uses the std::vector to store the values.
   24.35 +  //
   24.36 +  // \tparam _Graph The graph this map is attached to.
   24.37 +  // \tparam _Item The item type of the graph items.
   24.38 +  // \tparam _Value The value type of the map.
   24.39    template <typename _Graph, typename _Item, typename _Value>
   24.40    class VectorMap
   24.41      : public ItemSetTraits<_Graph, _Item>::ItemNotifier::ObserverBase {
   24.42    private:
   24.43  
   24.44 -    /// The container type of the map.
   24.45 +    // The container type of the map.
   24.46      typedef std::vector<_Value> Container;
   24.47  
   24.48    public:
   24.49  
   24.50 -    /// The graph type of the map.
   24.51 +    // The graph type of the map.
   24.52      typedef _Graph Graph;
   24.53 -    /// The item type of the map.
   24.54 +    // The item type of the map.
   24.55      typedef _Item Item;
   24.56 -    /// The reference map tag.
   24.57 +    // The reference map tag.
   24.58      typedef True ReferenceMapTag;
   24.59  
   24.60 -    /// The key type of the map.
   24.61 +    // The key type of the map.
   24.62      typedef _Item Key;
   24.63 -    /// The value type of the map.
   24.64 +    // The value type of the map.
   24.65      typedef _Value Value;
   24.66  
   24.67 -    /// The notifier type.
   24.68 +    // The notifier type.
   24.69      typedef typename ItemSetTraits<_Graph, _Item>::ItemNotifier Notifier;
   24.70  
   24.71 -    /// The map type.
   24.72 +    // The map type.
   24.73      typedef VectorMap Map;
   24.74 -    /// The base class of the map.
   24.75 +    // The base class of the map.
   24.76      typedef typename Notifier::ObserverBase Parent;
   24.77  
   24.78 -    /// The reference type of the map;
   24.79 +    // The reference type of the map;
   24.80      typedef typename Container::reference Reference;
   24.81 -    /// The const reference type of the map;
   24.82 +    // The const reference type of the map;
   24.83      typedef typename Container::const_reference ConstReference;
   24.84  
   24.85  
   24.86 -    /// \brief Constructor to attach the new map into the notifier.
   24.87 -    ///
   24.88 -    /// It constructs a map and attachs it into the notifier.
   24.89 -    /// It adds all the items of the graph to the map.
   24.90 +    // \brief Constructor to attach the new map into the notifier.
   24.91 +    //
   24.92 +    // It constructs a map and attachs it into the notifier.
   24.93 +    // It adds all the items of the graph to the map.
   24.94      VectorMap(const Graph& graph) {
   24.95        Parent::attach(graph.notifier(Item()));
   24.96        container.resize(Parent::notifier()->maxId() + 1);
   24.97      }
   24.98  
   24.99 -    /// \brief Constructor uses given value to initialize the map.
  24.100 -    ///
  24.101 -    /// It constructs a map uses a given value to initialize the map.
  24.102 -    /// It adds all the items of the graph to the map.
  24.103 +    // \brief Constructor uses given value to initialize the map.
  24.104 +    //
  24.105 +    // It constructs a map uses a given value to initialize the map.
  24.106 +    // It adds all the items of the graph to the map.
  24.107      VectorMap(const Graph& graph, const Value& value) {
  24.108        Parent::attach(graph.notifier(Item()));
  24.109        container.resize(Parent::notifier()->maxId() + 1, value);
  24.110      }
  24.111  
  24.112    private:
  24.113 -    /// \brief Copy constructor
  24.114 -    ///
  24.115 -    /// Copy constructor.
  24.116 +    // \brief Copy constructor
  24.117 +    //
  24.118 +    // Copy constructor.
  24.119      VectorMap(const VectorMap& _copy) : Parent() {
  24.120        if (_copy.attached()) {
  24.121          Parent::attach(*_copy.notifier());
  24.122 @@ -110,24 +110,24 @@
  24.123        }
  24.124      }
  24.125  
  24.126 -    /// \brief Assign operator.
  24.127 -    ///
  24.128 -    /// This operator assigns for each item in the map the
  24.129 -    /// value mapped to the same item in the copied map.
  24.130 -    /// The parameter map should be indiced with the same
  24.131 -    /// itemset because this assign operator does not change
  24.132 -    /// the container of the map.
  24.133 +    // \brief Assign operator.
  24.134 +    //
  24.135 +    // This operator assigns for each item in the map the
  24.136 +    // value mapped to the same item in the copied map.
  24.137 +    // The parameter map should be indiced with the same
  24.138 +    // itemset because this assign operator does not change
  24.139 +    // the container of the map.
  24.140      VectorMap& operator=(const VectorMap& cmap) {
  24.141        return operator=<VectorMap>(cmap);
  24.142      }
  24.143  
  24.144  
  24.145 -    /// \brief Template assign operator.
  24.146 -    ///
  24.147 -    /// The given parameter should be conform to the ReadMap
  24.148 -    /// concecpt and could be indiced by the current item set of
  24.149 -    /// the NodeMap. In this case the value for each item
  24.150 -    /// is assigned by the value of the given ReadMap.
  24.151 +    // \brief Template assign operator.
  24.152 +    //
  24.153 +    // The given parameter should be conform to the ReadMap
  24.154 +    // concecpt and could be indiced by the current item set of
  24.155 +    // the NodeMap. In this case the value for each item
  24.156 +    // is assigned by the value of the given ReadMap.
  24.157      template <typename CMap>
  24.158      VectorMap& operator=(const CMap& cmap) {
  24.159        checkConcept<concepts::ReadMap<Key, _Value>, CMap>();
  24.160 @@ -141,36 +141,36 @@
  24.161  
  24.162    public:
  24.163  
  24.164 -    /// \brief The subcript operator.
  24.165 -    ///
  24.166 -    /// The subscript operator. The map can be subscripted by the
  24.167 -    /// actual items of the graph.
  24.168 +    // \brief The subcript operator.
  24.169 +    //
  24.170 +    // The subscript operator. The map can be subscripted by the
  24.171 +    // actual items of the graph.
  24.172      Reference operator[](const Key& key) {
  24.173        return container[Parent::notifier()->id(key)];
  24.174      }
  24.175  
  24.176 -    /// \brief The const subcript operator.
  24.177 -    ///
  24.178 -    /// The const subscript operator. The map can be subscripted by the
  24.179 -    /// actual items of the graph.
  24.180 +    // \brief The const subcript operator.
  24.181 +    //
  24.182 +    // The const subscript operator. The map can be subscripted by the
  24.183 +    // actual items of the graph.
  24.184      ConstReference operator[](const Key& key) const {
  24.185        return container[Parent::notifier()->id(key)];
  24.186      }
  24.187  
  24.188  
  24.189 -    /// \brief The setter function of the map.
  24.190 -    ///
  24.191 -    /// It the same as operator[](key) = value expression.
  24.192 +    // \brief The setter function of the map.
  24.193 +    //
  24.194 +    // It the same as operator[](key) = value expression.
  24.195      void set(const Key& key, const Value& value) {
  24.196        (*this)[key] = value;
  24.197      }
  24.198  
  24.199    protected:
  24.200  
  24.201 -    /// \brief Adds a new key to the map.
  24.202 -    ///
  24.203 -    /// It adds a new key to the map. It called by the observer notifier
  24.204 -    /// and it overrides the add() member function of the observer base.
  24.205 +    // \brief Adds a new key to the map.
  24.206 +    //
  24.207 +    // It adds a new key to the map. It called by the observer notifier
  24.208 +    // and it overrides the add() member function of the observer base.
  24.209      virtual void add(const Key& key) {
  24.210        int id = Parent::notifier()->id(key);
  24.211        if (id >= int(container.size())) {
  24.212 @@ -178,10 +178,10 @@
  24.213        }
  24.214      }
  24.215  
  24.216 -    /// \brief Adds more new keys to the map.
  24.217 -    ///
  24.218 -    /// It adds more new keys to the map. It called by the observer notifier
  24.219 -    /// and it overrides the add() member function of the observer base.
  24.220 +    // \brief Adds more new keys to the map.
  24.221 +    //
  24.222 +    // It adds more new keys to the map. It called by the observer notifier
  24.223 +    // and it overrides the add() member function of the observer base.
  24.224      virtual void add(const std::vector<Key>& keys) {
  24.225        int max = container.size() - 1;
  24.226        for (int i = 0; i < int(keys.size()); ++i) {
  24.227 @@ -193,38 +193,38 @@
  24.228        container.resize(max + 1);
  24.229      }
  24.230  
  24.231 -    /// \brief Erase a key from the map.
  24.232 -    ///
  24.233 -    /// Erase a key from the map. It called by the observer notifier
  24.234 -    /// and it overrides the erase() member function of the observer base.
  24.235 +    // \brief Erase a key from the map.
  24.236 +    //
  24.237 +    // Erase a key from the map. It called by the observer notifier
  24.238 +    // and it overrides the erase() member function of the observer base.
  24.239      virtual void erase(const Key& key) {
  24.240        container[Parent::notifier()->id(key)] = Value();
  24.241      }
  24.242  
  24.243 -    /// \brief Erase more keys from the map.
  24.244 -    ///
  24.245 -    /// Erase more keys from the map. It called by the observer notifier
  24.246 -    /// and it overrides the erase() member function of the observer base.
  24.247 +    // \brief Erase more keys from the map.
  24.248 +    //
  24.249 +    // Erase more keys from the map. It called by the observer notifier
  24.250 +    // and it overrides the erase() member function of the observer base.
  24.251      virtual void erase(const std::vector<Key>& keys) {
  24.252        for (int i = 0; i < int(keys.size()); ++i) {
  24.253          container[Parent::notifier()->id(keys[i])] = Value();
  24.254        }
  24.255      }
  24.256  
  24.257 -    /// \brief Buildes the map.
  24.258 -    ///
  24.259 -    /// It buildes the map. It called by the observer notifier
  24.260 -    /// and it overrides the build() member function of the observer base.
  24.261 +    // \brief Buildes the map.
  24.262 +    //
  24.263 +    // It buildes the map. It called by the observer notifier
  24.264 +    // and it overrides the build() member function of the observer base.
  24.265      virtual void build() {
  24.266        int size = Parent::notifier()->maxId() + 1;
  24.267        container.reserve(size);
  24.268        container.resize(size);
  24.269      }
  24.270  
  24.271 -    /// \brief Clear the map.
  24.272 -    ///
  24.273 -    /// It erase all items from the map. It called by the observer notifier
  24.274 -    /// and it overrides the clear() member function of the observer base.
  24.275 +    // \brief Clear the map.
  24.276 +    //
  24.277 +    // It erase all items from the map. It called by the observer notifier
  24.278 +    // and it overrides the clear() member function of the observer base.
  24.279      virtual void clear() {
  24.280        container.clear();
  24.281      }
    25.1 --- a/lemon/color.h	Thu Oct 09 13:52:01 2008 +0100
    25.2 +++ b/lemon/color.h	Thu Oct 09 14:37:44 2008 +0100
    25.3 @@ -92,7 +92,7 @@
    25.4    /// Dark cyan color constant
    25.5    extern const Color DARK_CYAN;
    25.6  
    25.7 -  ///Map <tt>int</tt>s to different \ref Color "Color"s
    25.8 +  ///Map <tt>int</tt>s to different <tt>Color</tt>s
    25.9  
   25.10    ///This map assigns one of the predefined \ref Color "Color"s to
   25.11    ///each <tt>int</tt>. It is possible to change the colors as well as
    26.1 --- a/lemon/concepts/graph_components.h	Thu Oct 09 13:52:01 2008 +0100
    26.2 +++ b/lemon/concepts/graph_components.h	Thu Oct 09 14:37:44 2008 +0100
    26.3 @@ -982,7 +982,7 @@
    26.4      /// \brief Class describing the concept of graph maps
    26.5      ///
    26.6      /// This class describes the common interface of the graph maps
    26.7 -    /// (NodeMap, ArcMap), that is \ref maps-page "maps" which can be used to
    26.8 +    /// (NodeMap, ArcMap), that is maps that can be used to
    26.9      /// associate data to graph descriptors (nodes or arcs).
   26.10      template <typename _Graph, typename _Item, typename _Value>
   26.11      class GraphMap : public ReadWriteMap<_Item, _Value> {
    27.1 --- a/lemon/concepts/maps.h	Thu Oct 09 13:52:01 2008 +0100
    27.2 +++ b/lemon/concepts/maps.h	Thu Oct 09 14:37:44 2008 +0100
    27.3 @@ -22,7 +22,7 @@
    27.4  #include <lemon/core.h>
    27.5  #include <lemon/concept_check.h>
    27.6  
    27.7 -///\ingroup concept
    27.8 +///\ingroup map_concepts
    27.9  ///\file
   27.10  ///\brief The concept of maps.
   27.11  
   27.12 @@ -30,7 +30,7 @@
   27.13  
   27.14    namespace concepts {
   27.15  
   27.16 -    /// \addtogroup concept
   27.17 +    /// \addtogroup map_concepts
   27.18      /// @{
   27.19  
   27.20      /// Readable map concept
    28.1 --- a/lemon/core.h	Thu Oct 09 13:52:01 2008 +0100
    28.2 +++ b/lemon/core.h	Thu Oct 09 14:37:44 2008 +0100
    28.3 @@ -58,7 +58,7 @@
    28.4    /// \addtogroup gutils
    28.5    /// @{
    28.6  
    28.7 -  ///Create convenient typedefs for the digraph types and iterators
    28.8 +  ///Create convenience typedefs for the digraph types and iterators
    28.9  
   28.10    ///This \c \#define creates convenient type definitions for the following
   28.11    ///types of \c Digraph: \c Node,  \c NodeIt, \c Arc, \c ArcIt, \c InArcIt,
   28.12 @@ -80,9 +80,9 @@
   28.13    typedef Digraph::NodeMap<double> DoubleNodeMap;                       \
   28.14    typedef Digraph::ArcMap<bool> BoolArcMap;                             \
   28.15    typedef Digraph::ArcMap<int> IntArcMap;                               \
   28.16 -  typedef Digraph::ArcMap<double> DoubleArcMap;
   28.17 +  typedef Digraph::ArcMap<double> DoubleArcMap
   28.18  
   28.19 -  ///Create convenient typedefs for the digraph types and iterators
   28.20 +  ///Create convenience typedefs for the digraph types and iterators
   28.21  
   28.22    ///\see DIGRAPH_TYPEDEFS
   28.23    ///
   28.24 @@ -100,9 +100,9 @@
   28.25    typedef typename Digraph::template NodeMap<double> DoubleNodeMap;     \
   28.26    typedef typename Digraph::template ArcMap<bool> BoolArcMap;           \
   28.27    typedef typename Digraph::template ArcMap<int> IntArcMap;             \
   28.28 -  typedef typename Digraph::template ArcMap<double> DoubleArcMap;
   28.29 +  typedef typename Digraph::template ArcMap<double> DoubleArcMap
   28.30  
   28.31 -  ///Create convenient typedefs for the graph types and iterators
   28.32 +  ///Create convenience typedefs for the graph types and iterators
   28.33  
   28.34    ///This \c \#define creates the same convenient type definitions as defined
   28.35    ///by \ref DIGRAPH_TYPEDEFS(Graph) and six more, namely it creates
   28.36 @@ -119,9 +119,9 @@
   28.37    typedef Graph::IncEdgeIt IncEdgeIt;                                   \
   28.38    typedef Graph::EdgeMap<bool> BoolEdgeMap;                             \
   28.39    typedef Graph::EdgeMap<int> IntEdgeMap;                               \
   28.40 -  typedef Graph::EdgeMap<double> DoubleEdgeMap;
   28.41 +  typedef Graph::EdgeMap<double> DoubleEdgeMap
   28.42  
   28.43 -  ///Create convenient typedefs for the graph types and iterators
   28.44 +  ///Create convenience typedefs for the graph types and iterators
   28.45  
   28.46    ///\see GRAPH_TYPEDEFS
   28.47    ///
   28.48 @@ -134,7 +134,7 @@
   28.49    typedef typename Graph::IncEdgeIt IncEdgeIt;                          \
   28.50    typedef typename Graph::template EdgeMap<bool> BoolEdgeMap;           \
   28.51    typedef typename Graph::template EdgeMap<int> IntEdgeMap;             \
   28.52 -  typedef typename Graph::template EdgeMap<double> DoubleEdgeMap;
   28.53 +  typedef typename Graph::template EdgeMap<double> DoubleEdgeMap
   28.54  
   28.55    /// \brief Function to count the items in a graph.
   28.56    ///
   28.57 @@ -1554,7 +1554,7 @@
   28.58      ///\note This is a dynamic data structure, therefore the data
   28.59      ///structure is updated after each graph alteration. Thus although
   28.60      ///this data structure is theoretically faster than \ref ArcLookUp
   28.61 -    ///and \ref AllArcLookup, it often provides worse performance than
   28.62 +    ///and \ref AllArcLookUp, it often provides worse performance than
   28.63      ///them.
   28.64      Arc operator()(Node s, Node t, Arc p = INVALID) const  {
   28.65        if (p == INVALID) {
   28.66 @@ -1699,8 +1699,8 @@
   28.67  
   28.68      ///Find an arc between two nodes.
   28.69  
   28.70 -    ///Find an arc between two nodes in time <em>O</em>(log<em>d</em>), where
   28.71 -    ///<em>d</em> is the number of outgoing arcs of \c s.
   28.72 +    ///Find an arc between two nodes in time <em>O</em>(log<em>d</em>),
   28.73 +    ///where <em>d</em> is the number of outgoing arcs of \c s.
   28.74      ///\param s The source node.
   28.75      ///\param t The target node.
   28.76      ///\return An arc from \c s to \c t if there exists,
   28.77 @@ -1817,8 +1817,8 @@
   28.78      ///for(Arc a = ae(u,v); a != INVALID; a=ae(u,v,a)) n++;
   28.79      ///\endcode
   28.80      ///
   28.81 -    ///Finding the first arc take <em>O</em>(log<em>d</em>) time, where
   28.82 -    ///<em>d</em> is the number of outgoing arcs of \c s. Then, the
   28.83 +    ///Finding the first arc take <em>O</em>(log<em>d</em>) time,
   28.84 +    ///where <em>d</em> is the number of outgoing arcs of \c s. Then the
   28.85      ///consecutive arcs are found in constant time.
   28.86      ///
   28.87      ///\warning If you change the digraph, refresh() must be called before using
    29.1 --- a/lemon/dfs.h	Thu Oct 09 13:52:01 2008 +0100
    29.2 +++ b/lemon/dfs.h	Thu Oct 09 14:37:44 2008 +0100
    29.3 @@ -50,11 +50,11 @@
    29.4      ///arcs of the %DFS paths.
    29.5      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
    29.6      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
    29.7 -    ///Instantiates a \ref PredMap.
    29.8 +    ///Instantiates a PredMap.
    29.9  
   29.10 -    ///This function instantiates a \ref PredMap.
   29.11 +    ///This function instantiates a PredMap.
   29.12      ///\param g is the digraph, to which we would like to define the
   29.13 -    ///\ref PredMap.
   29.14 +    ///PredMap.
   29.15      static PredMap *createPredMap(const Digraph &g)
   29.16      {
   29.17        return new PredMap(g);
   29.18 @@ -65,11 +65,11 @@
   29.19      ///The type of the map that indicates which nodes are processed.
   29.20      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   29.21      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
   29.22 -    ///Instantiates a \ref ProcessedMap.
   29.23 +    ///Instantiates a ProcessedMap.
   29.24  
   29.25 -    ///This function instantiates a \ref ProcessedMap.
   29.26 +    ///This function instantiates a ProcessedMap.
   29.27      ///\param g is the digraph, to which
   29.28 -    ///we would like to define the \ref ProcessedMap
   29.29 +    ///we would like to define the ProcessedMap
   29.30  #ifdef DOXYGEN
   29.31      static ProcessedMap *createProcessedMap(const Digraph &g)
   29.32  #else
   29.33 @@ -84,11 +84,11 @@
   29.34      ///The type of the map that indicates which nodes are reached.
   29.35      ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
   29.36      typedef typename Digraph::template NodeMap<bool> ReachedMap;
   29.37 -    ///Instantiates a \ref ReachedMap.
   29.38 +    ///Instantiates a ReachedMap.
   29.39  
   29.40 -    ///This function instantiates a \ref ReachedMap.
   29.41 +    ///This function instantiates a ReachedMap.
   29.42      ///\param g is the digraph, to which
   29.43 -    ///we would like to define the \ref ReachedMap.
   29.44 +    ///we would like to define the ReachedMap.
   29.45      static ReachedMap *createReachedMap(const Digraph &g)
   29.46      {
   29.47        return new ReachedMap(g);
   29.48 @@ -99,11 +99,11 @@
   29.49      ///The type of the map that stores the distances of the nodes.
   29.50      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   29.51      typedef typename Digraph::template NodeMap<int> DistMap;
   29.52 -    ///Instantiates a \ref DistMap.
   29.53 +    ///Instantiates a DistMap.
   29.54  
   29.55 -    ///This function instantiates a \ref DistMap.
   29.56 +    ///This function instantiates a DistMap.
   29.57      ///\param g is the digraph, to which we would like to define the
   29.58 -    ///\ref DistMap.
   29.59 +    ///DistMap.
   29.60      static DistMap *createDistMap(const Digraph &g)
   29.61      {
   29.62        return new DistMap(g);
   29.63 @@ -227,10 +227,10 @@
   29.64        }
   29.65      };
   29.66      ///\brief \ref named-templ-param "Named parameter" for setting
   29.67 -    ///\ref PredMap type.
   29.68 +    ///PredMap type.
   29.69      ///
   29.70      ///\ref named-templ-param "Named parameter" for setting
   29.71 -    ///\ref PredMap type.
   29.72 +    ///PredMap type.
   29.73      template <class T>
   29.74      struct SetPredMap : public Dfs<Digraph, SetPredMapTraits<T> > {
   29.75        typedef Dfs<Digraph, SetPredMapTraits<T> > Create;
   29.76 @@ -246,10 +246,10 @@
   29.77        }
   29.78      };
   29.79      ///\brief \ref named-templ-param "Named parameter" for setting
   29.80 -    ///\ref DistMap type.
   29.81 +    ///DistMap type.
   29.82      ///
   29.83      ///\ref named-templ-param "Named parameter" for setting
   29.84 -    ///\ref DistMap type.
   29.85 +    ///DistMap type.
   29.86      template <class T>
   29.87      struct SetDistMap : public Dfs< Digraph, SetDistMapTraits<T> > {
   29.88        typedef Dfs<Digraph, SetDistMapTraits<T> > Create;
   29.89 @@ -265,10 +265,10 @@
   29.90        }
   29.91      };
   29.92      ///\brief \ref named-templ-param "Named parameter" for setting
   29.93 -    ///\ref ReachedMap type.
   29.94 +    ///ReachedMap type.
   29.95      ///
   29.96      ///\ref named-templ-param "Named parameter" for setting
   29.97 -    ///\ref ReachedMap type.
   29.98 +    ///ReachedMap type.
   29.99      template <class T>
  29.100      struct SetReachedMap : public Dfs< Digraph, SetReachedMapTraits<T> > {
  29.101        typedef Dfs< Digraph, SetReachedMapTraits<T> > Create;
  29.102 @@ -284,10 +284,10 @@
  29.103        }
  29.104      };
  29.105      ///\brief \ref named-templ-param "Named parameter" for setting
  29.106 -    ///\ref ProcessedMap type.
  29.107 +    ///ProcessedMap type.
  29.108      ///
  29.109      ///\ref named-templ-param "Named parameter" for setting
  29.110 -    ///\ref ProcessedMap type.
  29.111 +    ///ProcessedMap type.
  29.112      template <class T>
  29.113      struct SetProcessedMap : public Dfs< Digraph, SetProcessedMapTraits<T> > {
  29.114        typedef Dfs< Digraph, SetProcessedMapTraits<T> > Create;
  29.115 @@ -301,10 +301,10 @@
  29.116        }
  29.117      };
  29.118      ///\brief \ref named-templ-param "Named parameter" for setting
  29.119 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  29.120 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  29.121      ///
  29.122      ///\ref named-templ-param "Named parameter" for setting
  29.123 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  29.124 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
  29.125      ///If you don't set it explicitly, it will be automatically allocated.
  29.126      struct SetStandardProcessedMap :
  29.127        public Dfs< Digraph, SetStandardProcessedMapTraits > {
  29.128 @@ -768,11 +768,11 @@
  29.129      ///arcs of the %DFS paths.
  29.130      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  29.131      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
  29.132 -    ///Instantiates a \ref PredMap.
  29.133 +    ///Instantiates a PredMap.
  29.134  
  29.135 -    ///This function instantiates a \ref PredMap.
  29.136 +    ///This function instantiates a PredMap.
  29.137      ///\param g is the digraph, to which we would like to define the
  29.138 -    ///\ref PredMap.
  29.139 +    ///PredMap.
  29.140      static PredMap *createPredMap(const Digraph &g)
  29.141      {
  29.142        return new PredMap(g);
  29.143 @@ -784,11 +784,11 @@
  29.144      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  29.145      ///By default it is a NullMap.
  29.146      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
  29.147 -    ///Instantiates a \ref ProcessedMap.
  29.148 +    ///Instantiates a ProcessedMap.
  29.149  
  29.150 -    ///This function instantiates a \ref ProcessedMap.
  29.151 +    ///This function instantiates a ProcessedMap.
  29.152      ///\param g is the digraph, to which
  29.153 -    ///we would like to define the \ref ProcessedMap.
  29.154 +    ///we would like to define the ProcessedMap.
  29.155  #ifdef DOXYGEN
  29.156      static ProcessedMap *createProcessedMap(const Digraph &g)
  29.157  #else
  29.158 @@ -803,11 +803,11 @@
  29.159      ///The type of the map that indicates which nodes are reached.
  29.160      ///It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
  29.161      typedef typename Digraph::template NodeMap<bool> ReachedMap;
  29.162 -    ///Instantiates a \ref ReachedMap.
  29.163 +    ///Instantiates a ReachedMap.
  29.164  
  29.165 -    ///This function instantiates a \ref ReachedMap.
  29.166 +    ///This function instantiates a ReachedMap.
  29.167      ///\param g is the digraph, to which
  29.168 -    ///we would like to define the \ref ReachedMap.
  29.169 +    ///we would like to define the ReachedMap.
  29.170      static ReachedMap *createReachedMap(const Digraph &g)
  29.171      {
  29.172        return new ReachedMap(g);
  29.173 @@ -818,11 +818,11 @@
  29.174      ///The type of the map that stores the distances of the nodes.
  29.175      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  29.176      typedef typename Digraph::template NodeMap<int> DistMap;
  29.177 -    ///Instantiates a \ref DistMap.
  29.178 +    ///Instantiates a DistMap.
  29.179  
  29.180 -    ///This function instantiates a \ref DistMap.
  29.181 +    ///This function instantiates a DistMap.
  29.182      ///\param g is the digraph, to which we would like to define
  29.183 -    ///the \ref DistMap
  29.184 +    ///the DistMap
  29.185      static DistMap *createDistMap(const Digraph &g)
  29.186      {
  29.187        return new DistMap(g);
  29.188 @@ -835,7 +835,7 @@
  29.189      typedef lemon::Path<Digraph> Path;
  29.190    };
  29.191  
  29.192 -  /// Default traits class used by \ref DfsWizard
  29.193 +  /// Default traits class used by DfsWizard
  29.194  
  29.195    /// To make it easier to use Dfs algorithm
  29.196    /// we have created a wizard class.
  29.197 @@ -1001,10 +1001,10 @@
  29.198        SetPredMapBase(const TR &b) : TR(b) {}
  29.199      };
  29.200      ///\brief \ref named-func-param "Named parameter"
  29.201 -    ///for setting \ref PredMap object.
  29.202 +    ///for setting PredMap object.
  29.203      ///
  29.204      ///\ref named-func-param "Named parameter"
  29.205 -    ///for setting \ref PredMap object.
  29.206 +    ///for setting PredMap object.
  29.207      template<class T>
  29.208      DfsWizard<SetPredMapBase<T> > predMap(const T &t)
  29.209      {
  29.210 @@ -1019,10 +1019,10 @@
  29.211        SetReachedMapBase(const TR &b) : TR(b) {}
  29.212      };
  29.213      ///\brief \ref named-func-param "Named parameter"
  29.214 -    ///for setting \ref ReachedMap object.
  29.215 +    ///for setting ReachedMap object.
  29.216      ///
  29.217      /// \ref named-func-param "Named parameter"
  29.218 -    ///for setting \ref ReachedMap object.
  29.219 +    ///for setting ReachedMap object.
  29.220      template<class T>
  29.221      DfsWizard<SetReachedMapBase<T> > reachedMap(const T &t)
  29.222      {
  29.223 @@ -1037,10 +1037,10 @@
  29.224        SetDistMapBase(const TR &b) : TR(b) {}
  29.225      };
  29.226      ///\brief \ref named-func-param "Named parameter"
  29.227 -    ///for setting \ref DistMap object.
  29.228 +    ///for setting DistMap object.
  29.229      ///
  29.230      /// \ref named-func-param "Named parameter"
  29.231 -    ///for setting \ref DistMap object.
  29.232 +    ///for setting DistMap object.
  29.233      template<class T>
  29.234      DfsWizard<SetDistMapBase<T> > distMap(const T &t)
  29.235      {
  29.236 @@ -1055,10 +1055,10 @@
  29.237        SetProcessedMapBase(const TR &b) : TR(b) {}
  29.238      };
  29.239      ///\brief \ref named-func-param "Named parameter"
  29.240 -    ///for setting \ref ProcessedMap object.
  29.241 +    ///for setting ProcessedMap object.
  29.242      ///
  29.243      /// \ref named-func-param "Named parameter"
  29.244 -    ///for setting \ref ProcessedMap object.
  29.245 +    ///for setting ProcessedMap object.
  29.246      template<class T>
  29.247      DfsWizard<SetProcessedMapBase<T> > processedMap(const T &t)
  29.248      {
  29.249 @@ -1213,11 +1213,11 @@
  29.250      /// It must meet the \ref concepts::ReadWriteMap "ReadWriteMap" concept.
  29.251      typedef typename Digraph::template NodeMap<bool> ReachedMap;
  29.252  
  29.253 -    /// \brief Instantiates a \ref ReachedMap.
  29.254 +    /// \brief Instantiates a ReachedMap.
  29.255      ///
  29.256 -    /// This function instantiates a \ref ReachedMap.
  29.257 +    /// This function instantiates a ReachedMap.
  29.258      /// \param digraph is the digraph, to which
  29.259 -    /// we would like to define the \ref ReachedMap.
  29.260 +    /// we would like to define the ReachedMap.
  29.261      static ReachedMap *createReachedMap(const Digraph &digraph) {
  29.262        return new ReachedMap(digraph);
  29.263      }
    30.1 --- a/lemon/dijkstra.h	Thu Oct 09 13:52:01 2008 +0100
    30.2 +++ b/lemon/dijkstra.h	Thu Oct 09 14:37:44 2008 +0100
    30.3 @@ -139,11 +139,11 @@
    30.4      ///arcs of the shortest paths.
    30.5      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
    30.6      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
    30.7 -    ///Instantiates a \ref PredMap.
    30.8 +    ///Instantiates a PredMap.
    30.9  
   30.10 -    ///This function instantiates a \ref PredMap.
   30.11 +    ///This function instantiates a PredMap.
   30.12      ///\param g is the digraph, to which we would like to define the
   30.13 -    ///\ref PredMap.
   30.14 +    ///PredMap.
   30.15      static PredMap *createPredMap(const Digraph &g)
   30.16      {
   30.17        return new PredMap(g);
   30.18 @@ -155,11 +155,11 @@
   30.19      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   30.20      ///By default it is a NullMap.
   30.21      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
   30.22 -    ///Instantiates a \ref ProcessedMap.
   30.23 +    ///Instantiates a ProcessedMap.
   30.24  
   30.25 -    ///This function instantiates a \ref ProcessedMap.
   30.26 +    ///This function instantiates a ProcessedMap.
   30.27      ///\param g is the digraph, to which
   30.28 -    ///we would like to define the \ref ProcessedMap
   30.29 +    ///we would like to define the ProcessedMap
   30.30  #ifdef DOXYGEN
   30.31      static ProcessedMap *createProcessedMap(const Digraph &g)
   30.32  #else
   30.33 @@ -174,11 +174,11 @@
   30.34      ///The type of the map that stores the distances of the nodes.
   30.35      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
   30.36      typedef typename Digraph::template NodeMap<typename LM::Value> DistMap;
   30.37 -    ///Instantiates a \ref DistMap.
   30.38 +    ///Instantiates a DistMap.
   30.39  
   30.40 -    ///This function instantiates a \ref DistMap.
   30.41 +    ///This function instantiates a DistMap.
   30.42      ///\param g is the digraph, to which we would like to define
   30.43 -    ///the \ref DistMap
   30.44 +    ///the DistMap
   30.45      static DistMap *createDistMap(const Digraph &g)
   30.46      {
   30.47        return new DistMap(g);
   30.48 @@ -327,10 +327,10 @@
   30.49        }
   30.50      };
   30.51      ///\brief \ref named-templ-param "Named parameter" for setting
   30.52 -    ///\ref PredMap type.
   30.53 +    ///PredMap type.
   30.54      ///
   30.55      ///\ref named-templ-param "Named parameter" for setting
   30.56 -    ///\ref PredMap type.
   30.57 +    ///PredMap type.
   30.58      template <class T>
   30.59      struct SetPredMap
   30.60        : public Dijkstra< Digraph, LengthMap, SetPredMapTraits<T> > {
   30.61 @@ -347,10 +347,10 @@
   30.62        }
   30.63      };
   30.64      ///\brief \ref named-templ-param "Named parameter" for setting
   30.65 -    ///\ref DistMap type.
   30.66 +    ///DistMap type.
   30.67      ///
   30.68      ///\ref named-templ-param "Named parameter" for setting
   30.69 -    ///\ref DistMap type.
   30.70 +    ///DistMap type.
   30.71      template <class T>
   30.72      struct SetDistMap
   30.73        : public Dijkstra< Digraph, LengthMap, SetDistMapTraits<T> > {
   30.74 @@ -367,10 +367,10 @@
   30.75        }
   30.76      };
   30.77      ///\brief \ref named-templ-param "Named parameter" for setting
   30.78 -    ///\ref ProcessedMap type.
   30.79 +    ///ProcessedMap type.
   30.80      ///
   30.81      ///\ref named-templ-param "Named parameter" for setting
   30.82 -    ///\ref ProcessedMap type.
   30.83 +    ///ProcessedMap type.
   30.84      template <class T>
   30.85      struct SetProcessedMap
   30.86        : public Dijkstra< Digraph, LengthMap, SetProcessedMapTraits<T> > {
   30.87 @@ -385,10 +385,10 @@
   30.88        }
   30.89      };
   30.90      ///\brief \ref named-templ-param "Named parameter" for setting
   30.91 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
   30.92 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
   30.93      ///
   30.94      ///\ref named-templ-param "Named parameter" for setting
   30.95 -    ///\ref ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
   30.96 +    ///ProcessedMap type to be <tt>Digraph::NodeMap<bool></tt>.
   30.97      ///If you don't set it explicitly, it will be automatically allocated.
   30.98      struct SetStandardProcessedMap
   30.99        : public Dijkstra< Digraph, LengthMap, SetStandardProcessedMapTraits > {
  30.100 @@ -453,7 +453,7 @@
  30.101      };
  30.102  
  30.103      /// \brief \ref named-templ-param "Named parameter" for setting
  30.104 -    ///\ref OperationTraits type
  30.105 +    ///\c OperationTraits type
  30.106      ///
  30.107      ///\ref named-templ-param "Named parameter" for setting
  30.108      ///\ref OperationTraits type.
  30.109 @@ -986,11 +986,11 @@
  30.110      ///arcs of the shortest paths.
  30.111      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  30.112      typedef typename Digraph::template NodeMap<typename Digraph::Arc> PredMap;
  30.113 -    ///Instantiates a \ref PredMap.
  30.114 +    ///Instantiates a PredMap.
  30.115  
  30.116 -    ///This function instantiates a \ref PredMap.
  30.117 +    ///This function instantiates a PredMap.
  30.118      ///\param g is the digraph, to which we would like to define the
  30.119 -    ///\ref PredMap.
  30.120 +    ///PredMap.
  30.121      static PredMap *createPredMap(const Digraph &g)
  30.122      {
  30.123        return new PredMap(g);
  30.124 @@ -1002,11 +1002,11 @@
  30.125      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  30.126      ///By default it is a NullMap.
  30.127      typedef NullMap<typename Digraph::Node,bool> ProcessedMap;
  30.128 -    ///Instantiates a \ref ProcessedMap.
  30.129 +    ///Instantiates a ProcessedMap.
  30.130  
  30.131 -    ///This function instantiates a \ref ProcessedMap.
  30.132 +    ///This function instantiates a ProcessedMap.
  30.133      ///\param g is the digraph, to which
  30.134 -    ///we would like to define the \ref ProcessedMap.
  30.135 +    ///we would like to define the ProcessedMap.
  30.136  #ifdef DOXYGEN
  30.137      static ProcessedMap *createProcessedMap(const Digraph &g)
  30.138  #else
  30.139 @@ -1021,11 +1021,11 @@
  30.140      ///The type of the map that stores the distances of the nodes.
  30.141      ///It must meet the \ref concepts::WriteMap "WriteMap" concept.
  30.142      typedef typename Digraph::template NodeMap<typename LM::Value> DistMap;
  30.143 -    ///Instantiates a \ref DistMap.
  30.144 +    ///Instantiates a DistMap.
  30.145  
  30.146 -    ///This function instantiates a \ref DistMap.
  30.147 +    ///This function instantiates a DistMap.
  30.148      ///\param g is the digraph, to which we would like to define
  30.149 -    ///the \ref DistMap
  30.150 +    ///the DistMap
  30.151      static DistMap *createDistMap(const Digraph &g)
  30.152      {
  30.153        return new DistMap(g);
  30.154 @@ -1038,7 +1038,7 @@
  30.155      typedef lemon::Path<Digraph> Path;
  30.156    };
  30.157  
  30.158 -  /// Default traits class used by \ref DijkstraWizard
  30.159 +  /// Default traits class used by DijkstraWizard
  30.160  
  30.161    /// To make it easier to use Dijkstra algorithm
  30.162    /// we have created a wizard class.
  30.163 @@ -1198,10 +1198,10 @@
  30.164        SetPredMapBase(const TR &b) : TR(b) {}
  30.165      };
  30.166      ///\brief \ref named-func-param "Named parameter"
  30.167 -    ///for setting \ref PredMap object.
  30.168 +    ///for setting PredMap object.
  30.169      ///
  30.170      ///\ref named-func-param "Named parameter"
  30.171 -    ///for setting \ref PredMap object.
  30.172 +    ///for setting PredMap object.
  30.173      template<class T>
  30.174      DijkstraWizard<SetPredMapBase<T> > predMap(const T &t)
  30.175      {
  30.176 @@ -1216,10 +1216,10 @@
  30.177        SetDistMapBase(const TR &b) : TR(b) {}
  30.178      };
  30.179      ///\brief \ref named-func-param "Named parameter"
  30.180 -    ///for setting \ref DistMap object.
  30.181 +    ///for setting DistMap object.
  30.182      ///
  30.183      ///\ref named-func-param "Named parameter"
  30.184 -    ///for setting \ref DistMap object.
  30.185 +    ///for setting DistMap object.
  30.186      template<class T>
  30.187      DijkstraWizard<SetDistMapBase<T> > distMap(const T &t)
  30.188      {
  30.189 @@ -1234,10 +1234,10 @@
  30.190        SetProcessedMapBase(const TR &b) : TR(b) {}
  30.191      };
  30.192      ///\brief \ref named-func-param "Named parameter"
  30.193 -    ///for setting \ref ProcessedMap object.
  30.194 +    ///for setting ProcessedMap object.
  30.195      ///
  30.196      /// \ref named-func-param "Named parameter"
  30.197 -    ///for setting \ref ProcessedMap object.
  30.198 +    ///for setting ProcessedMap object.
  30.199      template<class T>
  30.200      DijkstraWizard<SetProcessedMapBase<T> > processedMap(const T &t)
  30.201      {
    31.1 --- a/lemon/dim2.h	Thu Oct 09 13:52:01 2008 +0100
    31.2 +++ b/lemon/dim2.h	Thu Oct 09 14:37:44 2008 +0100
    31.3 @@ -259,10 +259,10 @@
    31.4  
    31.5  
    31.6  
    31.7 -  /// Bounding box of plain vectors (\ref Point points).
    31.8 +  /// Bounding box of plain vectors (points).
    31.9  
   31.10    /// A class to calculate or store the bounding box of plain vectors
   31.11 -  /// (\ref Point points).
   31.12 +  /// (\ref Point "points").
   31.13    template<typename T>
   31.14    class Box {
   31.15        Point<T> _bottom_left, _top_right;
   31.16 @@ -573,9 +573,8 @@
   31.17      return os;
   31.18    }
   31.19  
   31.20 -  ///Map of x-coordinates of a \ref Point "Point"-map
   31.21 +  ///Map of x-coordinates of a <tt>Point</tt>-map
   31.22  
   31.23 -  ///\ingroup maps
   31.24    ///Map of x-coordinates of a \ref Point "Point"-map.
   31.25    ///
   31.26    template<class M>
   31.27 @@ -592,11 +591,9 @@
   31.28      void set(Key k,Value v) {_map.set(k,typename M::Value(v,_map[k].y));}
   31.29    };
   31.30  
   31.31 -  ///Returns an \ref XMap class
   31.32 +  ///Returns an XMap class
   31.33  
   31.34 -  ///This function just returns an \ref XMap class.
   31.35 -  ///
   31.36 -  ///\ingroup maps
   31.37 +  ///This function just returns an XMap class.
   31.38    ///\relates XMap
   31.39    template<class M>
   31.40    inline XMap<M> xMap(M &m)
   31.41 @@ -610,10 +607,9 @@
   31.42      return XMap<M>(m);
   31.43    }
   31.44  
   31.45 -  ///Constant (read only) version of \ref XMap
   31.46 +  ///Constant (read only) version of XMap
   31.47  
   31.48 -  ///\ingroup maps
   31.49 -  ///Constant (read only) version of \ref XMap
   31.50 +  ///Constant (read only) version of XMap.
   31.51    ///
   31.52    template<class M>
   31.53    class ConstXMap
   31.54 @@ -628,11 +624,9 @@
   31.55      Value operator[](Key k) const {return _map[k].x;}
   31.56    };
   31.57  
   31.58 -  ///Returns a \ref ConstXMap class
   31.59 +  ///Returns a ConstXMap class
   31.60  
   31.61 -  ///This function just returns a \ref ConstXMap class.
   31.62 -  ///
   31.63 -  ///\ingroup maps
   31.64 +  ///This function just returns a ConstXMap class.
   31.65    ///\relates ConstXMap
   31.66    template<class M>
   31.67    inline ConstXMap<M> xMap(const M &m)
   31.68 @@ -640,9 +634,8 @@
   31.69      return ConstXMap<M>(m);
   31.70    }
   31.71  
   31.72 -  ///Map of y-coordinates of a \ref Point "Point"-map
   31.73 +  ///Map of y-coordinates of a <tt>Point</tt>-map
   31.74  
   31.75 -  ///\ingroup maps
   31.76    ///Map of y-coordinates of a \ref Point "Point"-map.
   31.77    ///
   31.78    template<class M>
   31.79 @@ -659,11 +652,9 @@
   31.80      void set(Key k,Value v) {_map.set(k,typename M::Value(_map[k].x,v));}
   31.81    };
   31.82  
   31.83 -  ///Returns a \ref YMap class
   31.84 +  ///Returns a YMap class
   31.85  
   31.86 -  ///This function just returns a \ref YMap class.
   31.87 -  ///
   31.88 -  ///\ingroup maps
   31.89 +  ///This function just returns a YMap class.
   31.90    ///\relates YMap
   31.91    template<class M>
   31.92    inline YMap<M> yMap(M &m)
   31.93 @@ -677,10 +668,9 @@
   31.94      return YMap<M>(m);
   31.95    }
   31.96  
   31.97 -  ///Constant (read only) version of \ref YMap
   31.98 +  ///Constant (read only) version of YMap
   31.99  
  31.100 -  ///\ingroup maps
  31.101 -  ///Constant (read only) version of \ref YMap
  31.102 +  ///Constant (read only) version of YMap.
  31.103    ///
  31.104    template<class M>
  31.105    class ConstYMap
  31.106 @@ -695,11 +685,9 @@
  31.107      Value operator[](Key k) const {return _map[k].y;}
  31.108    };
  31.109  
  31.110 -  ///Returns a \ref ConstYMap class
  31.111 +  ///Returns a ConstYMap class
  31.112  
  31.113 -  ///This function just returns a \ref ConstYMap class.
  31.114 -  ///
  31.115 -  ///\ingroup maps
  31.116 +  ///This function just returns a ConstYMap class.
  31.117    ///\relates ConstYMap
  31.118    template<class M>
  31.119    inline ConstYMap<M> yMap(const M &m)
  31.120 @@ -708,12 +696,10 @@
  31.121    }
  31.122  
  31.123  
  31.124 -  ///\brief Map of the \ref Point::normSquare() "normSquare()"
  31.125 -  ///of a \ref Point "Point"-map
  31.126 +  ///\brief Map of the normSquare() of a <tt>Point</tt>-map
  31.127    ///
  31.128    ///Map of the \ref Point::normSquare() "normSquare()"
  31.129    ///of a \ref Point "Point"-map.
  31.130 -  ///\ingroup maps
  31.131    template<class M>
  31.132    class NormSquareMap
  31.133    {
  31.134 @@ -727,11 +713,9 @@
  31.135      Value operator[](Key k) const {return _map[k].normSquare();}
  31.136    };
  31.137  
  31.138 -  ///Returns a \ref NormSquareMap class
  31.139 +  ///Returns a NormSquareMap class
  31.140  
  31.141 -  ///This function just returns a \ref NormSquareMap class.
  31.142 -  ///
  31.143 -  ///\ingroup maps
  31.144 +  ///This function just returns a NormSquareMap class.
  31.145    ///\relates NormSquareMap
  31.146    template<class M>
  31.147    inline NormSquareMap<M> normSquareMap(const M &m)
    32.1 --- a/lemon/graph_to_eps.h	Thu Oct 09 13:52:01 2008 +0100
    32.2 +++ b/lemon/graph_to_eps.h	Thu Oct 09 14:37:44 2008 +0100
    32.3 @@ -62,7 +62,7 @@
    32.4      };
    32.5    }
    32.6  
    32.7 -///Default traits class of \ref GraphToEps
    32.8 +///Default traits class of GraphToEps
    32.9  
   32.10  ///Default traits class of \ref GraphToEps.
   32.11  ///
    33.1 --- a/lemon/lgf_reader.h	Thu Oct 09 13:52:01 2008 +0100
    33.2 +++ b/lemon/lgf_reader.h	Thu Oct 09 14:37:44 2008 +0100
    33.3 @@ -391,15 +391,37 @@
    33.4    template <typename Digraph>
    33.5    class DigraphReader;
    33.6  
    33.7 +  /// \brief Return a \ref DigraphReader class
    33.8 +  ///
    33.9 +  /// This function just returns a \ref DigraphReader class.
   33.10 +  /// \relates DigraphReader
   33.11    template <typename Digraph>
   33.12    DigraphReader<Digraph> digraphReader(Digraph& digraph,
   33.13 -                                       std::istream& is = std::cin);
   33.14 -
   33.15 +                                       std::istream& is = std::cin) {
   33.16 +    DigraphReader<Digraph> tmp(digraph, is);
   33.17 +    return tmp;
   33.18 +  }
   33.19 +
   33.20 +  /// \brief Return a \ref DigraphReader class
   33.21 +  ///
   33.22 +  /// This function just returns a \ref DigraphReader class.
   33.23 +  /// \relates DigraphReader
   33.24    template <typename Digraph>
   33.25 -  DigraphReader<Digraph> digraphReader(Digraph& digraph, const std::string& fn);
   33.26 -
   33.27 +  DigraphReader<Digraph> digraphReader(Digraph& digraph,
   33.28 +                                       const std::string& fn) {
   33.29 +    DigraphReader<Digraph> tmp(digraph, fn);
   33.30 +    return tmp;
   33.31 +  }
   33.32 +
   33.33 +  /// \brief Return a \ref DigraphReader class
   33.34 +  ///
   33.35 +  /// This function just returns a \ref DigraphReader class.
   33.36 +  /// \relates DigraphReader
   33.37    template <typename Digraph>
   33.38 -  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char *fn);
   33.39 +  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char* fn) {
   33.40 +    DigraphReader<Digraph> tmp(digraph, fn);
   33.41 +    return tmp;
   33.42 +  }
   33.43  
   33.44    /// \ingroup lemon_io
   33.45    ///
   33.46 @@ -1189,51 +1211,39 @@
   33.47  
   33.48    };
   33.49  
   33.50 -  /// \brief Return a \ref DigraphReader class
   33.51 +  template <typename Graph>
   33.52 +  class GraphReader;
   33.53 +
   33.54 +  /// \brief Return a \ref GraphReader class
   33.55    ///
   33.56 -  /// This function just returns a \ref DigraphReader class.
   33.57 -  /// \relates DigraphReader
   33.58 -  template <typename Digraph>
   33.59 -  DigraphReader<Digraph> digraphReader(Digraph& digraph,
   33.60 -                                       std::istream& is = std::cin) {
   33.61 -    DigraphReader<Digraph> tmp(digraph, is);
   33.62 +  /// This function just returns a \ref GraphReader class.
   33.63 +  /// \relates GraphReader
   33.64 +  template <typename Graph>
   33.65 +  GraphReader<Graph> graphReader(Graph& graph, std::istream& is = std::cin) {
   33.66 +    GraphReader<Graph> tmp(graph, is);
   33.67      return tmp;
   33.68    }
   33.69  
   33.70 -  /// \brief Return a \ref DigraphReader class
   33.71 +  /// \brief Return a \ref GraphReader class
   33.72    ///
   33.73 -  /// This function just returns a \ref DigraphReader class.
   33.74 -  /// \relates DigraphReader
   33.75 -  template <typename Digraph>
   33.76 -  DigraphReader<Digraph> digraphReader(Digraph& digraph,
   33.77 -                                       const std::string& fn) {
   33.78 -    DigraphReader<Digraph> tmp(digraph, fn);
   33.79 +  /// This function just returns a \ref GraphReader class.
   33.80 +  /// \relates GraphReader
   33.81 +  template <typename Graph>
   33.82 +  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn) {
   33.83 +    GraphReader<Graph> tmp(graph, fn);
   33.84      return tmp;
   33.85    }
   33.86  
   33.87 -  /// \brief Return a \ref DigraphReader class
   33.88 +  /// \brief Return a \ref GraphReader class
   33.89    ///
   33.90 -  /// This function just returns a \ref DigraphReader class.
   33.91 -  /// \relates DigraphReader
   33.92 -  template <typename Digraph>
   33.93 -  DigraphReader<Digraph> digraphReader(Digraph& digraph, const char* fn) {
   33.94 -    DigraphReader<Digraph> tmp(digraph, fn);
   33.95 +  /// This function just returns a \ref GraphReader class.
   33.96 +  /// \relates GraphReader
   33.97 +  template <typename Graph>
   33.98 +  GraphReader<Graph> graphReader(Graph& graph, const char* fn) {
   33.99 +    GraphReader<Graph> tmp(graph, fn);
  33.100      return tmp;
  33.101    }
  33.102  
  33.103 -  template <typename Graph>
  33.104 -  class GraphReader;
  33.105 -
  33.106 -  template <typename Graph>
  33.107 -  GraphReader<Graph> graphReader(Graph& graph,
  33.108 -                                 std::istream& is = std::cin);
  33.109 -
  33.110 -  template <typename Graph>
  33.111 -  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn);
  33.112 -
  33.113 -  template <typename Graph>
  33.114 -  GraphReader<Graph> graphReader(Graph& graph, const char *fn);
  33.115 -
  33.116    /// \ingroup lemon_io
  33.117    ///
  33.118    /// \brief \ref lgf-format "LGF" reader for undirected graphs
  33.119 @@ -2031,36 +2041,6 @@
  33.120  
  33.121    };
  33.122  
  33.123 -  /// \brief Return a \ref GraphReader class
  33.124 -  ///
  33.125 -  /// This function just returns a \ref GraphReader class.
  33.126 -  /// \relates GraphReader
  33.127 -  template <typename Graph>
  33.128 -  GraphReader<Graph> graphReader(Graph& graph, std::istream& is = std::cin) {
  33.129 -    GraphReader<Graph> tmp(graph, is);
  33.130 -    return tmp;
  33.131 -  }
  33.132 -
  33.133 -  /// \brief Return a \ref GraphReader class
  33.134 -  ///
  33.135 -  /// This function just returns a \ref GraphReader class.
  33.136 -  /// \relates GraphReader
  33.137 -  template <typename Graph>
  33.138 -  GraphReader<Graph> graphReader(Graph& graph, const std::string& fn) {
  33.139 -    GraphReader<Graph> tmp(graph, fn);
  33.140 -    return tmp;
  33.141 -  }
  33.142 -
  33.143 -  /// \brief Return a \ref GraphReader class
  33.144 -  ///
  33.145 -  /// This function just returns a \ref GraphReader class.
  33.146 -  /// \relates GraphReader
  33.147 -  template <typename Graph>
  33.148 -  GraphReader<Graph> graphReader(Graph& graph, const char* fn) {
  33.149 -    GraphReader<Graph> tmp(graph, fn);
  33.150 -    return tmp;
  33.151 -  }
  33.152 -
  33.153    class SectionReader;
  33.154  
  33.155    SectionReader sectionReader(std::istream& is);
    34.1 --- a/lemon/lgf_writer.h	Thu Oct 09 13:52:01 2008 +0100
    34.2 +++ b/lemon/lgf_writer.h	Thu Oct 09 14:37:44 2008 +0100
    34.3 @@ -351,17 +351,38 @@
    34.4    template <typename Digraph>
    34.5    class DigraphWriter;
    34.6  
    34.7 +  /// \brief Return a \ref DigraphWriter class
    34.8 +  ///
    34.9 +  /// This function just returns a \ref DigraphWriter class.
   34.10 +  /// \relates DigraphWriter
   34.11    template <typename Digraph>
   34.12    DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.13 -                                       std::ostream& os = std::cout);
   34.14 +                                       std::ostream& os = std::cout) {
   34.15 +    DigraphWriter<Digraph> tmp(digraph, os);
   34.16 +    return tmp;
   34.17 +  }
   34.18  
   34.19 +  /// \brief Return a \ref DigraphWriter class
   34.20 +  ///
   34.21 +  /// This function just returns a \ref DigraphWriter class.
   34.22 +  /// \relates DigraphWriter
   34.23    template <typename Digraph>
   34.24    DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.25 -                                       const std::string& fn);
   34.26 +                                       const std::string& fn) {
   34.27 +    DigraphWriter<Digraph> tmp(digraph, fn);
   34.28 +    return tmp;
   34.29 +  }
   34.30  
   34.31 +  /// \brief Return a \ref DigraphWriter class
   34.32 +  ///
   34.33 +  /// This function just returns a \ref DigraphWriter class.
   34.34 +  /// \relates DigraphWriter
   34.35    template <typename Digraph>
   34.36    DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.37 -                                       const char *fn);
   34.38 +                                       const char* fn) {
   34.39 +    DigraphWriter<Digraph> tmp(digraph, fn);
   34.40 +    return tmp;
   34.41 +  }
   34.42  
   34.43    /// \ingroup lemon_io
   34.44    ///
   34.45 @@ -913,52 +934,40 @@
   34.46      /// @}
   34.47    };
   34.48  
   34.49 -  /// \brief Return a \ref DigraphWriter class
   34.50 +  template <typename Graph>
   34.51 +  class GraphWriter;
   34.52 +
   34.53 +  /// \brief Return a \ref GraphWriter class
   34.54    ///
   34.55 -  /// This function just returns a \ref DigraphWriter class.
   34.56 -  /// \relates DigraphWriter
   34.57 -  template <typename Digraph>
   34.58 -  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.59 -                                       std::ostream& os = std::cout) {
   34.60 -    DigraphWriter<Digraph> tmp(digraph, os);
   34.61 +  /// This function just returns a \ref GraphWriter class.
   34.62 +  /// \relates GraphWriter
   34.63 +  template <typename Graph>
   34.64 +  GraphWriter<Graph> graphWriter(const Graph& graph,
   34.65 +                                 std::ostream& os = std::cout) {
   34.66 +    GraphWriter<Graph> tmp(graph, os);
   34.67      return tmp;
   34.68    }
   34.69  
   34.70 -  /// \brief Return a \ref DigraphWriter class
   34.71 +  /// \brief Return a \ref GraphWriter class
   34.72    ///
   34.73 -  /// This function just returns a \ref DigraphWriter class.
   34.74 -  /// \relates DigraphWriter
   34.75 -  template <typename Digraph>
   34.76 -  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.77 -                                       const std::string& fn) {
   34.78 -    DigraphWriter<Digraph> tmp(digraph, fn);
   34.79 +  /// This function just returns a \ref GraphWriter class.
   34.80 +  /// \relates GraphWriter
   34.81 +  template <typename Graph>
   34.82 +  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn) {
   34.83 +    GraphWriter<Graph> tmp(graph, fn);
   34.84      return tmp;
   34.85    }
   34.86  
   34.87 -  /// \brief Return a \ref DigraphWriter class
   34.88 +  /// \brief Return a \ref GraphWriter class
   34.89    ///
   34.90 -  /// This function just returns a \ref DigraphWriter class.
   34.91 -  /// \relates DigraphWriter
   34.92 -  template <typename Digraph>
   34.93 -  DigraphWriter<Digraph> digraphWriter(const Digraph& digraph,
   34.94 -                                       const char* fn) {
   34.95 -    DigraphWriter<Digraph> tmp(digraph, fn);
   34.96 +  /// This function just returns a \ref GraphWriter class.
   34.97 +  /// \relates GraphWriter
   34.98 +  template <typename Graph>
   34.99 +  GraphWriter<Graph> graphWriter(const Graph& graph, const char* fn) {
  34.100 +    GraphWriter<Graph> tmp(graph, fn);
  34.101      return tmp;
  34.102    }
  34.103  
  34.104 -  template <typename Graph>
  34.105 -  class GraphWriter;
  34.106 -
  34.107 -  template <typename Graph>
  34.108 -  GraphWriter<Graph> graphWriter(const Graph& graph,
  34.109 -                                 std::ostream& os = std::cout);
  34.110 -
  34.111 -  template <typename Graph>
  34.112 -  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn);
  34.113 -
  34.114 -  template <typename Graph>
  34.115 -  GraphWriter<Graph> graphWriter(const Graph& graph, const char *fn);
  34.116 -
  34.117    /// \ingroup lemon_io
  34.118    ///
  34.119    /// \brief \ref lgf-format "LGF" writer for directed graphs
  34.120 @@ -1526,37 +1535,6 @@
  34.121      /// @}
  34.122    };
  34.123  
  34.124 -  /// \brief Return a \ref GraphWriter class
  34.125 -  ///
  34.126 -  /// This function just returns a \ref GraphWriter class.
  34.127 -  /// \relates GraphWriter
  34.128 -  template <typename Graph>
  34.129 -  GraphWriter<Graph> graphWriter(const Graph& graph,
  34.130 -                                 std::ostream& os = std::cout) {
  34.131 -    GraphWriter<Graph> tmp(graph, os);
  34.132 -    return tmp;
  34.133 -  }
  34.134 -
  34.135 -  /// \brief Return a \ref GraphWriter class
  34.136 -  ///
  34.137 -  /// This function just returns a \ref GraphWriter class.
  34.138 -  /// \relates GraphWriter
  34.139 -  template <typename Graph>
  34.140 -  GraphWriter<Graph> graphWriter(const Graph& graph, const std::string& fn) {
  34.141 -    GraphWriter<Graph> tmp(graph, fn);
  34.142 -    return tmp;
  34.143 -  }
  34.144 -
  34.145 -  /// \brief Return a \ref GraphWriter class
  34.146 -  ///
  34.147 -  /// This function just returns a \ref GraphWriter class.
  34.148 -  /// \relates GraphWriter
  34.149 -  template <typename Graph>
  34.150 -  GraphWriter<Graph> graphWriter(const Graph& graph, const char* fn) {
  34.151 -    GraphWriter<Graph> tmp(graph, fn);
  34.152 -    return tmp;
  34.153 -  }
  34.154 -
  34.155    class SectionWriter;
  34.156  
  34.157    SectionWriter sectionWriter(std::istream& is);
    35.1 --- a/lemon/list_graph.h	Thu Oct 09 13:52:01 2008 +0100
    35.2 +++ b/lemon/list_graph.h	Thu Oct 09 14:37:44 2008 +0100
    35.3 @@ -413,7 +413,7 @@
    35.4      /// Change the source of \c a to \c n
    35.5      ///
    35.6      ///\note The <tt>InArcIt</tt>s referencing the changed arc remain
    35.7 -    ///valid. However the <tt>ArcIt<tt>s and <tt>OutArcIt</tt>s are
    35.8 +    ///valid. However the <tt>ArcIt</tt>s and <tt>OutArcIt</tt>s are
    35.9      ///invalidated.
   35.10      ///
   35.11      ///\warning This functionality cannot be used together with the Snapshot
    36.1 --- a/lemon/maps.h	Thu Oct 09 13:52:01 2008 +0100
    36.2 +++ b/lemon/maps.h	Thu Oct 09 14:37:44 2008 +0100
    36.3 @@ -43,7 +43,7 @@
    36.4    template<typename K, typename V>
    36.5    class MapBase {
    36.6    public:
    36.7 -    /// \biref The key type of the map.
    36.8 +    /// \brief The key type of the map.
    36.9      typedef K Key;
   36.10      /// \brief The value type of the map.
   36.11      /// (The type of objects associated with the keys).
   36.12 @@ -73,9 +73,9 @@
   36.13      void set(const Key&, const Value&) {}
   36.14    };
   36.15  
   36.16 -  /// Returns a \ref NullMap class
   36.17 +  /// Returns a \c NullMap class
   36.18  
   36.19 -  /// This function just returns a \ref NullMap class.
   36.20 +  /// This function just returns a \c NullMap class.
   36.21    /// \relates NullMap
   36.22    template <typename K, typename V>
   36.23    NullMap<K, V> nullMap() {
   36.24 @@ -88,7 +88,7 @@
   36.25    /// This \ref concepts::ReadMap "readable map" assigns a specified
   36.26    /// value to each key.
   36.27    ///
   36.28 -  /// In other aspects it is equivalent to \ref NullMap.
   36.29 +  /// In other aspects it is equivalent to \c NullMap.
   36.30    /// So it conforms the \ref concepts::ReadWriteMap "ReadWriteMap"
   36.31    /// concept, but it absorbs the data written to it.
   36.32    ///
   36.33 @@ -133,9 +133,9 @@
   36.34      ConstMap(const ConstMap<K, V1> &, const Value &v) : _value(v) {}
   36.35    };
   36.36  
   36.37 -  /// Returns a \ref ConstMap class
   36.38 +  /// Returns a \c ConstMap class
   36.39  
   36.40 -  /// This function just returns a \ref ConstMap class.
   36.41 +  /// This function just returns a \c ConstMap class.
   36.42    /// \relates ConstMap
   36.43    template<typename K, typename V>
   36.44    inline ConstMap<K, V> constMap(const V &v) {
   36.45 @@ -156,7 +156,7 @@
   36.46    /// This \ref concepts::ReadMap "readable map" assigns a specified
   36.47    /// value to each key.
   36.48    ///
   36.49 -  /// In other aspects it is equivalent to \ref NullMap.
   36.50 +  /// In other aspects it is equivalent to \c NullMap.
   36.51    /// So it conforms the \ref concepts::ReadWriteMap "ReadWriteMap"
   36.52    /// concept, but it absorbs the data written to it.
   36.53    ///
   36.54 @@ -182,9 +182,9 @@
   36.55      void set(const Key&, const Value&) {}
   36.56    };
   36.57  
   36.58 -  /// Returns a \ref ConstMap class with inlined constant value
   36.59 +  /// Returns a \c ConstMap class with inlined constant value
   36.60  
   36.61 -  /// This function just returns a \ref ConstMap class with inlined
   36.62 +  /// This function just returns a \c ConstMap class with inlined
   36.63    /// constant value.
   36.64    /// \relates ConstMap
   36.65    template<typename K, typename V, V v>
   36.66 @@ -212,9 +212,9 @@
   36.67      }
   36.68    };
   36.69  
   36.70 -  /// Returns an \ref IdentityMap class
   36.71 +  /// Returns an \c IdentityMap class
   36.72  
   36.73 -  /// This function just returns an \ref IdentityMap class.
   36.74 +  /// This function just returns an \c IdentityMap class.
   36.75    /// \relates IdentityMap
   36.76    template<typename T>
   36.77    inline IdentityMap<T> identityMap() {
   36.78 @@ -228,7 +228,7 @@
   36.79    /// This map is essentially a wrapper for \c std::vector. It assigns
   36.80    /// values to integer keys from the range <tt>[0..size-1]</tt>.
   36.81    /// It can be used with some data structures, for example
   36.82 -  /// \ref UnionFind, \ref BinHeap, when the used items are small
   36.83 +  /// \c UnionFind, \c BinHeap, when the used items are small
   36.84    /// integers. This map conforms the \ref concepts::ReferenceMap
   36.85    /// "ReferenceMap" concept.
   36.86    ///
   36.87 @@ -268,7 +268,7 @@
   36.88      RangeMap(const std::vector<V1>& vector)
   36.89        : _vector(vector.begin(), vector.end()) {}
   36.90  
   36.91 -    /// Constructs the map from another \ref RangeMap.
   36.92 +    /// Constructs the map from another \c RangeMap.
   36.93      template <typename V1>
   36.94      RangeMap(const RangeMap<V1> &c)
   36.95        : _vector(c._vector.begin(), c._vector.end()) {}
   36.96 @@ -311,19 +311,19 @@
   36.97      }
   36.98    };
   36.99  
  36.100 -  /// Returns a \ref RangeMap class
  36.101 +  /// Returns a \c RangeMap class
  36.102  
  36.103 -  /// This function just returns a \ref RangeMap class.
  36.104 +  /// This function just returns a \c RangeMap class.
  36.105    /// \relates RangeMap
  36.106    template<typename V>
  36.107    inline RangeMap<V> rangeMap(int size = 0, const V &value = V()) {
  36.108      return RangeMap<V>(size, value);
  36.109    }
  36.110  
  36.111 -  /// \brief Returns a \ref RangeMap class created from an appropriate
  36.112 +  /// \brief Returns a \c RangeMap class created from an appropriate
  36.113    /// \c std::vector
  36.114  
  36.115 -  /// This function just returns a \ref RangeMap class created from an
  36.116 +  /// This function just returns a \c RangeMap class created from an
  36.117    /// appropriate \c std::vector.
  36.118    /// \relates RangeMap
  36.119    template<typename V>
  36.120 @@ -388,7 +388,7 @@
  36.121                const Value &value = Value())
  36.122        : _map(map.begin(), map.end()), _value(value) {}
  36.123  
  36.124 -    /// \brief Constructs the map from another \ref SparseMap.
  36.125 +    /// \brief Constructs the map from another \c SparseMap.
  36.126      template<typename V1, typename Comp1>
  36.127      SparseMap(const SparseMap<Key, V1, Comp1> &c)
  36.128        : _map(c._map.begin(), c._map.end()), _value(c._value) {}
  36.129 @@ -433,9 +433,9 @@
  36.130      }
  36.131    };
  36.132  
  36.133 -  /// Returns a \ref SparseMap class
  36.134 +  /// Returns a \c SparseMap class
  36.135  
  36.136 -  /// This function just returns a \ref SparseMap class with specified
  36.137 +  /// This function just returns a \c SparseMap class with specified
  36.138    /// default value.
  36.139    /// \relates SparseMap
  36.140    template<typename K, typename V, typename Compare>
  36.141 @@ -448,10 +448,10 @@
  36.142      return SparseMap<K, V, std::less<K> >(value);
  36.143    }
  36.144  
  36.145 -  /// \brief Returns a \ref SparseMap class created from an appropriate
  36.146 +  /// \brief Returns a \c SparseMap class created from an appropriate
  36.147    /// \c std::map
  36.148  
  36.149 -  /// This function just returns a \ref SparseMap class created from an
  36.150 +  /// This function just returns a \c SparseMap class created from an
  36.151    /// appropriate \c std::map.
  36.152    /// \relates SparseMap
  36.153    template<typename K, typename V, typename Compare>
  36.154 @@ -501,9 +501,9 @@
  36.155      operator[](const Key &k) const { return _m1[_m2[k]]; }
  36.156    };
  36.157  
  36.158 -  /// Returns a \ref ComposeMap class
  36.159 +  /// Returns a \c ComposeMap class
  36.160  
  36.161 -  /// This function just returns a \ref ComposeMap class.
  36.162 +  /// This function just returns a \c ComposeMap class.
  36.163    ///
  36.164    /// If \c m1 and \c m2 are maps and the \c Value type of \c m2 is
  36.165    /// convertible to the \c Key of \c m1, then <tt>composeMap(m1,m2)[x]</tt>
  36.166 @@ -556,9 +556,9 @@
  36.167      Value operator[](const Key &k) const { return _f(_m1[k],_m2[k]); }
  36.168    };
  36.169  
  36.170 -  /// Returns a \ref CombineMap class
  36.171 +  /// Returns a \c CombineMap class
  36.172  
  36.173 -  /// This function just returns a \ref CombineMap class.
  36.174 +  /// This function just returns a \c CombineMap class.
  36.175    ///
  36.176    /// For example, if \c m1 and \c m2 are both maps with \c double
  36.177    /// values, then
  36.178 @@ -625,9 +625,9 @@
  36.179      Value operator[](const Key &k) const { return _f(k); }
  36.180    };
  36.181  
  36.182 -  /// Returns a \ref FunctorToMap class
  36.183 +  /// Returns a \c FunctorToMap class
  36.184  
  36.185 -  /// This function just returns a \ref FunctorToMap class.
  36.186 +  /// This function just returns a \c FunctorToMap class.
  36.187    ///
  36.188    /// This function is specialized for adaptable binary function
  36.189    /// classes and C++ functions.
  36.190 @@ -684,9 +684,9 @@
  36.191      Value operator[](const Key &k) const { return _m[k]; }
  36.192    };
  36.193  
  36.194 -  /// Returns a \ref MapToFunctor class
  36.195 +  /// Returns a \c MapToFunctor class
  36.196  
  36.197 -  /// This function just returns a \ref MapToFunctor class.
  36.198 +  /// This function just returns a \c MapToFunctor class.
  36.199    /// \relates MapToFunctor
  36.200    template<typename M>
  36.201    inline MapToFunctor<M> mapToFunctor(const M &m) {
  36.202 @@ -723,9 +723,9 @@
  36.203      Value operator[](const Key &k) const { return _m[k]; }
  36.204    };
  36.205  
  36.206 -  /// Returns a \ref ConvertMap class
  36.207 +  /// Returns a \c ConvertMap class
  36.208  
  36.209 -  /// This function just returns a \ref ConvertMap class.
  36.210 +  /// This function just returns a \c ConvertMap class.
  36.211    /// \relates ConvertMap
  36.212    template<typename V, typename M>
  36.213    inline ConvertMap<M, V> convertMap(const M &map) {
  36.214 @@ -763,9 +763,9 @@
  36.215      void set(const Key &k, const Value &v) { _m1.set(k,v); _m2.set(k,v); }
  36.216    };
  36.217  
  36.218 -  /// Returns a \ref ForkMap class
  36.219 +  /// Returns a \c ForkMap class
  36.220  
  36.221 -  /// This function just returns a \ref ForkMap class.
  36.222 +  /// This function just returns a \c ForkMap class.
  36.223    /// \relates ForkMap
  36.224    template <typename M1, typename M2>
  36.225    inline ForkMap<M1,M2> forkMap(M1 &m1, M2 &m2) {
  36.226 @@ -807,9 +807,9 @@
  36.227      Value operator[](const Key &k) const { return _m1[k]+_m2[k]; }
  36.228    };
  36.229  
  36.230 -  /// Returns an \ref AddMap class
  36.231 +  /// Returns an \c AddMap class
  36.232  
  36.233 -  /// This function just returns an \ref AddMap class.
  36.234 +  /// This function just returns an \c AddMap class.
  36.235    ///
  36.236    /// For example, if \c m1 and \c m2 are both maps with \c double
  36.237    /// values, then <tt>addMap(m1,m2)[x]</tt> will be equal to
  36.238 @@ -855,9 +855,9 @@
  36.239      Value operator[](const Key &k) const { return _m1[k]-_m2[k]; }
  36.240    };
  36.241  
  36.242 -  /// Returns a \ref SubMap class
  36.243 +  /// Returns a \c SubMap class
  36.244  
  36.245 -  /// This function just returns a \ref SubMap class.
  36.246 +  /// This function just returns a \c SubMap class.
  36.247    ///
  36.248    /// For example, if \c m1 and \c m2 are both maps with \c double
  36.249    /// values, then <tt>subMap(m1,m2)[x]</tt> will be equal to
  36.250 @@ -904,9 +904,9 @@
  36.251      Value operator[](const Key &k) const { return _m1[k]*_m2[k]; }
  36.252    };
  36.253  
  36.254 -  /// Returns a \ref MulMap class
  36.255 +  /// Returns a \c MulMap class
  36.256  
  36.257 -  /// This function just returns a \ref MulMap class.
  36.258 +  /// This function just returns a \c MulMap class.
  36.259    ///
  36.260    /// For example, if \c m1 and \c m2 are both maps with \c double
  36.261    /// values, then <tt>mulMap(m1,m2)[x]</tt> will be equal to
  36.262 @@ -952,9 +952,9 @@
  36.263      Value operator[](const Key &k) const { return _m1[k]/_m2[k]; }
  36.264    };
  36.265  
  36.266 -  /// Returns a \ref DivMap class
  36.267 +  /// Returns a \c DivMap class
  36.268  
  36.269 -  /// This function just returns a \ref DivMap class.
  36.270 +  /// This function just returns a \c DivMap class.
  36.271    ///
  36.272    /// For example, if \c m1 and \c m2 are both maps with \c double
  36.273    /// values, then <tt>divMap(m1,m2)[x]</tt> will be equal to
  36.274 @@ -1038,9 +1038,9 @@
  36.275      void set(const Key &k, const Value &v) { _m.set(k, v-_v); }
  36.276    };
  36.277  
  36.278 -  /// Returns a \ref ShiftMap class
  36.279 +  /// Returns a \c ShiftMap class
  36.280  
  36.281 -  /// This function just returns a \ref ShiftMap class.
  36.282 +  /// This function just returns a \c ShiftMap class.
  36.283    ///
  36.284    /// For example, if \c m is a map with \c double values and \c v is
  36.285    /// \c double, then <tt>shiftMap(m,v)[x]</tt> will be equal to
  36.286 @@ -1052,9 +1052,9 @@
  36.287      return ShiftMap<M, C>(m,v);
  36.288    }
  36.289  
  36.290 -  /// Returns a \ref ShiftWriteMap class
  36.291 +  /// Returns a \c ShiftWriteMap class
  36.292  
  36.293 -  /// This function just returns a \ref ShiftWriteMap class.
  36.294 +  /// This function just returns a \c ShiftWriteMap class.
  36.295    ///
  36.296    /// For example, if \c m is a map with \c double values and \c v is
  36.297    /// \c double, then <tt>shiftWriteMap(m,v)[x]</tt> will be equal to
  36.298 @@ -1140,9 +1140,9 @@
  36.299      void set(const Key &k, const Value &v) { _m.set(k, v/_v); }
  36.300    };
  36.301  
  36.302 -  /// Returns a \ref ScaleMap class
  36.303 +  /// Returns a \c ScaleMap class
  36.304  
  36.305 -  /// This function just returns a \ref ScaleMap class.
  36.306 +  /// This function just returns a \c ScaleMap class.
  36.307    ///
  36.308    /// For example, if \c m is a map with \c double values and \c v is
  36.309    /// \c double, then <tt>scaleMap(m,v)[x]</tt> will be equal to
  36.310 @@ -1154,9 +1154,9 @@
  36.311      return ScaleMap<M, C>(m,v);
  36.312    }
  36.313  
  36.314 -  /// Returns a \ref ScaleWriteMap class
  36.315 +  /// Returns a \c ScaleWriteMap class
  36.316  
  36.317 -  /// This function just returns a \ref ScaleWriteMap class.
  36.318 +  /// This function just returns a \c ScaleWriteMap class.
  36.319    ///
  36.320    /// For example, if \c m is a map with \c double values and \c v is
  36.321    /// \c double, then <tt>scaleWriteMap(m,v)[x]</tt> will be equal to
  36.322 @@ -1240,9 +1240,9 @@
  36.323      void set(const Key &k, const Value &v) { _m.set(k, -v); }
  36.324    };
  36.325  
  36.326 -  /// Returns a \ref NegMap class
  36.327 +  /// Returns a \c NegMap class
  36.328  
  36.329 -  /// This function just returns a \ref NegMap class.
  36.330 +  /// This function just returns a \c NegMap class.
  36.331    ///
  36.332    /// For example, if \c m is a map with \c double values, then
  36.333    /// <tt>negMap(m)[x]</tt> will be equal to <tt>-m[x]</tt>.
  36.334 @@ -1253,9 +1253,9 @@
  36.335      return NegMap<M>(m);
  36.336    }
  36.337  
  36.338 -  /// Returns a \ref NegWriteMap class
  36.339 +  /// Returns a \c NegWriteMap class
  36.340  
  36.341 -  /// This function just returns a \ref NegWriteMap class.
  36.342 +  /// This function just returns a \c NegWriteMap class.
  36.343    ///
  36.344    /// For example, if \c m is a map with \c double values, then
  36.345    /// <tt>negWriteMap(m)[x]</tt> will be equal to <tt>-m[x]</tt>.
  36.346 @@ -1296,9 +1296,9 @@
  36.347  
  36.348    };
  36.349  
  36.350 -  /// Returns an \ref AbsMap class
  36.351 +  /// Returns an \c AbsMap class
  36.352  
  36.353 -  /// This function just returns an \ref AbsMap class.
  36.354 +  /// This function just returns an \c AbsMap class.
  36.355    ///
  36.356    /// For example, if \c m is a map with \c double values, then
  36.357    /// <tt>absMap(m)[x]</tt> will be equal to <tt>m[x]</tt> if
  36.358 @@ -1345,9 +1345,9 @@
  36.359      Value operator[](const Key&) const { return true; }
  36.360    };
  36.361  
  36.362 -  /// Returns a \ref TrueMap class
  36.363 +  /// Returns a \c TrueMap class
  36.364  
  36.365 -  /// This function just returns a \ref TrueMap class.
  36.366 +  /// This function just returns a \c TrueMap class.
  36.367    /// \relates TrueMap
  36.368    template<typename K>
  36.369    inline TrueMap<K> trueMap() {
  36.370 @@ -1382,9 +1382,9 @@
  36.371      Value operator[](const Key&) const { return false; }
  36.372    };
  36.373  
  36.374 -  /// Returns a \ref FalseMap class
  36.375 +  /// Returns a \c FalseMap class
  36.376  
  36.377 -  /// This function just returns a \ref FalseMap class.
  36.378 +  /// This function just returns a \c FalseMap class.
  36.379    /// \relates FalseMap
  36.380    template<typename K>
  36.381    inline FalseMap<K> falseMap() {
  36.382 @@ -1429,9 +1429,9 @@
  36.383      Value operator[](const Key &k) const { return _m1[k]&&_m2[k]; }
  36.384    };
  36.385  
  36.386 -  /// Returns an \ref AndMap class
  36.387 +  /// Returns an \c AndMap class
  36.388  
  36.389 -  /// This function just returns an \ref AndMap class.
  36.390 +  /// This function just returns an \c AndMap class.
  36.391    ///
  36.392    /// For example, if \c m1 and \c m2 are both maps with \c bool values,
  36.393    /// then <tt>andMap(m1,m2)[x]</tt> will be equal to
  36.394 @@ -1477,9 +1477,9 @@
  36.395      Value operator[](const Key &k) const { return _m1[k]||_m2[k]; }
  36.396    };
  36.397  
  36.398 -  /// Returns an \ref OrMap class
  36.399 +  /// Returns an \c OrMap class
  36.400  
  36.401 -  /// This function just returns an \ref OrMap class.
  36.402 +  /// This function just returns an \c OrMap class.
  36.403    ///
  36.404    /// For example, if \c m1 and \c m2 are both maps with \c bool values,
  36.405    /// then <tt>orMap(m1,m2)[x]</tt> will be equal to
  36.406 @@ -1544,9 +1544,9 @@
  36.407      void set(const Key &k, bool v) { _m.set(k, !v); }
  36.408    };
  36.409  
  36.410 -  /// Returns a \ref NotMap class
  36.411 +  /// Returns a \c NotMap class
  36.412  
  36.413 -  /// This function just returns a \ref NotMap class.
  36.414 +  /// This function just returns a \c NotMap class.
  36.415    ///
  36.416    /// For example, if \c m is a map with \c bool values, then
  36.417    /// <tt>notMap(m)[x]</tt> will be equal to <tt>!m[x]</tt>.
  36.418 @@ -1557,9 +1557,9 @@
  36.419      return NotMap<M>(m);
  36.420    }
  36.421  
  36.422 -  /// Returns a \ref NotWriteMap class
  36.423 +  /// Returns a \c NotWriteMap class
  36.424  
  36.425 -  /// This function just returns a \ref NotWriteMap class.
  36.426 +  /// This function just returns a \c NotWriteMap class.
  36.427    ///
  36.428    /// For example, if \c m is a map with \c bool values, then
  36.429    /// <tt>notWriteMap(m)[x]</tt> will be equal to <tt>!m[x]</tt>.
  36.430 @@ -1605,9 +1605,9 @@
  36.431      Value operator[](const Key &k) const { return _m1[k]==_m2[k]; }
  36.432    };
  36.433  
  36.434 -  /// Returns an \ref EqualMap class
  36.435 +  /// Returns an \c EqualMap class
  36.436  
  36.437 -  /// This function just returns an \ref EqualMap class.
  36.438 +  /// This function just returns an \c EqualMap class.
  36.439    ///
  36.440    /// For example, if \c m1 and \c m2 are maps with keys and values of
  36.441    /// the same type, then <tt>equalMap(m1,m2)[x]</tt> will be equal to
  36.442 @@ -1653,9 +1653,9 @@
  36.443      Value operator[](const Key &k) const { return _m1[k]<_m2[k]; }
  36.444    };
  36.445  
  36.446 -  /// Returns an \ref LessMap class
  36.447 +  /// Returns an \c LessMap class
  36.448  
  36.449 -  /// This function just returns an \ref LessMap class.
  36.450 +  /// This function just returns an \c LessMap class.
  36.451    ///
  36.452    /// For example, if \c m1 and \c m2 are maps with keys and values of
  36.453    /// the same type, then <tt>lessMap(m1,m2)[x]</tt> will be equal to
  36.454 @@ -1683,6 +1683,11 @@
  36.455  
  36.456    }
  36.457  
  36.458 +  /// @}
  36.459 +
  36.460 +  /// \addtogroup maps
  36.461 +  /// @{
  36.462 +
  36.463    /// \brief Writable bool map for logging each \c true assigned element
  36.464    ///
  36.465    /// A \ref concepts::WriteMap "writable" bool map for logging
  36.466 @@ -1745,9 +1750,9 @@
  36.467      Iterator _end;
  36.468    };
  36.469  
  36.470 -  /// Returns a \ref LoggerBoolMap class
  36.471 +  /// Returns a \c LoggerBoolMap class
  36.472  
  36.473 -  /// This function just returns a \ref LoggerBoolMap class.
  36.474 +  /// This function just returns a \c LoggerBoolMap class.
  36.475    ///
  36.476    /// The most important usage of it is storing certain nodes or arcs
  36.477    /// that were marked \c true by an algorithm.
  36.478 @@ -1767,7 +1772,7 @@
  36.479    ///
  36.480    /// \note LoggerBoolMap is just \ref concepts::WriteMap "writable", so
  36.481    /// it cannot be used when a readable map is needed, for example as
  36.482 -  /// \c ReachedMap for \ref Bfs, \ref Dfs and \ref Dijkstra algorithms.
  36.483 +  /// \c ReachedMap for \c Bfs, \c Dfs and \c Dijkstra algorithms.
  36.484    ///
  36.485    /// \relates LoggerBoolMap
  36.486    template<typename Iterator>
  36.487 @@ -1775,6 +1780,11 @@
  36.488      return LoggerBoolMap<Iterator>(it);
  36.489    }
  36.490  
  36.491 +  /// @}
  36.492 +
  36.493 +  /// \addtogroup graph_maps
  36.494 +  /// @{
  36.495 +
  36.496    /// Provides an immutable and unique id for each item in the graph.
  36.497  
  36.498    /// The IdMap class provides a unique and immutable id for each item of the
  36.499 @@ -1861,7 +1871,7 @@
  36.500      /// \brief Constructor
  36.501      ///
  36.502      /// Constructor
  36.503 -    /// \param _digraph The digraph that the map belongs to.
  36.504 +    /// \param digraph The digraph that the map belongs to.
  36.505      explicit SourceMap(const Digraph& digraph) : _digraph(digraph) {}
  36.506  
  36.507      /// \brief The subscript operator.
  36.508 @@ -1877,9 +1887,9 @@
  36.509      const Digraph& _digraph;
  36.510    };
  36.511  
  36.512 -  /// \brief Returns a \ref SourceMap class.
  36.513 +  /// \brief Returns a \c SourceMap class.
  36.514    ///
  36.515 -  /// This function just returns an \ref SourceMap class.
  36.516 +  /// This function just returns an \c SourceMap class.
  36.517    /// \relates SourceMap
  36.518    template <typename Digraph>
  36.519    inline SourceMap<Digraph> sourceMap(const Digraph& digraph) {
  36.520 @@ -1900,7 +1910,7 @@
  36.521      /// \brief Constructor
  36.522      ///
  36.523      /// Constructor
  36.524 -    /// \param _digraph The digraph that the map belongs to.
  36.525 +    /// \param digraph The digraph that the map belongs to.
  36.526      explicit TargetMap(const Digraph& digraph) : _digraph(digraph) {}
  36.527  
  36.528      /// \brief The subscript operator.
  36.529 @@ -1916,9 +1926,9 @@
  36.530      const Digraph& _digraph;
  36.531    };
  36.532  
  36.533 -  /// \brief Returns a \ref TargetMap class.
  36.534 +  /// \brief Returns a \c TargetMap class.
  36.535    ///
  36.536 -  /// This function just returns a \ref TargetMap class.
  36.537 +  /// This function just returns a \c TargetMap class.
  36.538    /// \relates TargetMap
  36.539    template <typename Digraph>
  36.540    inline TargetMap<Digraph> targetMap(const Digraph& digraph) {
  36.541 @@ -1939,7 +1949,7 @@
  36.542      /// \brief Constructor
  36.543      ///
  36.544      /// Constructor
  36.545 -    /// \param _graph The graph that the map belongs to.
  36.546 +    /// \param graph The graph that the map belongs to.
  36.547      explicit ForwardMap(const Graph& graph) : _graph(graph) {}
  36.548  
  36.549      /// \brief The subscript operator.
  36.550 @@ -1955,9 +1965,9 @@
  36.551      const Graph& _graph;
  36.552    };
  36.553  
  36.554 -  /// \brief Returns a \ref ForwardMap class.
  36.555 +  /// \brief Returns a \c ForwardMap class.
  36.556    ///
  36.557 -  /// This function just returns an \ref ForwardMap class.
  36.558 +  /// This function just returns an \c ForwardMap class.
  36.559    /// \relates ForwardMap
  36.560    template <typename Graph>
  36.561    inline ForwardMap<Graph> forwardMap(const Graph& graph) {
  36.562 @@ -1978,7 +1988,7 @@
  36.563      /// \brief Constructor
  36.564      ///
  36.565      /// Constructor
  36.566 -    /// \param _graph The graph that the map belongs to.
  36.567 +    /// \param graph The graph that the map belongs to.
  36.568      explicit BackwardMap(const Graph& graph) : _graph(graph) {}
  36.569  
  36.570      /// \brief The subscript operator.
  36.571 @@ -1994,9 +2004,9 @@
  36.572      const Graph& _graph;
  36.573    };
  36.574  
  36.575 -  /// \brief Returns a \ref BackwardMap class
  36.576 +  /// \brief Returns a \c BackwardMap class
  36.577  
  36.578 -  /// This function just returns a \ref BackwardMap class.
  36.579 +  /// This function just returns a \c BackwardMap class.
  36.580    /// \relates BackwardMap
  36.581    template <typename Graph>
  36.582    inline BackwardMap<Graph> backwardMap(const Graph& graph) {
    37.1 --- a/lemon/path.h	Thu Oct 09 13:52:01 2008 +0100
    37.2 +++ b/lemon/path.h	Thu Oct 09 14:37:44 2008 +0100
    37.3 @@ -849,7 +849,7 @@
    37.4      /// \brief Return true when the path is empty.
    37.5      int empty() const { return len == 0; }
    37.6  
    37.7 -    /// \break Erase all arcs in the digraph.
    37.8 +    /// \brief Erase all arcs in the digraph.
    37.9      void clear() {
   37.10        len = 0;
   37.11        if (arcs) delete[] arcs;
    38.1 --- a/lemon/smart_graph.h	Thu Oct 09 13:52:01 2008 +0100
    38.2 +++ b/lemon/smart_graph.h	Thu Oct 09 14:37:44 2008 +0100
    38.3 @@ -365,7 +365,7 @@
    38.4        ///Constructor that immediately makes a snapshot
    38.5  
    38.6        ///This constructor immediately makes a snapshot of the digraph.
    38.7 -      ///\param _g The digraph we make a snapshot of.
    38.8 +      ///\param graph The digraph we make a snapshot of.
    38.9        Snapshot(SmartDigraph &graph) : _graph(&graph) {
   38.10          node_num=_graph->nodes.size();
   38.11          arc_num=_graph->arcs.size();
   38.12 @@ -377,7 +377,7 @@
   38.13        ///
   38.14        ///This function can be called more than once. In case of a repeated
   38.15        ///call, the previous snapshot gets lost.
   38.16 -      ///\param _g The digraph we make the snapshot of.
   38.17 +      ///\param graph The digraph we make the snapshot of.
   38.18        void save(SmartDigraph &graph)
   38.19        {
   38.20          _graph=&graph;
   38.21 @@ -775,7 +775,7 @@
   38.22        ///Constructor that immediately makes a snapshot
   38.23  
   38.24        ///This constructor immediately makes a snapshot of the digraph.
   38.25 -      ///\param g The digraph we make a snapshot of.
   38.26 +      ///\param graph The digraph we make a snapshot of.
   38.27        Snapshot(SmartGraph &graph) {
   38.28          graph.saveSnapshot(*this);
   38.29        }
   38.30 @@ -786,7 +786,7 @@
   38.31        ///
   38.32        ///This function can be called more than once. In case of a repeated
   38.33        ///call, the previous snapshot gets lost.
   38.34 -      ///\param g The digraph we make the snapshot of.
   38.35 +      ///\param graph The digraph we make the snapshot of.
   38.36        void save(SmartGraph &graph)
   38.37        {
   38.38          graph.saveSnapshot(*this);
    39.1 --- a/lemon/time_measure.h	Thu Oct 09 13:52:01 2008 +0100
    39.2 +++ b/lemon/time_measure.h	Thu Oct 09 14:37:44 2008 +0100
    39.3 @@ -311,12 +311,11 @@
    39.4      ///\name Control the state of the timer
    39.5      ///Basically a Timer can be either running or stopped,
    39.6      ///but it provides a bit finer control on the execution.
    39.7 -    ///The \ref Timer also counts the number of \ref start()
    39.8 -    ///executions, and is stops only after the same amount (or more)
    39.9 -    ///\ref stop() "stop()"s. This can be useful e.g. to compute
   39.10 -    ///the running time
   39.11 +    ///The \ref lemon::Timer "Timer" also counts the number of
   39.12 +    ///\ref lemon::Timer::start() "start()" executions, and it stops
   39.13 +    ///only after the same amount (or more) \ref lemon::Timer::stop()
   39.14 +    ///"stop()"s. This can be useful e.g. to compute the running time
   39.15      ///of recursive functions.
   39.16 -    ///
   39.17  
   39.18      ///@{
   39.19  
   39.20 @@ -472,7 +471,7 @@
   39.21      ///@}
   39.22    };
   39.23  
   39.24 -  ///Same as \ref Timer but prints a report on destruction.
   39.25 +  ///Same as Timer but prints a report on destruction.
   39.26  
   39.27    ///Same as \ref Timer but prints a report on destruction.
   39.28    ///This example shows its usage.
   39.29 @@ -491,22 +490,22 @@
   39.30      std::string _title;
   39.31      std::ostream &_os;
   39.32    public:
   39.33 -    ///\e
   39.34 +    ///Constructor
   39.35  
   39.36 +    ///Constructor.
   39.37      ///\param title This text will be printed before the ellapsed time.
   39.38      ///\param os The stream to print the report to.
   39.39      ///\param run Sets whether the timer should start immediately.
   39.40 -
   39.41      TimeReport(std::string title,std::ostream &os=std::cerr,bool run=true)
   39.42        : Timer(run), _title(title), _os(os){}
   39.43 -    ///\e Prints the ellapsed time on destruction.
   39.44 +    ///Destructor that prints the ellapsed time
   39.45      ~TimeReport()
   39.46      {
   39.47        _os << _title << *this << std::endl;
   39.48      }
   39.49    };
   39.50  
   39.51 -  ///'Do nothing' version of \ref TimeReport
   39.52 +  ///'Do nothing' version of TimeReport
   39.53  
   39.54    ///\sa TimeReport
   39.55    ///
    40.1 --- a/tools/Makefile.am	Thu Oct 09 13:52:01 2008 +0100
    40.2 +++ b/tools/Makefile.am	Thu Oct 09 14:37:44 2008 +0100
    40.3 @@ -1,5 +1,6 @@
    40.4  if WANT_TOOLS
    40.5  
    40.6  bin_PROGRAMS +=
    40.7 +dist_bin_SCRIPTS += tools/lemon-0.x-to-1.x.sh
    40.8  
    40.9  endif WANT_TOOLS
    41.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    41.2 +++ b/tools/lemon-0.x-to-1.x.sh	Thu Oct 09 14:37:44 2008 +0100
    41.3 @@ -0,0 +1,127 @@
    41.4 +#!/bin/bash
    41.5 +
    41.6 +set -e
    41.7 +
    41.8 +if [ $# -eq 0 -o x$1 = "x-h" -o x$1 = "x-help" -o x$1 = "x--help" ]; then
    41.9 +	echo "Usage:"
   41.10 +	echo "  $0 source-file"
   41.11 +	exit
   41.12 +fi
   41.13 +
   41.14 +TMP=`mktemp`
   41.15 +
   41.16 +sed	-e "s/undirected graph/_gr_aph_label_/g"\
   41.17 +	-e "s/undirected edge/_ed_ge_label_/g"\
   41.18 +	-e "s/graph_/_gr_aph_label__/g"\
   41.19 +	-e "s/_graph/__gr_aph_label_/g"\
   41.20 +	-e "s/UGraph/_Gr_aph_label_/g"\
   41.21 +	-e "s/uGraph/_gr_aph_label_/g"\
   41.22 +	-e "s/ugraph/_gr_aph_label_/g"\
   41.23 +	-e "s/Graph/_Digr_aph_label_/g"\
   41.24 +	-e "s/graph/_digr_aph_label_/g"\
   41.25 +	-e "s/UEdge/_Ed_ge_label_/g"\
   41.26 +	-e "s/uEdge/_ed_ge_label_/g"\
   41.27 +	-e "s/uedge/_ed_ge_label_/g"\
   41.28 +	-e "s/IncEdgeIt/_In_cEd_geIt_label_/g"\
   41.29 +	-e "s/Edge/_Ar_c_label_/g"\
   41.30 +	-e "s/edge/_ar_c_label_/g"\
   41.31 +	-e "s/ANode/_Re_d_label_/g"\
   41.32 +	-e "s/BNode/_Blu_e_label_/g"\
   41.33 +	-e "s/A-Node/_Re_d_label_/g"\
   41.34 +	-e "s/B-Node/_Blu_e_label_/g"\
   41.35 +	-e "s/anode/_re_d_label_/g"\
   41.36 +	-e "s/bnode/_blu_e_label_/g"\
   41.37 +	-e "s/aNode/_re_d_label_/g"\
   41.38 +	-e "s/bNode/_blu_e_label_/g"\
   41.39 +	-e "s/_Digr_aph_label_/Digraph/g"\
   41.40 +	-e "s/_digr_aph_label_/digraph/g"\
   41.41 +	-e "s/_Gr_aph_label_/Graph/g"\
   41.42 +	-e "s/_gr_aph_label_/graph/g"\
   41.43 +	-e "s/_Ar_c_label_/Arc/g"\
   41.44 +	-e "s/_ar_c_label_/arc/g"\
   41.45 +	-e "s/_Ed_ge_label_/Edge/g"\
   41.46 +	-e "s/_ed_ge_label_/edge/g"\
   41.47 +	-e "s/_In_cEd_geIt_label_/IncEdgeIt/g"\
   41.48 +	-e "s/_Re_d_label_/Red/g"\
   41.49 +	-e "s/_Blu_e_label_/Blue/g"\
   41.50 +	-e "s/_re_d_label_/red/g"\
   41.51 +	-e "s/_blu_e_label_/blue/g"\
   41.52 +	-e "s/\(\W\)DefPredMap\(\W\)/\1SetPredMap\2/g"\
   41.53 +	-e "s/\(\W\)DefPredMap$/\1SetPredMap/g"\
   41.54 +	-e "s/^DefPredMap\(\W\)/SetPredMap\1/g"\
   41.55 +	-e "s/^DefPredMap$/SetPredMap/g"\
   41.56 +	-e "s/\(\W\)DefDistMap\(\W\)/\1SetDistMap\2/g"\
   41.57 +	-e "s/\(\W\)DefDistMap$/\1SetDistMap/g"\
   41.58 +	-e "s/^DefDistMap\(\W\)/SetDistMap\1/g"\
   41.59 +	-e "s/^DefDistMap$/SetDistMap/g"\
   41.60 +	-e "s/\(\W\)DefReachedMap\(\W\)/\1SetReachedMap\2/g"\
   41.61 +	-e "s/\(\W\)DefReachedMap$/\1SetReachedMap/g"\
   41.62 +	-e "s/^DefReachedMap\(\W\)/SetReachedMap\1/g"\
   41.63 +	-e "s/^DefReachedMap$/SetReachedMap/g"\
   41.64 +	-e "s/\(\W\)DefProcessedMap\(\W\)/\1SetProcessedMap\2/g"\
   41.65 +	-e "s/\(\W\)DefProcessedMap$/\1SetProcessedMap/g"\
   41.66 +	-e "s/^DefProcessedMap\(\W\)/SetProcessedMap\1/g"\
   41.67 +	-e "s/^DefProcessedMap$/SetProcessedMap/g"\
   41.68 +	-e "s/\(\W\)DefHeap\(\W\)/\1SetHeap\2/g"\
   41.69 +	-e "s/\(\W\)DefHeap$/\1SetHeap/g"\
   41.70 +	-e "s/^DefHeap\(\W\)/SetHeap\1/g"\
   41.71 +	-e "s/^DefHeap$/SetHeap/g"\
   41.72 +	-e "s/\(\W\)DefStandardHeap\(\W\)/\1SetStandradHeap\2/g"\
   41.73 +	-e "s/\(\W\)DefStandardHeap$/\1SetStandradHeap/g"\
   41.74 +	-e "s/^DefStandardHeap\(\W\)/SetStandradHeap\1/g"\
   41.75 +	-e "s/^DefStandardHeap$/SetStandradHeap/g"\
   41.76 +	-e "s/\(\W\)DefOperationTraits\(\W\)/\1SetOperationTraits\2/g"\
   41.77 +	-e "s/\(\W\)DefOperationTraits$/\1SetOperationTraits/g"\
   41.78 +	-e "s/^DefOperationTraits\(\W\)/SetOperationTraits\1/g"\
   41.79 +	-e "s/^DefOperationTraits$/SetOperationTraits/g"\
   41.80 +	-e "s/\(\W\)DefProcessedMapToBeDefaultMap\(\W\)/\1SetStandardProcessedMap\2/g"\
   41.81 +	-e "s/\(\W\)DefProcessedMapToBeDefaultMap$/\1SetStandardProcessedMap/g"\
   41.82 +	-e "s/^DefProcessedMapToBeDefaultMap\(\W\)/SetStandardProcessedMap\1/g"\
   41.83 +	-e "s/^DefProcessedMapToBeDefaultMap$/SetStandardProcessedMap/g"\
   41.84 +	-e "s/\(\W\)IntegerMap\(\W\)/\1RangeMap\2/g"\
   41.85 +	-e "s/\(\W\)IntegerMap$/\1RangeMap/g"\
   41.86 +	-e "s/^IntegerMap\(\W\)/RangeMap\1/g"\
   41.87 +	-e "s/^IntegerMap$/RangeMap/g"\
   41.88 +	-e "s/\(\W\)integerMap\(\W\)/\1rangeMap\2/g"\
   41.89 +	-e "s/\(\W\)integerMap$/\1rangeMap/g"\
   41.90 +	-e "s/^integerMap\(\W\)/rangeMap\1/g"\
   41.91 +	-e "s/^integerMap$/rangeMap/g"\
   41.92 +	-e "s/\(\W\)copyGraph\(\W\)/\1graphCopy\2/g"\
   41.93 +	-e "s/\(\W\)copyGraph$/\1graphCopy/g"\
   41.94 +	-e "s/^copyGraph\(\W\)/graphCopy\1/g"\
   41.95 +	-e "s/^copyGraph$/graphCopy/g"\
   41.96 +	-e "s/\(\W\)copyDigraph\(\W\)/\1digraphCopy\2/g"\
   41.97 +	-e "s/\(\W\)copyDigraph$/\1digraphCopy/g"\
   41.98 +	-e "s/^copyDigraph\(\W\)/digraphCopy\1/g"\
   41.99 +	-e "s/^copyDigraph$/digraphCopy/g"\
  41.100 +	-e "s/\(\W\)\([sS]\)tdMap\(\W\)/\1\2parseMap\3/g"\
  41.101 +	-e "s/\(\W\)\([sS]\)tdMap$/\1\2parseMap/g"\
  41.102 +	-e "s/^\([sS]\)tdMap\(\W\)/\1parseMap\2/g"\
  41.103 +	-e "s/^\([sS]\)tdMap$/\1parseMap/g"\
  41.104 +	-e "s/\(\W\)\([Ff]\)unctorMap\(\W\)/\1\2unctorToMap\3/g"\
  41.105 +	-e "s/\(\W\)\([Ff]\)unctorMap$/\1\2unctorToMap/g"\
  41.106 +	-e "s/^\([Ff]\)unctorMap\(\W\)/\1unctorToMap\2/g"\
  41.107 +	-e "s/^\([Ff]\)unctorMap$/\1unctorToMap/g"\
  41.108 +	-e "s/\(\W\)\([Mm]\)apFunctor\(\W\)/\1\2apToFunctor\3/g"\
  41.109 +	-e "s/\(\W\)\([Mm]\)apFunctor$/\1\2apToFunctor/g"\
  41.110 +	-e "s/^\([Mm]\)apFunctor\(\W\)/\1apToFunctor\2/g"\
  41.111 +	-e "s/^\([Mm]\)apFunctor$/\1apToFunctor/g"\
  41.112 +	-e "s/\(\W\)\([Ff]\)orkWriteMap\(\W\)/\1\2orkMap\3/g"\
  41.113 +	-e "s/\(\W\)\([Ff]\)orkWriteMap$/\1\2orkMap/g"\
  41.114 +	-e "s/^\([Ff]\)orkWriteMap\(\W\)/\1orkMap\2/g"\
  41.115 +	-e "s/^\([Ff]\)orkWriteMap$/\1orkMap/g"\
  41.116 +	-e "s/\(\W\)StoreBoolMap\(\W\)/\1LoggerBoolMap\2/g"\
  41.117 +	-e "s/\(\W\)StoreBoolMap$/\1LoggerBoolMap/g"\
  41.118 +	-e "s/^StoreBoolMap\(\W\)/LoggerBoolMap\1/g"\
  41.119 +	-e "s/^StoreBoolMap$/LoggerBoolMap/g"\
  41.120 +	-e "s/\(\W\)storeBoolMap\(\W\)/\1loggerBoolMap\2/g"\
  41.121 +	-e "s/\(\W\)storeBoolMap$/\1loggerBoolMap/g"\
  41.122 +	-e "s/^storeBoolMap\(\W\)/loggerBoolMap\1/g"\
  41.123 +	-e "s/^storeBoolMap$/loggerBoolMap/g"\
  41.124 +	-e "s/\(\W\)BoundingBox\(\W\)/\1Box\2/g"\
  41.125 +	-e "s/\(\W\)BoundingBox$/\1Box/g"\
  41.126 +	-e "s/^BoundingBox\(\W\)/Box\1/g"\
  41.127 +	-e "s/^BoundingBox$/Box/g"\
  41.128 +<$1 > $TMP
  41.129 +
  41.130 +mv $TMP $1
  41.131 \ No newline at end of file