Index: demo/graph_to_eps_demo.cc
===================================================================
--- demo/graph_to_eps_demo.cc (revision 220)
+++ demo/graph_to_eps_demo.cc (revision 313)
@@ -27,5 +27,5 @@
/// how to handle parallel egdes, how to change the properties (like
/// color, shape, size, title etc.) of nodes and arcs individually
-/// using appropriate \ref maps-page "graph maps".
+/// using appropriate graph maps.
///
/// \include graph_to_eps_demo.cc
Index: doc/groups.dox
===================================================================
--- doc/groups.dox (revision 236)
+++ doc/groups.dox (revision 314)
@@ -55,5 +55,7 @@
You are free to use the graph structure that fit your requirements
the best, most graph algorithms and auxiliary data structures can be used
-with any graph structures.
+with any graph structure.
+
+See also: \ref graph_concepts "Graph Structure Concepts".
*/
@@ -75,6 +77,8 @@
This group describes the map structures implemented in LEMON.
-LEMON provides several special purpose maps that e.g. combine
+LEMON provides several special purpose maps and map adaptors that e.g. combine
new maps from existing ones.
+
+See also: \ref map_concepts "Map Concepts".
*/
@@ -87,5 +91,4 @@
values to the nodes and arcs of graphs.
*/
-
/**
@@ -105,5 +108,5 @@
algorithms. If a function type algorithm is called then the function
type map adaptors can be used comfortable. For example let's see the
-usage of map adaptors with the \c digraphToEps() function.
+usage of map adaptors with the \c graphToEps() function.
\code
Color nodeColor(int deg) {
@@ -119,5 +122,5 @@
Digraph::NodeMap degree_map(graph);
- digraphToEps(graph, "graph.eps")
+ graphToEps(graph, "graph.eps")
.coords(coords).scaleToA4().undirected()
.nodeColors(composeMap(functorToMap(nodeColor), degree_map))
@@ -125,5 +128,5 @@
\endcode
The \c functorToMap() function makes an \c int to \c Color map from the
-\e nodeColor() function. The \c composeMap() compose the \e degree_map
+\c nodeColor() function. The \c composeMap() compose the \c degree_map
and the previously created map. The composed map is a proper function to
get the color of each node.
@@ -174,5 +177,4 @@
\sa lemon::concepts::Path
-
*/
@@ -186,5 +188,4 @@
*/
-
/**
@defgroup algs Algorithms
@@ -202,9 +203,9 @@
This group describes the common graph search algorithms like
-Breadth-first search (Bfs) and Depth-first search (Dfs).
-*/
-
-/**
-@defgroup shortest_path Shortest Path algorithms
+Breadth-First Search (BFS) and Depth-First Search (DFS).
+*/
+
+/**
+@defgroup shortest_path Shortest Path Algorithms
@ingroup algs
\brief Algorithms for finding shortest paths.
@@ -214,5 +215,5 @@
/**
-@defgroup max_flow Maximum Flow algorithms
+@defgroup max_flow Maximum Flow Algorithms
@ingroup algs
\brief Algorithms for finding maximum flows.
@@ -242,9 +243,8 @@
provides functions to query the minimum cut, which is the dual linear
programming problem of the maximum flow.
-
-*/
-
-/**
-@defgroup min_cost_flow Minimum Cost Flow algorithms
+*/
+
+/**
+@defgroup min_cost_flow Minimum Cost Flow Algorithms
@ingroup algs
@@ -256,5 +256,5 @@
/**
-@defgroup min_cut Minimum Cut algorithms
+@defgroup min_cut Minimum Cut Algorithms
@ingroup algs
@@ -283,9 +283,8 @@
If you want to find minimum cut just between two distinict nodes,
please see the \ref max_flow "Maximum Flow page".
-
-*/
-
-/**
-@defgroup graph_prop Connectivity and other graph properties
+*/
+
+/**
+@defgroup graph_prop Connectivity and Other Graph Properties
@ingroup algs
\brief Algorithms for discovering the graph properties
@@ -299,5 +298,5 @@
/**
-@defgroup planar Planarity embedding and drawing
+@defgroup planar Planarity Embedding and Drawing
@ingroup algs
\brief Algorithms for planarity checking, embedding and drawing
@@ -311,5 +310,5 @@
/**
-@defgroup matching Matching algorithms
+@defgroup matching Matching Algorithms
@ingroup algs
\brief Algorithms for finding matchings in graphs and bipartite graphs.
@@ -349,9 +348,8 @@
\image html bipartite_matching.png
\image latex bipartite_matching.eps "Bipartite Matching" width=\textwidth
-
-*/
-
-/**
-@defgroup spantree Minimum Spanning Tree algorithms
+*/
+
+/**
+@defgroup spantree Minimum Spanning Tree Algorithms
@ingroup algs
\brief Algorithms for finding a minimum cost spanning tree in a graph.
@@ -361,7 +359,6 @@
*/
-
-/**
-@defgroup auxalg Auxiliary algorithms
+/**
+@defgroup auxalg Auxiliary Algorithms
@ingroup algs
\brief Auxiliary algorithms implemented in LEMON.
@@ -372,5 +369,6 @@
/**
-@defgroup approx Approximation algorithms
+@defgroup approx Approximation Algorithms
+@ingroup algs
\brief Approximation algorithms.
@@ -386,9 +384,8 @@
This group describes some general optimization frameworks
implemented in LEMON.
-
-*/
-
-/**
-@defgroup lp_group Lp and Mip solvers
+*/
+
+/**
+@defgroup lp_group Lp and Mip Solvers
@ingroup gen_opt_group
\brief Lp and Mip solver interfaces for LEMON.
@@ -397,9 +394,8 @@
various LP solvers could be used in the same manner with this
interface.
-
-*/
-
-/**
-@defgroup lp_utils Tools for Lp and Mip solvers
+*/
+
+/**
+@defgroup lp_utils Tools for Lp and Mip Solvers
@ingroup lp_group
\brief Helper tools to the Lp and Mip solvers.
@@ -442,5 +438,5 @@
/**
-@defgroup timecount Time measuring and Counting
+@defgroup timecount Time Measuring and Counting
@ingroup misc
\brief Simple tools for measuring the performance of algorithms.
@@ -448,13 +444,4 @@
This group describes simple tools for measuring the performance
of algorithms.
-*/
-
-/**
-@defgroup graphbits Tools for Graph Implementation
-@ingroup utils
-\brief Tools to make it easier to create graphs.
-
-This group describes the tools that makes it easier to create graphs and
-the maps that dynamically update with the graph changes.
*/
@@ -472,6 +459,7 @@
This group describes the tools for importing and exporting graphs
-and graph related data. Now it supports the LEMON format, the
-\c DIMACS format and the encapsulated postscript (EPS) format.
+and graph related data. Now it supports the \ref lgf-format
+"LEMON Graph Format", the \c DIMACS format and the encapsulated
+postscript (EPS) format.
*/
@@ -479,5 +467,5 @@
@defgroup lemon_io LEMON Input-Output
@ingroup io_group
-\brief Reading and writing \ref lgf-format "LEMON Graph Format".
+\brief Reading and writing LEMON Graph Format.
This group describes methods for reading and writing
@@ -486,5 +474,5 @@
/**
-@defgroup eps_io Postscript exporting
+@defgroup eps_io Postscript Exporting
@ingroup io_group
\brief General \c EPS drawer and graph exporter
@@ -493,5 +481,4 @@
graph exporting tools.
*/
-
/**
@@ -522,7 +509,5 @@
- Finally, They can serve as a skeleton of a new implementation of a concept.
-
-*/
-
+*/
/**
@@ -535,8 +520,10 @@
*/
-/* --- Unused group
-@defgroup experimental Experimental Structures and Algorithms
-This group describes some Experimental structures and algorithms.
-The stuff here is subject to change.
+/**
+@defgroup map_concepts Map Concepts
+@ingroup concept
+\brief Skeleton and concept checking classes for maps
+
+This group describes the skeletons and concept checking classes of maps.
*/
Index: doc/lgf.dox
===================================================================
--- doc/lgf.dox (revision 236)
+++ doc/lgf.dox (revision 313)
@@ -79,5 +79,5 @@
\endcode
-The \c \@edges is just a synonym of \c \@arcs. The @arcs section can
+The \c \@edges is just a synonym of \c \@arcs. The \@arcs section can
also store the edge set of an undirected graph. In such case there is
a conventional method for store arc maps in the file, if two columns
Index: doc/mainpage.dox
===================================================================
--- doc/mainpage.dox (revision 307)
+++ doc/mainpage.dox (revision 314)
@@ -51,5 +51,5 @@
If you
want to see how LEMON works, see
-some \ref demoprograms "demo programs"!
+some \ref demoprograms "demo programs".
If you know what you are looking for then try to find it under the
@@ -57,4 +57,5 @@
section.
-If you are a user of the old (0.x) series of LEMON, please check out the \ref migration "Migration Guide" for the backward incompatibilities.
+If you are a user of the old (0.x) series of LEMON, please check out the
+\ref migration "Migration Guide" for the backward incompatibilities.
*/
Index: doc/migration.dox
===================================================================
--- doc/migration.dox (revision 308)
+++ doc/migration.dox (revision 314)
@@ -58,5 +58,5 @@
in strings, comments etc. as well as in all identifiers.
-\section migration-lgf LGF tools
+\section migration-lgf LGF tools
- The \ref lgf-format "LGF file format" has changed,
\@nodeset has changed to \@nodes,
Index: lemon/bits/alteration_notifier.h
===================================================================
--- lemon/bits/alteration_notifier.h (revision 236)
+++ lemon/bits/alteration_notifier.h (revision 314)
@@ -25,74 +25,73 @@
#include
-///\ingroup graphbits
-///\file
-///\brief Observer notifier for graph alteration observers.
+//\ingroup graphbits
+//\file
+//\brief Observer notifier for graph alteration observers.
namespace lemon {
- /// \ingroup graphbits
- ///
- /// \brief Notifier class to notify observes about alterations in
- /// a container.
- ///
- /// The simple graph's can be refered as two containers, one node container
- /// and one edge container. But they are not standard containers they
- /// does not store values directly they are just key continars for more
- /// value containers which are the node and edge maps.
- ///
- /// The graph's node and edge sets can be changed as we add or erase
- /// nodes and edges in the graph. LEMON would like to handle easily
- /// that the node and edge maps should contain values for all nodes or
- /// edges. If we want to check on every indicing if the map contains
- /// the current indicing key that cause a drawback in the performance
- /// in the library. We use another solution we notify all maps about
- /// an alteration in the graph, which cause only drawback on the
- /// alteration of the graph.
- ///
- /// This class provides an interface to the container. The \e first() and \e
- /// next() member functions make possible to iterate on the keys of the
- /// container. The \e id() function returns an integer id for each key.
- /// The \e maxId() function gives back an upper bound of the ids.
- ///
- /// For the proper functonality of this class, we should notify it
- /// about each alteration in the container. The alterations have four type
- /// as \e add(), \e erase(), \e build() and \e clear(). The \e add() and
- /// \e erase() signals that only one or few items added or erased to or
- /// from the graph. If all items are erased from the graph or from an empty
- /// graph a new graph is builded then it can be signaled with the
- /// clear() and build() members. Important rule that if we erase items
- /// from graph we should first signal the alteration and after that erase
- /// them from the container, on the other way on item addition we should
- /// first extend the container and just after that signal the alteration.
- ///
- /// The alteration can be observed with a class inherited from the
- /// \e ObserverBase nested class. The signals can be handled with
- /// overriding the virtual functions defined in the base class. The
- /// observer base can be attached to the notifier with the
- /// \e attach() member and can be detached with detach() function. The
- /// alteration handlers should not call any function which signals
- /// an other alteration in the same notifier and should not
- /// detach any observer from the notifier.
- ///
- /// Alteration observers try to be exception safe. If an \e add() or
- /// a \e clear() function throws an exception then the remaining
- /// observeres will not be notified and the fulfilled additions will
- /// be rolled back by calling the \e erase() or \e clear()
- /// functions. Thence the \e erase() and \e clear() should not throw
- /// exception. Actullay, it can be throw only
- /// \ref AlterationObserver::ImmediateDetach ImmediateDetach
- /// exception which detach the observer from the notifier.
- ///
- /// There are some place when the alteration observing is not completly
- /// reliable. If we want to carry out the node degree in the graph
- /// as in the \ref InDegMap and we use the reverseEdge that cause
- /// unreliable functionality. Because the alteration observing signals
- /// only erasing and adding but not the reversing it will stores bad
- /// degrees. The sub graph adaptors cannot signal the alterations because
- /// just a setting in the filter map can modify the graph and this cannot
- /// be watched in any way.
- ///
- /// \param _Container The container which is observed.
- /// \param _Item The item type which is obserbved.
+ // \ingroup graphbits
+ //
+ // \brief Notifier class to notify observes about alterations in
+ // a container.
+ //
+ // The simple graph's can be refered as two containers, one node container
+ // and one edge container. But they are not standard containers they
+ // does not store values directly they are just key continars for more
+ // value containers which are the node and edge maps.
+ //
+ // The graph's node and edge sets can be changed as we add or erase
+ // nodes and edges in the graph. LEMON would like to handle easily
+ // that the node and edge maps should contain values for all nodes or
+ // edges. If we want to check on every indicing if the map contains
+ // the current indicing key that cause a drawback in the performance
+ // in the library. We use another solution we notify all maps about
+ // an alteration in the graph, which cause only drawback on the
+ // alteration of the graph.
+ //
+ // This class provides an interface to the container. The \e first() and \e
+ // next() member functions make possible to iterate on the keys of the
+ // container. The \e id() function returns an integer id for each key.
+ // The \e maxId() function gives back an upper bound of the ids.
+ //
+ // For the proper functonality of this class, we should notify it
+ // about each alteration in the container. The alterations have four type
+ // as \e add(), \e erase(), \e build() and \e clear(). The \e add() and
+ // \e erase() signals that only one or few items added or erased to or
+ // from the graph. If all items are erased from the graph or from an empty
+ // graph a new graph is builded then it can be signaled with the
+ // clear() and build() members. Important rule that if we erase items
+ // from graph we should first signal the alteration and after that erase
+ // them from the container, on the other way on item addition we should
+ // first extend the container and just after that signal the alteration.
+ //
+ // The alteration can be observed with a class inherited from the
+ // \e ObserverBase nested class. The signals can be handled with
+ // overriding the virtual functions defined in the base class. The
+ // observer base can be attached to the notifier with the
+ // \e attach() member and can be detached with detach() function. The
+ // alteration handlers should not call any function which signals
+ // an other alteration in the same notifier and should not
+ // detach any observer from the notifier.
+ //
+ // Alteration observers try to be exception safe. If an \e add() or
+ // a \e clear() function throws an exception then the remaining
+ // observeres will not be notified and the fulfilled additions will
+ // be rolled back by calling the \e erase() or \e clear()
+ // functions. Thence the \e erase() and \e clear() should not throw
+ // exception. Actullay, it can be throw only \ref ImmediateDetach
+ // exception which detach the observer from the notifier.
+ //
+ // There are some place when the alteration observing is not completly
+ // reliable. If we want to carry out the node degree in the graph
+ // as in the \ref InDegMap and we use the reverseEdge that cause
+ // unreliable functionality. Because the alteration observing signals
+ // only erasing and adding but not the reversing it will stores bad
+ // degrees. The sub graph adaptors cannot signal the alterations because
+ // just a setting in the filter map can modify the graph and this cannot
+ // be watched in any way.
+ //
+ // \param _Container The container which is observed.
+ // \param _Item The item type which is obserbved.
template
@@ -105,29 +104,28 @@
typedef _Item Item;
- /// \brief Exception which can be called from \e clear() and
- /// \e erase().
- ///
- /// From the \e clear() and \e erase() function only this
- /// exception is allowed to throw. The exception immediatly
- /// detaches the current observer from the notifier. Because the
- /// \e clear() and \e erase() should not throw other exceptions
- /// it can be used to invalidate the observer.
+ // \brief Exception which can be called from \e clear() and
+ // \e erase().
+ //
+ // From the \e clear() and \e erase() function only this
+ // exception is allowed to throw. The exception immediatly
+ // detaches the current observer from the notifier. Because the
+ // \e clear() and \e erase() should not throw other exceptions
+ // it can be used to invalidate the observer.
struct ImmediateDetach {};
- /// \brief ObserverBase is the base class for the observers.
- ///
- /// ObserverBase is the abstract base class for the observers.
- /// It will be notified about an item was inserted into or
- /// erased from the graph.
- ///
- /// The observer interface contains some pure virtual functions
- /// to override. The add() and erase() functions are
- /// to notify the oberver when one item is added or
- /// erased.
- ///
- /// The build() and clear() members are to notify the observer
- /// about the container is built from an empty container or
- /// is cleared to an empty container.
-
+ // \brief ObserverBase is the base class for the observers.
+ //
+ // ObserverBase is the abstract base class for the observers.
+ // It will be notified about an item was inserted into or
+ // erased from the graph.
+ //
+ // The observer interface contains some pure virtual functions
+ // to override. The add() and erase() functions are
+ // to notify the oberver when one item is added or
+ // erased.
+ //
+ // The build() and clear() members are to notify the observer
+ // about the container is built from an empty container or
+ // is cleared to an empty container.
class ObserverBase {
protected:
@@ -136,21 +134,20 @@
friend class AlterationNotifier;
- /// \brief Default constructor.
- ///
- /// Default constructor for ObserverBase.
- ///
+ // \brief Default constructor.
+ //
+ // Default constructor for ObserverBase.
ObserverBase() : _notifier(0) {}
- /// \brief Constructor which attach the observer into notifier.
- ///
- /// Constructor which attach the observer into notifier.
+ // \brief Constructor which attach the observer into notifier.
+ //
+ // Constructor which attach the observer into notifier.
ObserverBase(AlterationNotifier& nf) {
attach(nf);
}
- /// \brief Constructor which attach the obserever to the same notifier.
- ///
- /// Constructor which attach the obserever to the same notifier as
- /// the other observer is attached to.
+ // \brief Constructor which attach the obserever to the same notifier.
+ //
+ // Constructor which attach the obserever to the same notifier as
+ // the other observer is attached to.
ObserverBase(const ObserverBase& copy) {
if (copy.attached()) {
@@ -159,5 +156,5 @@
}
- /// \brief Destructor
+ // \brief Destructor
virtual ~ObserverBase() {
if (attached()) {
@@ -166,29 +163,26 @@
}
- /// \brief Attaches the observer into an AlterationNotifier.
- ///
- /// This member attaches the observer into an AlterationNotifier.
- ///
+ // \brief Attaches the observer into an AlterationNotifier.
+ //
+ // This member attaches the observer into an AlterationNotifier.
void attach(AlterationNotifier& nf) {
nf.attach(*this);
}
- /// \brief Detaches the observer into an AlterationNotifier.
- ///
- /// This member detaches the observer from an AlterationNotifier.
- ///
+ // \brief Detaches the observer into an AlterationNotifier.
+ //
+ // This member detaches the observer from an AlterationNotifier.
void detach() {
_notifier->detach(*this);
}
- /// \brief Gives back a pointer to the notifier which the map
- /// attached into.
- ///
- /// This function gives back a pointer to the notifier which the map
- /// attached into.
- ///
+ // \brief Gives back a pointer to the notifier which the map
+ // attached into.
+ //
+ // This function gives back a pointer to the notifier which the map
+ // attached into.
Notifier* notifier() const { return const_cast(_notifier); }
- /// Gives back true when the observer is attached into a notifier.
+ // Gives back true when the observer is attached into a notifier.
bool attached() const { return _notifier != 0; }
@@ -202,51 +196,50 @@
typename std::list::iterator _index;
- /// \brief The member function to notificate the observer about an
- /// item is added to the container.
- ///
- /// The add() member function notificates the observer about an item
- /// is added to the container. It have to be overrided in the
- /// subclasses.
+ // \brief The member function to notificate the observer about an
+ // item is added to the container.
+ //
+ // The add() member function notificates the observer about an item
+ // is added to the container. It have to be overrided in the
+ // subclasses.
virtual void add(const Item&) = 0;
- /// \brief The member function to notificate the observer about
- /// more item is added to the container.
- ///
- /// The add() member function notificates the observer about more item
- /// is added to the container. It have to be overrided in the
- /// subclasses.
+ // \brief The member function to notificate the observer about
+ // more item is added to the container.
+ //
+ // The add() member function notificates the observer about more item
+ // is added to the container. It have to be overrided in the
+ // subclasses.
virtual void add(const std::vector- & items) = 0;
- /// \brief The member function to notificate the observer about an
- /// item is erased from the container.
- ///
- /// The erase() member function notificates the observer about an
- /// item is erased from the container. It have to be overrided in
- /// the subclasses.
+ // \brief The member function to notificate the observer about an
+ // item is erased from the container.
+ //
+ // The erase() member function notificates the observer about an
+ // item is erased from the container. It have to be overrided in
+ // the subclasses.
virtual void erase(const Item&) = 0;
- /// \brief The member function to notificate the observer about
- /// more item is erased from the container.
- ///
- /// The erase() member function notificates the observer about more item
- /// is erased from the container. It have to be overrided in the
- /// subclasses.
+ // \brief The member function to notificate the observer about
+ // more item is erased from the container.
+ //
+ // The erase() member function notificates the observer about more item
+ // is erased from the container. It have to be overrided in the
+ // subclasses.
virtual void erase(const std::vector
- & items) = 0;
- /// \brief The member function to notificate the observer about the
- /// container is built.
- ///
- /// The build() member function notificates the observer about the
- /// container is built from an empty container. It have to be
- /// overrided in the subclasses.
-
+ // \brief The member function to notificate the observer about the
+ // container is built.
+ //
+ // The build() member function notificates the observer about the
+ // container is built from an empty container. It have to be
+ // overrided in the subclasses.
virtual void build() = 0;
- /// \brief The member function to notificate the observer about all
- /// items are erased from the container.
- ///
- /// The clear() member function notificates the observer about all
- /// items are erased from the container. It have to be overrided in
- /// the subclasses.
+ // \brief The member function to notificate the observer about all
+ // items are erased from the container.
+ //
+ // The clear() member function notificates the observer about all
+ // items are erased from the container. It have to be overrided in
+ // the subclasses.
virtual void clear() = 0;
@@ -263,29 +256,28 @@
public:
- /// \brief Default constructor.
- ///
- /// The default constructor of the AlterationNotifier.
- /// It creates an empty notifier.
+ // \brief Default constructor.
+ //
+ // The default constructor of the AlterationNotifier.
+ // It creates an empty notifier.
AlterationNotifier()
: container(0) {}
- /// \brief Constructor.
- ///
- /// Constructor with the observed container parameter.
+ // \brief Constructor.
+ //
+ // Constructor with the observed container parameter.
AlterationNotifier(const Container& _container)
: container(&_container) {}
- /// \brief Copy Constructor of the AlterationNotifier.
- ///
- /// Copy constructor of the AlterationNotifier.
- /// It creates only an empty notifier because the copiable
- /// notifier's observers have to be registered still into that notifier.
+ // \brief Copy Constructor of the AlterationNotifier.
+ //
+ // Copy constructor of the AlterationNotifier.
+ // It creates only an empty notifier because the copiable
+ // notifier's observers have to be registered still into that notifier.
AlterationNotifier(const AlterationNotifier& _notifier)
: container(_notifier.container) {}
- /// \brief Destructor.
- ///
- /// Destructor of the AlterationNotifier.
- ///
+ // \brief Destructor.
+ //
+ // Destructor of the AlterationNotifier.
~AlterationNotifier() {
typename Observers::iterator it;
@@ -295,7 +287,7 @@
}
- /// \brief Sets the container.
- ///
- /// Sets the container.
+ // \brief Sets the container.
+ //
+ // Sets the container.
void setContainer(const Container& _container) {
container = &_container;
@@ -308,32 +300,30 @@
public:
-
-
- /// \brief First item in the container.
- ///
- /// Returns the first item in the container. It is
- /// for start the iteration on the container.
+ // \brief First item in the container.
+ //
+ // Returns the first item in the container. It is
+ // for start the iteration on the container.
void first(Item& item) const {
container->first(item);
}
- /// \brief Next item in the container.
- ///
- /// Returns the next item in the container. It is
- /// for iterate on the container.
+ // \brief Next item in the container.
+ //
+ // Returns the next item in the container. It is
+ // for iterate on the container.
void next(Item& item) const {
container->next(item);
}
- /// \brief Returns the id of the item.
- ///
- /// Returns the id of the item provided by the container.
+ // \brief Returns the id of the item.
+ //
+ // Returns the id of the item provided by the container.
int id(const Item& item) const {
return container->id(item);
}
- /// \brief Returns the maximum id of the container.
- ///
- /// Returns the maximum id of the container.
+ // \brief Returns the maximum id of the container.
+ //
+ // Returns the maximum id of the container.
int maxId() const {
return container->maxId(Item());
@@ -355,10 +345,9 @@
public:
- /// \brief Notifies all the registed observers about an item added to
- /// the container.
- ///
- /// It notifies all the registed observers about an item added to
- /// the container.
- ///
+ // \brief Notifies all the registed observers about an item added to
+ // the container.
+ //
+ // It notifies all the registed observers about an item added to
+ // the container.
void add(const Item& item) {
typename Observers::reverse_iterator it;
@@ -376,10 +365,9 @@
}
- /// \brief Notifies all the registed observers about more item added to
- /// the container.
- ///
- /// It notifies all the registed observers about more item added to
- /// the container.
- ///
+ // \brief Notifies all the registed observers about more item added to
+ // the container.
+ //
+ // It notifies all the registed observers about more item added to
+ // the container.
void add(const std::vector
- & items) {
typename Observers::reverse_iterator it;
@@ -397,10 +385,9 @@
}
- /// \brief Notifies all the registed observers about an item erased from
- /// the container.
- ///
- /// It notifies all the registed observers about an item erased from
- /// the container.
- ///
+ // \brief Notifies all the registed observers about an item erased from
+ // the container.
+ //
+ // It notifies all the registed observers about an item erased from
+ // the container.
void erase(const Item& item) throw() {
typename Observers::iterator it = _observers.begin();
@@ -417,10 +404,9 @@
}
- /// \brief Notifies all the registed observers about more item erased
- /// from the container.
- ///
- /// It notifies all the registed observers about more item erased from
- /// the container.
- ///
+ // \brief Notifies all the registed observers about more item erased
+ // from the container.
+ //
+ // It notifies all the registed observers about more item erased from
+ // the container.
void erase(const std::vector
- & items) {
typename Observers::iterator it = _observers.begin();
@@ -437,9 +423,9 @@
}
- /// \brief Notifies all the registed observers about the container is
- /// built.
- ///
- /// Notifies all the registed observers about the container is built
- /// from an empty container.
+ // \brief Notifies all the registed observers about the container is
+ // built.
+ //
+ // Notifies all the registed observers about the container is built
+ // from an empty container.
void build() {
typename Observers::reverse_iterator it;
@@ -457,9 +443,9 @@
}
- /// \brief Notifies all the registed observers about all items are
- /// erased.
- ///
- /// Notifies all the registed observers about all items are erased
- /// from the container.
+ // \brief Notifies all the registed observers about all items are
+ // erased.
+ //
+ // Notifies all the registed observers about all items are erased
+ // from the container.
void clear() {
typename Observers::iterator it = _observers.begin();
Index: lemon/bits/array_map.h
===================================================================
--- lemon/bits/array_map.h (revision 263)
+++ lemon/bits/array_map.h (revision 314)
@@ -27,46 +27,46 @@
#include
-/// \ingroup graphbits
-/// \file
-/// \brief Graph map based on the array storage.
+// \ingroup graphbits
+// \file
+// \brief Graph map based on the array storage.
namespace lemon {
- /// \ingroup graphbits
- ///
- /// \brief Graph map based on the array storage.
- ///
- /// The ArrayMap template class is graph map structure what
- /// automatically updates the map when a key is added to or erased from
- /// the map. This map uses the allocators to implement
- /// the container functionality.
- ///
- /// The template parameters are the Graph the current Item type and
- /// the Value type of the map.
+ // \ingroup graphbits
+ //
+ // \brief Graph map based on the array storage.
+ //
+ // The ArrayMap template class is graph map structure what
+ // automatically updates the map when a key is added to or erased from
+ // the map. This map uses the allocators to implement
+ // the container functionality.
+ //
+ // The template parameters are the Graph the current Item type and
+ // the Value type of the map.
template
class ArrayMap
: public ItemSetTraits<_Graph, _Item>::ItemNotifier::ObserverBase {
public:
- /// The graph type of the maps.
+ // The graph type of the maps.
typedef _Graph Graph;
- /// The item type of the map.
+ // The item type of the map.
typedef _Item Item;
- /// The reference map tag.
+ // The reference map tag.
typedef True ReferenceMapTag;
- /// The key type of the maps.
+ // The key type of the maps.
typedef _Item Key;
- /// The value type of the map.
+ // The value type of the map.
typedef _Value Value;
- /// The const reference type of the map.
+ // The const reference type of the map.
typedef const _Value& ConstReference;
- /// The reference type of the map.
+ // The reference type of the map.
typedef _Value& Reference;
- /// The notifier type.
+ // The notifier type.
typedef typename ItemSetTraits<_Graph, _Item>::ItemNotifier Notifier;
- /// The MapBase of the Map which imlements the core regisitry function.
+ // The MapBase of the Map which imlements the core regisitry function.
typedef typename Notifier::ObserverBase Parent;
@@ -76,7 +76,7 @@
public:
- /// \brief Graph initialized map constructor.
- ///
- /// Graph initialized map constructor.
+ // \brief Graph initialized map constructor.
+ //
+ // Graph initialized map constructor.
explicit ArrayMap(const Graph& graph) {
Parent::attach(graph.notifier(Item()));
@@ -90,7 +90,7 @@
}
- /// \brief Constructor to use default value to initialize the map.
- ///
- /// It constructs a map and initialize all of the the map.
+ // \brief Constructor to use default value to initialize the map.
+ //
+ // It constructs a map and initialize all of the the map.
ArrayMap(const Graph& graph, const Value& value) {
Parent::attach(graph.notifier(Item()));
@@ -105,7 +105,7 @@
private:
- /// \brief Constructor to copy a map of the same map type.
- ///
- /// Constructor to copy a map of the same map type.
+ // \brief Constructor to copy a map of the same map type.
+ //
+ // Constructor to copy a map of the same map type.
ArrayMap(const ArrayMap& copy) : Parent() {
if (copy.attached()) {
@@ -123,11 +123,11 @@
}
- /// \brief Assign operator.
- ///
- /// This operator assigns for each item in the map the
- /// value mapped to the same item in the copied map.
- /// The parameter map should be indiced with the same
- /// itemset because this assign operator does not change
- /// the container of the map.
+ // \brief Assign operator.
+ //
+ // This operator assigns for each item in the map the
+ // value mapped to the same item in the copied map.
+ // The parameter map should be indiced with the same
+ // itemset because this assign operator does not change
+ // the container of the map.
ArrayMap& operator=(const ArrayMap& cmap) {
return operator=(cmap);
@@ -135,10 +135,10 @@
- /// \brief Template assign operator.
- ///
- /// The given parameter should be conform to the ReadMap
- /// concecpt and could be indiced by the current item set of
- /// the NodeMap. In this case the value for each item
- /// is assigned by the value of the given ReadMap.
+ // \brief Template assign operator.
+ //
+ // The given parameter should be conform to the ReadMap
+ // concecpt and could be indiced by the current item set of
+ // the NodeMap. In this case the value for each item
+ // is assigned by the value of the given ReadMap.
template
ArrayMap& operator=(const CMap& cmap) {
@@ -153,7 +153,7 @@
public:
- /// \brief The destructor of the map.
- ///
- /// The destructor of the map.
+ // \brief The destructor of the map.
+ //
+ // The destructor of the map.
virtual ~ArrayMap() {
if (attached()) {
@@ -171,8 +171,8 @@
public:
- /// \brief The subscript operator.
- ///
- /// The subscript operator. The map can be subscripted by the
- /// actual keys of the graph.
+ // \brief The subscript operator.
+ //
+ // The subscript operator. The map can be subscripted by the
+ // actual keys of the graph.
Value& operator[](const Key& key) {
int id = Parent::notifier()->id(key);
@@ -180,8 +180,8 @@
}
- /// \brief The const subscript operator.
- ///
- /// The const subscript operator. The map can be subscripted by the
- /// actual keys of the graph.
+ // \brief The const subscript operator.
+ //
+ // The const subscript operator. The map can be subscripted by the
+ // actual keys of the graph.
const Value& operator[](const Key& key) const {
int id = Parent::notifier()->id(key);
@@ -189,8 +189,8 @@
}
- /// \brief Setter function of the map.
- ///
- /// Setter function of the map. Equivalent with map[key] = val.
- /// This is a compatibility feature with the not dereferable maps.
+ // \brief Setter function of the map.
+ //
+ // Setter function of the map. Equivalent with map[key] = val.
+ // This is a compatibility feature with the not dereferable maps.
void set(const Key& key, const Value& val) {
(*this)[key] = val;
@@ -199,8 +199,8 @@
protected:
- /// \brief Adds a new key to the map.
- ///
- /// It adds a new key to the map. It called by the observer notifier
- /// and it overrides the add() member function of the observer base.
+ // \brief Adds a new key to the map.
+ //
+ // It adds a new key to the map. It called by the observer notifier
+ // and it overrides the add() member function of the observer base.
virtual void add(const Key& key) {
Notifier* nf = Parent::notifier();
@@ -227,8 +227,8 @@
}
- /// \brief Adds more new keys to the map.
- ///
- /// It adds more new keys to the map. It called by the observer notifier
- /// and it overrides the add() member function of the observer base.
+ // \brief Adds more new keys to the map.
+ //
+ // It adds more new keys to the map. It called by the observer notifier
+ // and it overrides the add() member function of the observer base.
virtual void add(const std::vector& keys) {
Notifier* nf = Parent::notifier();
@@ -271,8 +271,8 @@
}
- /// \brief Erase a key from the map.
- ///
- /// Erase a key from the map. It called by the observer notifier
- /// and it overrides the erase() member function of the observer base.
+ // \brief Erase a key from the map.
+ //
+ // Erase a key from the map. It called by the observer notifier
+ // and it overrides the erase() member function of the observer base.
virtual void erase(const Key& key) {
int id = Parent::notifier()->id(key);
@@ -280,8 +280,8 @@
}
- /// \brief Erase more keys from the map.
- ///
- /// Erase more keys from the map. It called by the observer notifier
- /// and it overrides the erase() member function of the observer base.
+ // \brief Erase more keys from the map.
+ //
+ // Erase more keys from the map. It called by the observer notifier
+ // and it overrides the erase() member function of the observer base.
virtual void erase(const std::vector& keys) {
for (int i = 0; i < int(keys.size()); ++i) {
@@ -291,8 +291,8 @@
}
- /// \brief Buildes the map.
- ///
- /// It buildes the map. It called by the observer notifier
- /// and it overrides the build() member function of the observer base.
+ // \brief Buildes the map.
+ //
+ // It buildes the map. It called by the observer notifier
+ // and it overrides the build() member function of the observer base.
virtual void build() {
Notifier* nf = Parent::notifier();
@@ -305,8 +305,8 @@
}
- /// \brief Clear the map.
- ///
- /// It erase all items from the map. It called by the observer notifier
- /// and it overrides the clear() member function of the observer base.
+ // \brief Clear the map.
+ //
+ // It erase all items from the map. It called by the observer notifier
+ // and it overrides the clear() member function of the observer base.
virtual void clear() {
Notifier* nf = Parent::notifier();
Index: lemon/bits/base_extender.h
===================================================================
--- lemon/bits/base_extender.h (revision 289)
+++ lemon/bits/base_extender.h (revision 314)
@@ -29,12 +29,12 @@
#include
-///\ingroup digraphbits
-///\file
-///\brief Extenders for the digraph types
+//\ingroup digraphbits
+//\file
+//\brief Extenders for the digraph types
namespace lemon {
- /// \ingroup digraphbits
- ///
- /// \brief BaseDigraph to BaseGraph extender
+ // \ingroup digraphbits
+ //
+ // \brief BaseDigraph to BaseGraph extender
template
class UndirDigraphExtender : public Base {
@@ -75,35 +75,35 @@
};
- /// First node of the edge
+ // First node of the edge
Node u(const Edge &e) const {
return Parent::source(e);
}
- /// Source of the given arc
+ // Source of the given arc
Node source(const Arc &e) const {
return e.forward ? Parent::source(e) : Parent::target(e);
}
- /// Second node of the edge
+ // Second node of the edge
Node v(const Edge &e) const {
return Parent::target(e);
}
- /// Target of the given arc
+ // Target of the given arc
Node target(const Arc &e) const {
return e.forward ? Parent::target(e) : Parent::source(e);
}
- /// \brief Directed arc from an edge.
- ///
- /// Returns a directed arc corresponding to the specified edge.
- /// If the given bool is true, the first node of the given edge and
- /// the source node of the returned arc are the same.
+ // \brief Directed arc from an edge.
+ //
+ // Returns a directed arc corresponding to the specified edge.
+ // If the given bool is true, the first node of the given edge and
+ // the source node of the returned arc are the same.
static Arc direct(const Edge &e, bool d) {
return Arc(e, d);
}
- /// Returns whether the given directed arc has the same orientation
- /// as the corresponding edge.
+ // Returns whether the given directed arc has the same orientation
+ // as the corresponding edge.
static bool direction(const Arc &a) { return a.forward; }
Index: lemon/bits/bezier.h
===================================================================
--- lemon/bits/bezier.h (revision 209)
+++ lemon/bits/bezier.h (revision 314)
@@ -20,9 +20,9 @@
#define LEMON_BEZIER_H
-///\ingroup misc
-///\file
-///\brief Classes to compute with Bezier curves.
-///
-///Up to now this file is used internally by \ref graph_to_eps.h
+//\ingroup misc
+//\file
+//\brief Classes to compute with Bezier curves.
+//
+//Up to now this file is used internally by \ref graph_to_eps.h
#include
Index: lemon/bits/default_map.h
===================================================================
--- lemon/bits/default_map.h (revision 209)
+++ lemon/bits/default_map.h (revision 314)
@@ -20,12 +20,11 @@
#define LEMON_BITS_DEFAULT_MAP_H
-
#include
#include
//#include
-///\ingroup graphbits
-///\file
-///\brief Graph maps that construct and destruct their elements dynamically.
+//\ingroup graphbits
+//\file
+//\brief Graph maps that construct and destruct their elements dynamically.
namespace lemon {
@@ -150,5 +149,5 @@
// #endif
- /// \e
+ // DefaultMap class
template
class DefaultMap
Index: lemon/bits/enable_if.h
===================================================================
--- lemon/bits/enable_if.h (revision 220)
+++ lemon/bits/enable_if.h (revision 314)
@@ -36,27 +36,27 @@
#define LEMON_BITS_ENABLE_IF_H
-///\file
-///\brief Miscellaneous basic utilities
+//\file
+//\brief Miscellaneous basic utilities
namespace lemon
{
- /// Basic type for defining "tags". A "YES" condition for \c enable_if.
+ // Basic type for defining "tags". A "YES" condition for \c enable_if.
- /// Basic type for defining "tags". A "YES" condition for \c enable_if.
- ///
- ///\sa False
+ // Basic type for defining "tags". A "YES" condition for \c enable_if.
+ //
+ //\sa False
struct True {
- ///\e
+ //\e
static const bool value = true;
};
- /// Basic type for defining "tags". A "NO" condition for \c enable_if.
+ // Basic type for defining "tags". A "NO" condition for \c enable_if.
- /// Basic type for defining "tags". A "NO" condition for \c enable_if.
- ///
- ///\sa True
+ // Basic type for defining "tags". A "NO" condition for \c enable_if.
+ //
+ //\sa True
struct False {
- ///\e
+ //\e
static const bool value = false;
};
Index: lemon/bits/graph_extender.h
===================================================================
--- lemon/bits/graph_extender.h (revision 263)
+++ lemon/bits/graph_extender.h (revision 314)
@@ -28,12 +28,12 @@
#include
-///\ingroup graphbits
-///\file
-///\brief Extenders for the digraph types
+//\ingroup graphbits
+//\file
+//\brief Extenders for the digraph types
namespace lemon {
- /// \ingroup graphbits
- ///
- /// \brief Extender for the Digraphs
+ // \ingroup graphbits
+ //
+ // \brief Extender for the Digraphs
template
class DigraphExtender : public Base {
@@ -187,28 +187,28 @@
};
- /// \brief Base node of the iterator
- ///
- /// Returns the base node (i.e. the source in this case) of the iterator
+ // \brief Base node of the iterator
+ //
+ // Returns the base node (i.e. the source in this case) of the iterator
Node baseNode(const OutArcIt &arc) const {
return Parent::source(arc);
}
- /// \brief Running node of the iterator
- ///
- /// Returns the running node (i.e. the target in this case) of the
- /// iterator
+ // \brief Running node of the iterator
+ //
+ // Returns the running node (i.e. the target in this case) of the
+ // iterator
Node runningNode(const OutArcIt &arc) const {
return Parent::target(arc);
}
- /// \brief Base node of the iterator
- ///
- /// Returns the base node (i.e. the target in this case) of the iterator
+ // \brief Base node of the iterator
+ //
+ // Returns the base node (i.e. the target in this case) of the iterator
Node baseNode(const InArcIt &arc) const {
return Parent::target(arc);
}
- /// \brief Running node of the iterator
- ///
- /// Returns the running node (i.e. the source in this case) of the
- /// iterator
+ // \brief Running node of the iterator
+ //
+ // Returns the running node (i.e. the source in this case) of the
+ // iterator
Node runningNode(const InArcIt &arc) const {
return Parent::source(arc);
@@ -326,7 +326,7 @@
};
- /// \ingroup _graphbits
- ///
- /// \brief Extender for the Graphs
+ // \ingroup _graphbits
+ //
+ // \brief Extender for the Graphs
template
class GraphExtender : public Base {
@@ -556,41 +556,41 @@
};
- /// \brief Base node of the iterator
- ///
- /// Returns the base node (ie. the source in this case) of the iterator
+ // \brief Base node of the iterator
+ //
+ // Returns the base node (ie. the source in this case) of the iterator
Node baseNode(const OutArcIt &arc) const {
return Parent::source(static_cast(arc));
}
- /// \brief Running node of the iterator
- ///
- /// Returns the running node (ie. the target in this case) of the
- /// iterator
+ // \brief Running node of the iterator
+ //
+ // Returns the running node (ie. the target in this case) of the
+ // iterator
Node runningNode(const OutArcIt &arc) const {
return Parent::target(static_cast(arc));
}
- /// \brief Base node of the iterator
- ///
- /// Returns the base node (ie. the target in this case) of the iterator
+ // \brief Base node of the iterator
+ //
+ // Returns the base node (ie. the target in this case) of the iterator
Node baseNode(const InArcIt &arc) const {
return Parent::target(static_cast(arc));
}
- /// \brief Running node of the iterator
- ///
- /// Returns the running node (ie. the source in this case) of the
- /// iterator
+ // \brief Running node of the iterator
+ //
+ // Returns the running node (ie. the source in this case) of the
+ // iterator
Node runningNode(const InArcIt &arc) const {
return Parent::source(static_cast(arc));
}
- /// Base node of the iterator
- ///
- /// Returns the base node of the iterator
+ // Base node of the iterator
+ //
+ // Returns the base node of the iterator
Node baseNode(const IncEdgeIt &edge) const {
return edge._direction ? u(edge) : v(edge);
}
- /// Running node of the iterator
- ///
- /// Returns the running node of the iterator
+ // Running node of the iterator
+ //
+ // Returns the running node of the iterator
Node runningNode(const IncEdgeIt &edge) const {
return edge._direction ? v(edge) : u(edge);
Index: lemon/bits/map_extender.h
===================================================================
--- lemon/bits/map_extender.h (revision 263)
+++ lemon/bits/map_extender.h (revision 314)
@@ -27,12 +27,12 @@
#include
-///\file
-///\brief Extenders for iterable maps.
+//\file
+//\brief Extenders for iterable maps.
namespace lemon {
- /// \ingroup graphbits
- ///
- /// \brief Extender for maps
+ // \ingroup graphbits
+ //
+ // \brief Extender for maps
template
class MapExtender : public _Map {
@@ -172,7 +172,7 @@
};
- /// \ingroup graphbits
- ///
- /// \brief Extender for maps which use a subset of the items.
+ // \ingroup graphbits
+ //
+ // \brief Extender for maps which use a subset of the items.
template
class SubMapExtender : public _Map {
Index: lemon/bits/traits.h
===================================================================
--- lemon/bits/traits.h (revision 220)
+++ lemon/bits/traits.h (revision 314)
@@ -20,7 +20,7 @@
#define LEMON_BITS_TRAITS_H
-///\file
-///\brief Traits for graphs and maps
-///
+//\file
+//\brief Traits for graphs and maps
+//
#include
Index: lemon/bits/vector_map.h
===================================================================
--- lemon/bits/vector_map.h (revision 280)
+++ lemon/bits/vector_map.h (revision 314)
@@ -29,21 +29,21 @@
#include
-///\ingroup graphbits
-///
-///\file
-///\brief Vector based graph maps.
+//\ingroup graphbits
+//
+//\file
+//\brief Vector based graph maps.
namespace lemon {
- /// \ingroup graphbits
- ///
- /// \brief Graph map based on the std::vector storage.
- ///
- /// The VectorMap template class is graph map structure what
- /// automatically updates the map when a key is added to or erased from
- /// the map. This map type uses the std::vector to store the values.
- ///
- /// \tparam _Graph The graph this map is attached to.
- /// \tparam _Item The item type of the graph items.
- /// \tparam _Value The value type of the map.
+ // \ingroup graphbits
+ //
+ // \brief Graph map based on the std::vector storage.
+ //
+ // The VectorMap template class is graph map structure what
+ // automatically updates the map when a key is added to or erased from
+ // the map. This map type uses the std::vector to store the values.
+ //
+ // \tparam _Graph The graph this map is attached to.
+ // \tparam _Item The item type of the graph items.
+ // \tparam _Value The value type of the map.
template
class VectorMap
@@ -51,39 +51,39 @@
private:
- /// The container type of the map.
+ // The container type of the map.
typedef std::vector<_Value> Container;
public:
- /// The graph type of the map.
+ // The graph type of the map.
typedef _Graph Graph;
- /// The item type of the map.
+ // The item type of the map.
typedef _Item Item;
- /// The reference map tag.
+ // The reference map tag.
typedef True ReferenceMapTag;
- /// The key type of the map.
+ // The key type of the map.
typedef _Item Key;
- /// The value type of the map.
+ // The value type of the map.
typedef _Value Value;
- /// The notifier type.
+ // The notifier type.
typedef typename ItemSetTraits<_Graph, _Item>::ItemNotifier Notifier;
- /// The map type.
+ // The map type.
typedef VectorMap Map;
- /// The base class of the map.
+ // The base class of the map.
typedef typename Notifier::ObserverBase Parent;
- /// The reference type of the map;
+ // The reference type of the map;
typedef typename Container::reference Reference;
- /// The const reference type of the map;
+ // The const reference type of the map;
typedef typename Container::const_reference ConstReference;
- /// \brief Constructor to attach the new map into the notifier.
- ///
- /// It constructs a map and attachs it into the notifier.
- /// It adds all the items of the graph to the map.
+ // \brief Constructor to attach the new map into the notifier.
+ //
+ // It constructs a map and attachs it into the notifier.
+ // It adds all the items of the graph to the map.
VectorMap(const Graph& graph) {
Parent::attach(graph.notifier(Item()));
@@ -91,8 +91,8 @@
}
- /// \brief Constructor uses given value to initialize the map.
- ///
- /// It constructs a map uses a given value to initialize the map.
- /// It adds all the items of the graph to the map.
+ // \brief Constructor uses given value to initialize the map.
+ //
+ // It constructs a map uses a given value to initialize the map.
+ // It adds all the items of the graph to the map.
VectorMap(const Graph& graph, const Value& value) {
Parent::attach(graph.notifier(Item()));
@@ -101,7 +101,7 @@
private:
- /// \brief Copy constructor
- ///
- /// Copy constructor.
+ // \brief Copy constructor
+ //
+ // Copy constructor.
VectorMap(const VectorMap& _copy) : Parent() {
if (_copy.attached()) {
@@ -111,11 +111,11 @@
}
- /// \brief Assign operator.
- ///
- /// This operator assigns for each item in the map the
- /// value mapped to the same item in the copied map.
- /// The parameter map should be indiced with the same
- /// itemset because this assign operator does not change
- /// the container of the map.
+ // \brief Assign operator.
+ //
+ // This operator assigns for each item in the map the
+ // value mapped to the same item in the copied map.
+ // The parameter map should be indiced with the same
+ // itemset because this assign operator does not change
+ // the container of the map.
VectorMap& operator=(const VectorMap& cmap) {
return operator=(cmap);
@@ -123,10 +123,10 @@
- /// \brief Template assign operator.
- ///
- /// The given parameter should be conform to the ReadMap
- /// concecpt and could be indiced by the current item set of
- /// the NodeMap. In this case the value for each item
- /// is assigned by the value of the given ReadMap.
+ // \brief Template assign operator.
+ //
+ // The given parameter should be conform to the ReadMap
+ // concecpt and could be indiced by the current item set of
+ // the NodeMap. In this case the value for each item
+ // is assigned by the value of the given ReadMap.
template
VectorMap& operator=(const CMap& cmap) {
@@ -142,16 +142,16 @@
public:
- /// \brief The subcript operator.
- ///
- /// The subscript operator. The map can be subscripted by the
- /// actual items of the graph.
+ // \brief The subcript operator.
+ //
+ // The subscript operator. The map can be subscripted by the
+ // actual items of the graph.
Reference operator[](const Key& key) {
return container[Parent::notifier()->id(key)];
}
- /// \brief The const subcript operator.
- ///
- /// The const subscript operator. The map can be subscripted by the
- /// actual items of the graph.
+ // \brief The const subcript operator.
+ //
+ // The const subscript operator. The map can be subscripted by the
+ // actual items of the graph.
ConstReference operator[](const Key& key) const {
return container[Parent::notifier()->id(key)];
@@ -159,7 +159,7 @@
- /// \brief The setter function of the map.
- ///
- /// It the same as operator[](key) = value expression.
+ // \brief The setter function of the map.
+ //
+ // It the same as operator[](key) = value expression.
void set(const Key& key, const Value& value) {
(*this)[key] = value;
@@ -168,8 +168,8 @@
protected:
- /// \brief Adds a new key to the map.
- ///
- /// It adds a new key to the map. It called by the observer notifier
- /// and it overrides the add() member function of the observer base.
+ // \brief Adds a new key to the map.
+ //
+ // It adds a new key to the map. It called by the observer notifier
+ // and it overrides the add() member function of the observer base.
virtual void add(const Key& key) {
int id = Parent::notifier()->id(key);
@@ -179,8 +179,8 @@
}
- /// \brief Adds more new keys to the map.
- ///
- /// It adds more new keys to the map. It called by the observer notifier
- /// and it overrides the add() member function of the observer base.
+ // \brief Adds more new keys to the map.
+ //
+ // It adds more new keys to the map. It called by the observer notifier
+ // and it overrides the add() member function of the observer base.
virtual void add(const std::vector& keys) {
int max = container.size() - 1;
@@ -194,16 +194,16 @@
}
- /// \brief Erase a key from the map.
- ///
- /// Erase a key from the map. It called by the observer notifier
- /// and it overrides the erase() member function of the observer base.
+ // \brief Erase a key from the map.
+ //
+ // Erase a key from the map. It called by the observer notifier
+ // and it overrides the erase() member function of the observer base.
virtual void erase(const Key& key) {
container[Parent::notifier()->id(key)] = Value();
}
- /// \brief Erase more keys from the map.
- ///
- /// Erase more keys from the map. It called by the observer notifier
- /// and it overrides the erase() member function of the observer base.
+ // \brief Erase more keys from the map.
+ //
+ // Erase more keys from the map. It called by the observer notifier
+ // and it overrides the erase() member function of the observer base.
virtual void erase(const std::vector& keys) {
for (int i = 0; i < int(keys.size()); ++i) {
@@ -212,8 +212,8 @@
}
- /// \brief Buildes the map.
- ///
- /// It buildes the map. It called by the observer notifier
- /// and it overrides the build() member function of the observer base.
+ // \brief Buildes the map.
+ //
+ // It buildes the map. It called by the observer notifier
+ // and it overrides the build() member function of the observer base.
virtual void build() {
int size = Parent::notifier()->maxId() + 1;
@@ -222,8 +222,8 @@
}
- /// \brief Clear the map.
- ///
- /// It erase all items from the map. It called by the observer notifier
- /// and it overrides the clear() member function of the observer base.
+ // \brief Clear the map.
+ //
+ // It erase all items from the map. It called by the observer notifier
+ // and it overrides the clear() member function of the observer base.
virtual void clear() {
container.clear();
Index: lemon/color.h
===================================================================
--- lemon/color.h (revision 209)
+++ lemon/color.h (revision 313)
@@ -93,5 +93,5 @@
extern const Color DARK_CYAN;
- ///Map ints to different \ref Color "Color"s
+ ///Map ints to different Colors
///This map assigns one of the predefined \ref Color "Color"s to
Index: lemon/concepts/graph_components.h
===================================================================
--- lemon/concepts/graph_components.h (revision 263)
+++ lemon/concepts/graph_components.h (revision 313)
@@ -983,5 +983,5 @@
///
/// This class describes the common interface of the graph maps
- /// (NodeMap, ArcMap), that is \ref maps-page "maps" which can be used to
+ /// (NodeMap, ArcMap), that is maps that can be used to
/// associate data to graph descriptors (nodes or arcs).
template
Index: lemon/concepts/maps.h
===================================================================
--- lemon/concepts/maps.h (revision 220)
+++ lemon/concepts/maps.h (revision 314)
@@ -23,5 +23,5 @@
#include
-///\ingroup concept
+///\ingroup map_concepts
///\file
///\brief The concept of maps.
@@ -31,5 +31,5 @@
namespace concepts {
- /// \addtogroup concept
+ /// \addtogroup map_concepts
/// @{
Index: lemon/core.h
===================================================================
--- lemon/core.h (revision 300)
+++ lemon/core.h (revision 313)
@@ -1555,5 +1555,5 @@
///structure is updated after each graph alteration. Thus although
///this data structure is theoretically faster than \ref ArcLookUp
- ///and \ref AllArcLookup, it often provides worse performance than
+ ///and \ref AllArcLookUp, it often provides worse performance than
///them.
Arc operator()(Node s, Node t, Arc p = INVALID) const {
@@ -1700,6 +1700,6 @@
///Find an arc between two nodes.
- ///Find an arc between two nodes in time O(logd), where
- ///d is the number of outgoing arcs of \c s.
+ ///Find an arc between two nodes in time O(logd),
+ ///where d is the number of outgoing arcs of \c s.
///\param s The source node.
///\param t The target node.
@@ -1818,6 +1818,6 @@
///\endcode
///
- ///Finding the first arc take O(logd) time, where
- ///d is the number of outgoing arcs of \c s. Then, the
+ ///Finding the first arc take O(logd) time,
+ ///where d is the number of outgoing arcs of \c s. Then the
///consecutive arcs are found in constant time.
///
Index: lemon/dfs.h
===================================================================
--- lemon/dfs.h (revision 301)
+++ lemon/dfs.h (revision 313)
@@ -836,5 +836,5 @@
};
- /// Default traits class used by \ref DfsWizard
+ /// Default traits class used by DfsWizard
/// To make it easier to use Dfs algorithm
Index: lemon/dijkstra.h
===================================================================
--- lemon/dijkstra.h (revision 301)
+++ lemon/dijkstra.h (revision 313)
@@ -454,5 +454,5 @@
/// \brief \ref named-templ-param "Named parameter" for setting
- ///\ref OperationTraits type
+ ///\c OperationTraits type
///
///\ref named-templ-param "Named parameter" for setting
@@ -1039,5 +1039,5 @@
};
- /// Default traits class used by \ref DijkstraWizard
+ /// Default traits class used by DijkstraWizard
/// To make it easier to use Dijkstra algorithm
Index: lemon/dim2.h
===================================================================
--- lemon/dim2.h (revision 253)
+++ lemon/dim2.h (revision 314)
@@ -260,8 +260,8 @@
- /// Bounding box of plain vectors (\ref Point points).
+ /// Bounding box of plain vectors (points).
/// A class to calculate or store the bounding box of plain vectors
- /// (\ref Point points).
+ /// (\ref Point "points").
template
class Box {
@@ -574,7 +574,6 @@
}
- ///Map of x-coordinates of a \ref Point "Point"-map
-
- ///\ingroup maps
+ ///Map of x-coordinates of a Point-map
+
///Map of x-coordinates of a \ref Point "Point"-map.
///
@@ -593,9 +592,7 @@
};
- ///Returns an \ref XMap class
-
- ///This function just returns an \ref XMap class.
- ///
- ///\ingroup maps
+ ///Returns an XMap class
+
+ ///This function just returns an XMap class.
///\relates XMap
template
@@ -611,8 +608,7 @@
}
- ///Constant (read only) version of \ref XMap
-
- ///\ingroup maps
- ///Constant (read only) version of \ref XMap
+ ///Constant (read only) version of XMap
+
+ ///Constant (read only) version of XMap.
///
template
@@ -629,9 +625,7 @@
};
- ///Returns a \ref ConstXMap class
-
- ///This function just returns a \ref ConstXMap class.
- ///
- ///\ingroup maps
+ ///Returns a ConstXMap class
+
+ ///This function just returns a ConstXMap class.
///\relates ConstXMap
template
@@ -641,7 +635,6 @@
}
- ///Map of y-coordinates of a \ref Point "Point"-map
-
- ///\ingroup maps
+ ///Map of y-coordinates of a Point-map
+
///Map of y-coordinates of a \ref Point "Point"-map.
///
@@ -660,9 +653,7 @@
};
- ///Returns a \ref YMap class
-
- ///This function just returns a \ref YMap class.
- ///
- ///\ingroup maps
+ ///Returns a YMap class
+
+ ///This function just returns a YMap class.
///\relates YMap
template
@@ -678,8 +669,7 @@
}
- ///Constant (read only) version of \ref YMap
-
- ///\ingroup maps
- ///Constant (read only) version of \ref YMap
+ ///Constant (read only) version of YMap
+
+ ///Constant (read only) version of YMap.
///
template
@@ -696,9 +686,7 @@
};
- ///Returns a \ref ConstYMap class
-
- ///This function just returns a \ref ConstYMap class.
- ///
- ///\ingroup maps
+ ///Returns a ConstYMap class
+
+ ///This function just returns a ConstYMap class.
///\relates ConstYMap
template
@@ -709,10 +697,8 @@
- ///\brief Map of the \ref Point::normSquare() "normSquare()"
- ///of a \ref Point "Point"-map
+ ///\brief Map of the normSquare() of a Point-map
///
///Map of the \ref Point::normSquare() "normSquare()"
///of a \ref Point "Point"-map.
- ///\ingroup maps
template
class NormSquareMap
@@ -728,9 +714,7 @@
};
- ///Returns a \ref NormSquareMap class
-
- ///This function just returns a \ref NormSquareMap class.
- ///
- ///\ingroup maps
+ ///Returns a NormSquareMap class
+
+ ///This function just returns a NormSquareMap class.
///\relates NormSquareMap
template
Index: lemon/graph_to_eps.h
===================================================================
--- lemon/graph_to_eps.h (revision 291)
+++ lemon/graph_to_eps.h (revision 313)
@@ -63,5 +63,5 @@
}
-///Default traits class of \ref GraphToEps
+///Default traits class of GraphToEps
///Default traits class of \ref GraphToEps.
Index: lemon/list_graph.h
===================================================================
--- lemon/list_graph.h (revision 280)
+++ lemon/list_graph.h (revision 313)
@@ -414,5 +414,5 @@
///
///\note The InArcIts referencing the changed arc remain
- ///valid. However the ArcIts and OutArcIts are
+ ///valid. However the ArcIts and OutArcIts are
///invalidated.
///
Index: lemon/maps.h
===================================================================
--- lemon/maps.h (revision 301)
+++ lemon/maps.h (revision 314)
@@ -44,5 +44,5 @@
class MapBase {
public:
- /// \biref The key type of the map.
+ /// \brief The key type of the map.
typedef K Key;
/// \brief The value type of the map.
@@ -1683,4 +1683,9 @@
}
+
+ /// @}
+
+ /// \addtogroup maps
+ /// @{
/// \brief Writable bool map for logging each \c true assigned element
@@ -1776,4 +1781,9 @@
}
+ /// @}
+
+ /// \addtogroup graph_maps
+ /// @{
+
/// Provides an immutable and unique id for each item in the graph.
@@ -1882,6 +1892,4 @@
/// The value type of the InvertableMap.
typedef typename Map::Value Value;
-
-
/// \brief Constructor.
@@ -2050,6 +2058,4 @@
}
-
-
};
@@ -2267,5 +2273,5 @@
///
/// Constructor
- /// \param _digraph The digraph that the map belongs to.
+ /// \param digraph The digraph that the map belongs to.
explicit SourceMap(const Digraph& digraph) : _digraph(digraph) {}
@@ -2306,5 +2312,5 @@
///
/// Constructor
- /// \param _digraph The digraph that the map belongs to.
+ /// \param digraph The digraph that the map belongs to.
explicit TargetMap(const Digraph& digraph) : _digraph(digraph) {}
@@ -2345,5 +2351,5 @@
///
/// Constructor
- /// \param _graph The graph that the map belongs to.
+ /// \param graph The graph that the map belongs to.
explicit ForwardMap(const Graph& graph) : _graph(graph) {}
@@ -2384,5 +2390,5 @@
///
/// Constructor
- /// \param _graph The graph that the map belongs to.
+ /// \param graph The graph that the map belongs to.
explicit BackwardMap(const Graph& graph) : _graph(graph) {}
Index: lemon/path.h
===================================================================
--- lemon/path.h (revision 236)
+++ lemon/path.h (revision 313)
@@ -850,5 +850,5 @@
int empty() const { return len == 0; }
- /// \break Erase all arcs in the digraph.
+ /// \brief Erase all arcs in the digraph.
void clear() {
len = 0;
Index: lemon/smart_graph.h
===================================================================
--- lemon/smart_graph.h (revision 280)
+++ lemon/smart_graph.h (revision 313)
@@ -366,5 +366,5 @@
///This constructor immediately makes a snapshot of the digraph.
- ///\param _g The digraph we make a snapshot of.
+ ///\param graph The digraph we make a snapshot of.
Snapshot(SmartDigraph &graph) : _graph(&graph) {
node_num=_graph->nodes.size();
@@ -378,5 +378,5 @@
///This function can be called more than once. In case of a repeated
///call, the previous snapshot gets lost.
- ///\param _g The digraph we make the snapshot of.
+ ///\param graph The digraph we make the snapshot of.
void save(SmartDigraph &graph)
{
@@ -776,5 +776,5 @@
///This constructor immediately makes a snapshot of the digraph.
- ///\param g The digraph we make a snapshot of.
+ ///\param graph The digraph we make a snapshot of.
Snapshot(SmartGraph &graph) {
graph.saveSnapshot(*this);
@@ -787,5 +787,5 @@
///This function can be called more than once. In case of a repeated
///call, the previous snapshot gets lost.
- ///\param g The digraph we make the snapshot of.
+ ///\param graph The digraph we make the snapshot of.
void save(SmartGraph &graph)
{
Index: lemon/time_measure.h
===================================================================
--- lemon/time_measure.h (revision 280)
+++ lemon/time_measure.h (revision 314)
@@ -312,10 +312,9 @@
///Basically a Timer can be either running or stopped,
///but it provides a bit finer control on the execution.
- ///The \ref Timer also counts the number of \ref start()
- ///executions, and is stops only after the same amount (or more)
- ///\ref stop() "stop()"s. This can be useful e.g. to compute
- ///the running time
+ ///The \ref lemon::Timer "Timer" also counts the number of
+ ///\ref lemon::Timer::start() "start()" executions, and it stops
+ ///only after the same amount (or more) \ref lemon::Timer::stop()
+ ///"stop()"s. This can be useful e.g. to compute the running time
///of recursive functions.
- ///
///@{
@@ -473,5 +472,5 @@
};
- ///Same as \ref Timer but prints a report on destruction.
+ ///Same as Timer but prints a report on destruction.
///Same as \ref Timer but prints a report on destruction.
@@ -492,13 +491,13 @@
std::ostream &_os;
public:
- ///\e
-
+ ///Constructor
+
+ ///Constructor.
///\param title This text will be printed before the ellapsed time.
///\param os The stream to print the report to.
///\param run Sets whether the timer should start immediately.
-
TimeReport(std::string title,std::ostream &os=std::cerr,bool run=true)
: Timer(run), _title(title), _os(os){}
- ///\e Prints the ellapsed time on destruction.
+ ///Destructor that prints the ellapsed time
~TimeReport()
{
@@ -507,5 +506,5 @@
};
- ///'Do nothing' version of \ref TimeReport
+ ///'Do nothing' version of TimeReport
///\sa TimeReport