# HG changeset patch
# User Peter Kovacs <kpeter@inf.elte.hu>
# Date 1223539784 -7200
# Node ID 64f8f7cc6168b86c88ad05e447aecb9b1428c61e
# Parent e57e10a8ea1b3b89a3350af00e85ca51d7ad1dfc
Fix several doxygen warnings
diff --git a/demo/graph_to_eps_demo.cc b/demo/graph_to_eps_demo.cc
a
|
b
|
|
26 | 26 | /// graphToEps(), and showing how to draw directed graphs, |
27 | 27 | /// how to handle parallel egdes, how to change the properties (like |
28 | 28 | /// color, shape, size, title etc.) of nodes and arcs individually |
29 | | /// using appropriate \ref maps-page "graph maps". |
| 29 | /// using appropriate graph maps. |
30 | 30 | /// |
31 | 31 | /// \include graph_to_eps_demo.cc |
32 | 32 | |
diff --git a/doc/lgf.dox b/doc/lgf.dox
a
|
b
|
|
78 | 78 | 2 3 18 |
79 | 79 | \endcode |
80 | 80 | |
81 | | The \c \@edges is just a synonym of \c \@arcs. The @arcs section can |
| 81 | The \c \@edges is just a synonym of \c \@arcs. The \@arcs section can |
82 | 82 | also store the edge set of an undirected graph. In such case there is |
83 | 83 | a conventional method for store arc maps in the file, if two columns |
84 | 84 | has the same caption with \c '+' and \c '-' prefix, then these columns |
diff --git a/lemon/bits/alteration_notifier.h b/lemon/bits/alteration_notifier.h
a
|
b
|
|
79 | 79 | /// observeres will not be notified and the fulfilled additions will |
80 | 80 | /// be rolled back by calling the \e erase() or \e clear() |
81 | 81 | /// functions. Thence the \e erase() and \e clear() should not throw |
82 | | /// exception. Actullay, it can be throw only |
83 | | /// \ref AlterationObserver::ImmediateDetach ImmediateDetach |
| 82 | /// exception. Actullay, it can be throw only \ref ImmediateDetach |
84 | 83 | /// exception which detach the observer from the notifier. |
85 | 84 | /// |
86 | 85 | /// There are some place when the alteration observing is not completly |
diff --git a/lemon/bits/default_map.h b/lemon/bits/default_map.h
a
|
b
|
|
149 | 149 | |
150 | 150 | // #endif |
151 | 151 | |
152 | | /// \e |
| 152 | /// DefaultMap class |
153 | 153 | template <typename _Graph, typename _Item, typename _Value> |
154 | 154 | class DefaultMap |
155 | 155 | : public DefaultMapSelector<_Graph, _Item, _Value>::Map { |
diff --git a/lemon/color.h b/lemon/color.h
a
|
b
|
|
92 | 92 | /// Dark cyan color constant |
93 | 93 | extern const Color DARK_CYAN; |
94 | 94 | |
95 | | ///Map <tt>int</tt>s to different \ref Color "Color"s |
| 95 | ///Map <tt>int</tt>s to different <tt>Color</tt>s |
96 | 96 | |
97 | 97 | ///This map assigns one of the predefined \ref Color "Color"s to |
98 | 98 | ///each <tt>int</tt>. It is possible to change the colors as well as |
diff --git a/lemon/concepts/graph_components.h b/lemon/concepts/graph_components.h
a
|
b
|
|
982 | 982 | /// \brief Class describing the concept of graph maps |
983 | 983 | /// |
984 | 984 | /// This class describes the common interface of the graph maps |
985 | | /// (NodeMap, ArcMap), that is \ref maps-page "maps" which can be used to |
| 985 | /// (NodeMap, ArcMap), that is maps that can be used to |
986 | 986 | /// associate data to graph descriptors (nodes or arcs). |
987 | 987 | template <typename _Graph, typename _Item, typename _Value> |
988 | 988 | class GraphMap : public ReadWriteMap<_Item, _Value> { |
diff --git a/lemon/core.h b/lemon/core.h
a
|
b
|
|
1554 | 1554 | ///\note This is a dynamic data structure, therefore the data |
1555 | 1555 | ///structure is updated after each graph alteration. Thus although |
1556 | 1556 | ///this data structure is theoretically faster than \ref ArcLookUp |
1557 | | ///and \ref AllArcLookup, it often provides worse performance than |
| 1557 | ///and \ref AllArcLookUp, it often provides worse performance than |
1558 | 1558 | ///them. |
1559 | 1559 | Arc operator()(Node s, Node t, Arc p = INVALID) const { |
1560 | 1560 | if (p == INVALID) { |
… |
… |
|
1699 | 1699 | |
1700 | 1700 | ///Find an arc between two nodes. |
1701 | 1701 | |
1702 | | ///Find an arc between two nodes in time <em>O</em>(log<em>d</em>), where |
1703 | | ///<em>d</em> is the number of outgoing arcs of \c s. |
| 1702 | ///Find an arc between two nodes in time <em>O</em>(log<em>d</em>), |
| 1703 | ///where <em>d</em> is the number of outgoing arcs of \c s. |
1704 | 1704 | ///\param s The source node. |
1705 | 1705 | ///\param t The target node. |
1706 | 1706 | ///\return An arc from \c s to \c t if there exists, |
… |
… |
|
1817 | 1817 | ///for(Arc a = ae(u,v); a != INVALID; a=ae(u,v,a)) n++; |
1818 | 1818 | ///\endcode |
1819 | 1819 | /// |
1820 | | ///Finding the first arc take <em>O</em>(log<em>d</em>) time, where |
1821 | | ///<em>d</em> is the number of outgoing arcs of \c s. Then, the |
| 1820 | ///Finding the first arc take <em>O</em>(log<em>d</em>) time, |
| 1821 | ///where <em>d</em> is the number of outgoing arcs of \c s. Then the |
1822 | 1822 | ///consecutive arcs are found in constant time. |
1823 | 1823 | /// |
1824 | 1824 | ///\warning If you change the digraph, refresh() must be called before using |
diff --git a/lemon/dfs.h b/lemon/dfs.h
a
|
b
|
|
835 | 835 | typedef lemon::Path<Digraph> Path; |
836 | 836 | }; |
837 | 837 | |
838 | | /// Default traits class used by \ref DfsWizard |
| 838 | /// Default traits class used by DfsWizard |
839 | 839 | |
840 | 840 | /// To make it easier to use Dfs algorithm |
841 | 841 | /// we have created a wizard class. |
diff --git a/lemon/dijkstra.h b/lemon/dijkstra.h
a
|
b
|
|
453 | 453 | }; |
454 | 454 | |
455 | 455 | /// \brief \ref named-templ-param "Named parameter" for setting |
456 | | ///\ref OperationTraits type |
| 456 | ///\c OperationTraits type |
457 | 457 | /// |
458 | 458 | ///\ref named-templ-param "Named parameter" for setting |
459 | 459 | ///\ref OperationTraits type. |
… |
… |
|
1038 | 1038 | typedef lemon::Path<Digraph> Path; |
1039 | 1039 | }; |
1040 | 1040 | |
1041 | | /// Default traits class used by \ref DijkstraWizard |
| 1041 | /// Default traits class used by DijkstraWizard |
1042 | 1042 | |
1043 | 1043 | /// To make it easier to use Dijkstra algorithm |
1044 | 1044 | /// we have created a wizard class. |
diff --git a/lemon/dim2.h b/lemon/dim2.h
a
|
b
|
|
259 | 259 | |
260 | 260 | |
261 | 261 | |
262 | | /// Bounding box of plain vectors (\ref Point points). |
| 262 | /// Bounding box of plain vectors (points). |
263 | 263 | |
264 | 264 | /// A class to calculate or store the bounding box of plain vectors |
265 | | /// (\ref Point points). |
| 265 | /// (\ref Point "points"). |
266 | 266 | template<typename T> |
267 | 267 | class Box { |
268 | 268 | Point<T> _bottom_left, _top_right; |
… |
… |
|
573 | 573 | return os; |
574 | 574 | } |
575 | 575 | |
576 | | ///Map of x-coordinates of a \ref Point "Point"-map |
| 576 | ///Map of x-coordinates of a <tt>Point</tt>-map |
577 | 577 | |
| 578 | ///Map of x-coordinates of a \ref Point "Point"-map. |
578 | 579 | ///\ingroup maps |
579 | | ///Map of x-coordinates of a \ref Point "Point"-map. |
580 | | /// |
581 | 580 | template<class M> |
582 | 581 | class XMap |
583 | 582 | { |
… |
… |
|
592 | 591 | void set(Key k,Value v) {_map.set(k,typename M::Value(v,_map[k].y));} |
593 | 592 | }; |
594 | 593 | |
595 | | ///Returns an \ref XMap class |
| 594 | ///Returns an XMap class |
596 | 595 | |
597 | | ///This function just returns an \ref XMap class. |
| 596 | ///This function just returns an XMap class. |
598 | 597 | /// |
599 | 598 | ///\ingroup maps |
600 | 599 | ///\relates XMap |
… |
… |
|
610 | 609 | return XMap<M>(m); |
611 | 610 | } |
612 | 611 | |
613 | | ///Constant (read only) version of \ref XMap |
| 612 | ///Constant (read only) version of XMap |
614 | 613 | |
| 614 | ///Constant (read only) version of XMap. |
615 | 615 | ///\ingroup maps |
616 | | ///Constant (read only) version of \ref XMap |
617 | | /// |
618 | 616 | template<class M> |
619 | 617 | class ConstXMap |
620 | 618 | { |
… |
… |
|
628 | 626 | Value operator[](Key k) const {return _map[k].x;} |
629 | 627 | }; |
630 | 628 | |
631 | | ///Returns a \ref ConstXMap class |
| 629 | ///Returns a ConstXMap class |
632 | 630 | |
633 | | ///This function just returns a \ref ConstXMap class. |
| 631 | ///This function just returns a ConstXMap class. |
634 | 632 | /// |
635 | 633 | ///\ingroup maps |
636 | 634 | ///\relates ConstXMap |
… |
… |
|
640 | 638 | return ConstXMap<M>(m); |
641 | 639 | } |
642 | 640 | |
643 | | ///Map of y-coordinates of a \ref Point "Point"-map |
| 641 | ///Map of y-coordinates of a <tt>Point</tt>-map |
644 | 642 | |
| 643 | ///Map of y-coordinates of a \ref Point "Point"-map. |
645 | 644 | ///\ingroup maps |
646 | | ///Map of y-coordinates of a \ref Point "Point"-map. |
647 | | /// |
648 | 645 | template<class M> |
649 | 646 | class YMap |
650 | 647 | { |
… |
… |
|
659 | 656 | void set(Key k,Value v) {_map.set(k,typename M::Value(_map[k].x,v));} |
660 | 657 | }; |
661 | 658 | |
662 | | ///Returns a \ref YMap class |
| 659 | ///Returns a YMap class |
663 | 660 | |
664 | | ///This function just returns a \ref YMap class. |
| 661 | ///This function just returns a YMap class. |
665 | 662 | /// |
666 | 663 | ///\ingroup maps |
667 | 664 | ///\relates YMap |
… |
… |
|
677 | 674 | return YMap<M>(m); |
678 | 675 | } |
679 | 676 | |
680 | | ///Constant (read only) version of \ref YMap |
| 677 | ///Constant (read only) version of YMap |
681 | 678 | |
| 679 | ///Constant (read only) version of YMap. |
682 | 680 | ///\ingroup maps |
683 | | ///Constant (read only) version of \ref YMap |
684 | | /// |
685 | 681 | template<class M> |
686 | 682 | class ConstYMap |
687 | 683 | { |
… |
… |
|
695 | 691 | Value operator[](Key k) const {return _map[k].y;} |
696 | 692 | }; |
697 | 693 | |
698 | | ///Returns a \ref ConstYMap class |
| 694 | ///Returns a ConstYMap class |
699 | 695 | |
700 | | ///This function just returns a \ref ConstYMap class. |
| 696 | ///This function just returns a ConstYMap class. |
701 | 697 | /// |
702 | 698 | ///\ingroup maps |
703 | 699 | ///\relates ConstYMap |
… |
… |
|
708 | 704 | } |
709 | 705 | |
710 | 706 | |
711 | | ///\brief Map of the \ref Point::normSquare() "normSquare()" |
712 | | ///of a \ref Point "Point"-map |
| 707 | ///\brief Map of the normSquare() of a <tt>Point</tt>-map |
713 | 708 | /// |
714 | 709 | ///Map of the \ref Point::normSquare() "normSquare()" |
715 | 710 | ///of a \ref Point "Point"-map. |
… |
… |
|
727 | 722 | Value operator[](Key k) const {return _map[k].normSquare();} |
728 | 723 | }; |
729 | 724 | |
730 | | ///Returns a \ref NormSquareMap class |
| 725 | ///Returns a NormSquareMap class |
731 | 726 | |
732 | | ///This function just returns a \ref NormSquareMap class. |
| 727 | ///This function just returns a NormSquareMap class. |
733 | 728 | /// |
734 | 729 | ///\ingroup maps |
735 | 730 | ///\relates NormSquareMap |
diff --git a/lemon/graph_to_eps.h b/lemon/graph_to_eps.h
a
|
b
|
|
62 | 62 | }; |
63 | 63 | } |
64 | 64 | |
65 | | ///Default traits class of \ref GraphToEps |
| 65 | ///Default traits class of GraphToEps |
66 | 66 | |
67 | 67 | ///Default traits class of \ref GraphToEps. |
68 | 68 | /// |
diff --git a/lemon/list_graph.h b/lemon/list_graph.h
a
|
b
|
|
413 | 413 | /// Change the source of \c a to \c n |
414 | 414 | /// |
415 | 415 | ///\note The <tt>InArcIt</tt>s referencing the changed arc remain |
416 | | ///valid. However the <tt>ArcIt<tt>s and <tt>OutArcIt</tt>s are |
| 416 | ///valid. However the <tt>ArcIt</tt>s and <tt>OutArcIt</tt>s are |
417 | 417 | ///invalidated. |
418 | 418 | /// |
419 | 419 | ///\warning This functionality cannot be used together with the Snapshot |
diff --git a/lemon/maps.h b/lemon/maps.h
a
|
b
|
|
43 | 43 | template<typename K, typename V> |
44 | 44 | class MapBase { |
45 | 45 | public: |
46 | | /// \biref The key type of the map. |
| 46 | /// \brief The key type of the map. |
47 | 47 | typedef K Key; |
48 | 48 | /// \brief The value type of the map. |
49 | 49 | /// (The type of objects associated with the keys). |
… |
… |
|
2266 | 2266 | /// \brief Constructor |
2267 | 2267 | /// |
2268 | 2268 | /// Constructor |
2269 | | /// \param _digraph The digraph that the map belongs to. |
| 2269 | /// \param digraph The digraph that the map belongs to. |
2270 | 2270 | explicit SourceMap(const Digraph& digraph) : _digraph(digraph) {} |
2271 | 2271 | |
2272 | 2272 | /// \brief The subscript operator. |
… |
… |
|
2305 | 2305 | /// \brief Constructor |
2306 | 2306 | /// |
2307 | 2307 | /// Constructor |
2308 | | /// \param _digraph The digraph that the map belongs to. |
| 2308 | /// \param digraph The digraph that the map belongs to. |
2309 | 2309 | explicit TargetMap(const Digraph& digraph) : _digraph(digraph) {} |
2310 | 2310 | |
2311 | 2311 | /// \brief The subscript operator. |
… |
… |
|
2344 | 2344 | /// \brief Constructor |
2345 | 2345 | /// |
2346 | 2346 | /// Constructor |
2347 | | /// \param _graph The graph that the map belongs to. |
| 2347 | /// \param graph The graph that the map belongs to. |
2348 | 2348 | explicit ForwardMap(const Graph& graph) : _graph(graph) {} |
2349 | 2349 | |
2350 | 2350 | /// \brief The subscript operator. |
… |
… |
|
2383 | 2383 | /// \brief Constructor |
2384 | 2384 | /// |
2385 | 2385 | /// Constructor |
2386 | | /// \param _graph The graph that the map belongs to. |
| 2386 | /// \param graph The graph that the map belongs to. |
2387 | 2387 | explicit BackwardMap(const Graph& graph) : _graph(graph) {} |
2388 | 2388 | |
2389 | 2389 | /// \brief The subscript operator. |
diff --git a/lemon/path.h b/lemon/path.h
a
|
b
|
|
849 | 849 | /// \brief Return true when the path is empty. |
850 | 850 | int empty() const { return len == 0; } |
851 | 851 | |
852 | | /// \break Erase all arcs in the digraph. |
| 852 | /// \brief Erase all arcs in the digraph. |
853 | 853 | void clear() { |
854 | 854 | len = 0; |
855 | 855 | if (arcs) delete[] arcs; |
diff --git a/lemon/smart_graph.h b/lemon/smart_graph.h
a
|
b
|
|
365 | 365 | ///Constructor that immediately makes a snapshot |
366 | 366 | |
367 | 367 | ///This constructor immediately makes a snapshot of the digraph. |
368 | | ///\param _g The digraph we make a snapshot of. |
| 368 | ///\param graph The digraph we make a snapshot of. |
369 | 369 | Snapshot(SmartDigraph &graph) : _graph(&graph) { |
370 | 370 | node_num=_graph->nodes.size(); |
371 | 371 | arc_num=_graph->arcs.size(); |
… |
… |
|
377 | 377 | /// |
378 | 378 | ///This function can be called more than once. In case of a repeated |
379 | 379 | ///call, the previous snapshot gets lost. |
380 | | ///\param _g The digraph we make the snapshot of. |
| 380 | ///\param graph The digraph we make the snapshot of. |
381 | 381 | void save(SmartDigraph &graph) |
382 | 382 | { |
383 | 383 | _graph=&graph; |
… |
… |
|
775 | 775 | ///Constructor that immediately makes a snapshot |
776 | 776 | |
777 | 777 | ///This constructor immediately makes a snapshot of the digraph. |
778 | | ///\param g The digraph we make a snapshot of. |
| 778 | ///\param graph The digraph we make a snapshot of. |
779 | 779 | Snapshot(SmartGraph &graph) { |
780 | 780 | graph.saveSnapshot(*this); |
781 | 781 | } |
… |
… |
|
786 | 786 | /// |
787 | 787 | ///This function can be called more than once. In case of a repeated |
788 | 788 | ///call, the previous snapshot gets lost. |
789 | | ///\param g The digraph we make the snapshot of. |
| 789 | ///\param graph The digraph we make the snapshot of. |
790 | 790 | void save(SmartGraph &graph) |
791 | 791 | { |
792 | 792 | graph.saveSnapshot(*this); |
diff --git a/lemon/time_measure.h b/lemon/time_measure.h
a
|
b
|
|
311 | 311 | ///\name Control the state of the timer |
312 | 312 | ///Basically a Timer can be either running or stopped, |
313 | 313 | ///but it provides a bit finer control on the execution. |
314 | | ///The \ref Timer also counts the number of \ref start() |
315 | | ///executions, and is stops only after the same amount (or more) |
316 | | ///\ref stop() "stop()"s. This can be useful e.g. to compute |
317 | | ///the running time |
| 314 | ///The \ref lemon::Timer "Timer" also counts the number of |
| 315 | ///\ref lemon::Timer::start() "start()" executions, and it stops |
| 316 | ///only after the same amount (or more) \ref lemon::Timer::stop() |
| 317 | ///"stop()"s. This can be useful e.g. to compute the running time |
318 | 318 | ///of recursive functions. |
319 | | /// |
320 | 319 | |
321 | 320 | ///@{ |
322 | 321 | |
… |
… |
|
472 | 471 | ///@} |
473 | 472 | }; |
474 | 473 | |
475 | | ///Same as \ref Timer but prints a report on destruction. |
| 474 | ///Same as Timer but prints a report on destruction. |
476 | 475 | |
477 | 476 | ///Same as \ref Timer but prints a report on destruction. |
478 | 477 | ///This example shows its usage. |
… |
… |
|
491 | 490 | std::string _title; |
492 | 491 | std::ostream &_os; |
493 | 492 | public: |
494 | | ///\e |
| 493 | ///Constructor |
495 | 494 | |
| 495 | ///Constructor. |
496 | 496 | ///\param title This text will be printed before the ellapsed time. |
497 | 497 | ///\param os The stream to print the report to. |
498 | 498 | ///\param run Sets whether the timer should start immediately. |
499 | | |
500 | 499 | TimeReport(std::string title,std::ostream &os=std::cerr,bool run=true) |
501 | 500 | : Timer(run), _title(title), _os(os){} |
502 | | ///\e Prints the ellapsed time on destruction. |
| 501 | ///Destructor that prints the ellapsed time |
503 | 502 | ~TimeReport() |
504 | 503 | { |
505 | 504 | _os << _title << *this << std::endl; |
506 | 505 | } |
507 | 506 | }; |
508 | 507 | |
509 | | ///'Do nothing' version of \ref TimeReport |
| 508 | ///'Do nothing' version of TimeReport |
510 | 509 | |
511 | 510 | ///\sa TimeReport |
512 | 511 | /// |