Changeset 584:33c6b6e755cd in lemon-main
- Timestamp:
- 04/15/09 02:04:37 (16 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 19 edited
Legend:
- Unmodified
- Added
- Removed
-
lemon/bin_heap.h
r559 r584 74 74 /// \c PRE_HEAP (<tt>-1</tt>) to any element to be put in the heap. 75 75 enum State { 76 IN_HEAP = 0, ///< \e77 PRE_HEAP = -1, ///< \e78 POST_HEAP = -2 ///< \e76 IN_HEAP = 0, ///< = 0. 77 PRE_HEAP = -1, ///< = -1. 78 POST_HEAP = -2 ///< = -2. 79 79 }; 80 80 -
lemon/concepts/graph_components.h
r580 r584 603 603 typedef IterableDigraphComponent Digraph; 604 604 605 /// \name Base iteration605 /// \name Base Iteration 606 606 /// 607 607 /// This interface provides functions for iteration on digraph items. … … 655 655 /// @} 656 656 657 /// \name Class based iteration657 /// \name Class Based Iteration 658 658 /// 659 659 /// This interface provides iterator classes for digraph items. … … 780 780 typedef IterableGraphComponent Graph; 781 781 782 /// \name Base iteration782 /// \name Base Iteration 783 783 /// 784 784 /// This interface provides functions for iteration on edges. … … 819 819 /// @} 820 820 821 /// \name Class based iteration821 /// \name Class Based Iteration 822 822 /// 823 823 /// This interface provides iterator classes for edges. -
lemon/concepts/heap.h
r559 r584 72 72 /// \c PRE_HEAP (<tt>-1</tt>) to any element to be put in the heap. 73 73 enum State { 74 IN_HEAP = 0, ///< The "in heap" state constant.75 PRE_HEAP = -1, ///< The "pre heap" state constant.76 POST_HEAP = -2 ///< The "post heap" state constant.74 IN_HEAP = 0, ///< = 0. The "in heap" state constant. 75 PRE_HEAP = -1, ///< = -1. The "pre heap" state constant. 76 POST_HEAP = -2 ///< = -2. The "post heap" state constant. 77 77 }; 78 78 -
lemon/dfs.h
r503 r584 207 207 typedef Dfs Create; 208 208 209 ///\name Named template parameters209 ///\name Named Template Parameters 210 210 211 211 ///@{ -
lemon/dijkstra.h
r559 r584 287 287 typedef Dijkstra Create; 288 288 289 ///\name Named template parameters289 ///\name Named Template Parameters 290 290 291 291 ///@{ -
lemon/dimacs.h
r561 r584 38 38 struct DimacsDescriptor 39 39 { 40 ///File type enum 41 enum Type 42 { 43 NONE, MIN, MAX, SP, MAT 44 }; 40 ///\brief DIMACS file type enum 41 /// 42 ///DIMACS file type enum. 43 enum Type { 44 NONE, ///< Undefined type. 45 MIN, ///< DIMACS file type for minimum cost flow problems. 46 MAX, ///< DIMACS file type for maximum flow problems. 47 SP, ///< DIMACS file type for shostest path problems. 48 MAT ///< DIMACS file type for plain graphs and matching problems. 49 }; 45 50 ///The file type 46 51 Type type; … … 50 55 int edgeNum; 51 56 int lineShift; 52 /// Constructor. Sets the type toNONE.57 ///Constructor. It sets the type to \c NONE. 53 58 DimacsDescriptor() : type(NONE) {} 54 59 }; … … 56 61 ///Discover the type of a DIMACS file 57 62 58 /// It starts seeking the beginning of the file for the problem type59 /// and size info. The found data is returned in a special struct60 /// that can be evaluated and passed to the appropriate reader61 /// function.63 ///This function starts seeking the beginning of the given file for the 64 ///problem type and size info. 65 ///The found data is returned in a special struct that can be evaluated 66 ///and passed to the appropriate reader function. 62 67 DimacsDescriptor dimacsType(std::istream& is) 63 68 { … … 97 102 98 103 99 100 /// DIMACS minimum cost flow reader function. 104 /// \brief DIMACS minimum cost flow reader function. 101 105 /// 102 106 /// This function reads a minimum cost flow instance from DIMACS format, … … 254 258 } 255 259 256 /// DIMACS maximum flow reader function.260 /// \brief DIMACS maximum flow reader function. 257 261 /// 258 262 /// This function reads a maximum flow instance from DIMACS format, … … 288 292 } 289 293 290 /// DIMACS shortest path reader function.294 /// \brief DIMACS shortest path reader function. 291 295 /// 292 296 /// This function reads a shortest path instance from DIMACS format, … … 314 318 } 315 319 316 /// DIMACS capacitated digraph reader function.320 /// \brief DIMACS capacitated digraph reader function. 317 321 /// 318 322 /// This function reads an arc capacitated digraph instance from … … 360 364 } 361 365 362 /// DIMACS plain (di)graph reader function.363 /// 364 /// This function reads a (di)graph without any designated nodes and365 /// maps from DIMACS format, i.e. from DIMACS files having a line366 /// starting with366 /// \brief DIMACS plain (di)graph reader function. 367 /// 368 /// This function reads a plain (di)graph without any designated nodes 369 /// and maps (e.g. a matching instance) from DIMACS format, i.e. from 370 /// DIMACS files having a line starting with 367 371 /// \code 368 372 /// p mat -
lemon/graph_to_eps.h
r559 r584 269 269 ///\image html nodeshape_1.png 270 270 ///\image latex nodeshape_1.eps "SQUARE shape (1)" width=2cm 271 ///272 271 SQUARE=1, 273 272 /// = 2 274 273 ///\image html nodeshape_2.png 275 274 ///\image latex nodeshape_2.eps "DIAMOND shape (2)" width=2cm 276 ///277 275 DIAMOND=2, 278 276 /// = 3 279 277 ///\image html nodeshape_3.png 280 ///\image latex nodeshape_2.eps "MALE shape (4)" width=2cm 281 /// 278 ///\image latex nodeshape_3.eps "MALE shape (3)" width=2cm 282 279 MALE=3, 283 280 /// = 4 284 281 ///\image html nodeshape_4.png 285 ///\image latex nodeshape_2.eps "FEMALE shape (4)" width=2cm 286 /// 282 ///\image latex nodeshape_4.eps "FEMALE shape (4)" width=2cm 287 283 FEMALE=4 288 284 }; -
lemon/kruskal.h
r440 r584 249 249 /// \ingroup spantree 250 250 /// 251 /// \brief Kruskal algorithm to finda minimum cost spanning tree of251 /// \brief Kruskal's algorithm for finding a minimum cost spanning tree of 252 252 /// a graph. 253 253 /// 254 254 /// This function runs Kruskal's algorithm to find a minimum cost 255 /// spanning tree .255 /// spanning tree of a graph. 256 256 /// Due to some C++ hacking, it accepts various input and output types. 257 257 /// … … 265 265 /// It can be one of the following choices. 266 266 /// - An STL compatible 'Forward Container' with 267 /// <tt>std::pair<GR::Arc, X></tt> or268 /// <tt>std::pair<GR::Edge, X></tt> as its <tt>value_type</tt>, where269 /// \c Xis the type of the costs. The pairs indicates the arcs/edges267 /// <tt>std::pair<GR::Arc,C></tt> or 268 /// <tt>std::pair<GR::Edge,C></tt> as its <tt>value_type</tt>, where 269 /// \c C is the type of the costs. The pairs indicates the arcs/edges 270 270 /// along with the assigned cost. <em>They must be in a 271 271 /// cost-ascending order.</em> … … 274 274 /// 275 275 /// \retval out Here we also have a choice. 276 /// - It can be a writable \c bool arc/edge map. After running the277 /// algorithm it will contain the found minimum cost spanning276 /// - It can be a writable arc/edge map with \c bool value type. After 277 /// running the algorithm it will contain the found minimum cost spanning 278 278 /// tree: the value of an arc/edge will be set to \c true if it belongs 279 279 /// to the tree, otherwise it will be set to \c false. The value of … … 302 302 303 303 #ifdef DOXYGEN 304 template < class Graph, class In, classOut>305 Value kruskal( GR const& g, const In& in, Out& out)304 template <typename Graph, typename In, typename Out> 305 Value kruskal(const Graph& g, const In& in, Out& out) 306 306 #else 307 307 template <class Graph, class In, class Out> … … 315 315 316 316 317 318 319 317 template <class Graph, class In, class Out> 320 318 inline typename _kruskal_bits::KruskalValueSelector<In>::Value -
lemon/lgf_reader.h
r559 r584 594 594 public: 595 595 596 /// \name Reading rules596 /// \name Reading Rules 597 597 /// @{ 598 598 … … 699 699 /// @} 700 700 701 /// \name Select section by name701 /// \name Select Section by Name 702 702 /// @{ 703 703 … … 728 728 /// @} 729 729 730 /// \name Using previously constructed node or arc set730 /// \name Using Previously Constructed Node or Arc Set 731 731 /// @{ 732 732 … … 1117 1117 public: 1118 1118 1119 /// \name Execution of the reader1119 /// \name Execution of the Reader 1120 1120 /// @{ 1121 1121 … … 1390 1390 public: 1391 1391 1392 /// \name Reading rules1392 /// \name Reading Rules 1393 1393 /// @{ 1394 1394 … … 1541 1541 /// @} 1542 1542 1543 /// \name Select section by name1543 /// \name Select Section by Name 1544 1544 /// @{ 1545 1545 … … 1570 1570 /// @} 1571 1571 1572 /// \name Using previously constructed node or edge set1572 /// \name Using Previously Constructed Node or Edge Set 1573 1573 /// @{ 1574 1574 … … 1960 1960 public: 1961 1961 1962 /// \name Execution of the reader1962 /// \name Execution of the Reader 1963 1963 /// @{ 1964 1964 … … 2159 2159 public: 2160 2160 2161 /// \name Section readers2161 /// \name Section Readers 2162 2162 /// @{ 2163 2163 … … 2258 2258 2259 2259 2260 /// \name Execution of the reader2260 /// \name Execution of the Reader 2261 2261 /// @{ 2262 2262 … … 2440 2440 2441 2441 2442 /// \name Node sections2442 /// \name Node Sections 2443 2443 /// @{ 2444 2444 … … 2466 2466 /// @} 2467 2467 2468 /// \name Arc/Edge sections2468 /// \name Arc/Edge Sections 2469 2469 /// @{ 2470 2470 … … 2524 2524 /// @} 2525 2525 2526 /// \name Attribute sections2526 /// \name Attribute Sections 2527 2527 /// @{ 2528 2528 … … 2550 2550 /// @} 2551 2551 2552 /// \name Extra sections2552 /// \name Extra Sections 2553 2553 /// @{ 2554 2554 … … 2626 2626 public: 2627 2627 2628 /// \name Execution of the contents reader2628 /// \name Execution of the Contents Reader 2629 2629 /// @{ 2630 2630 -
lemon/lgf_writer.h
r559 r584 539 539 public: 540 540 541 /// \name Writing rules541 /// \name Writing Rules 542 542 /// @{ 543 543 … … 642 642 } 643 643 644 /// \name Section captions644 /// \name Section Captions 645 645 /// @{ 646 646 … … 669 669 } 670 670 671 /// \name Skipping section671 /// \name Skipping Section 672 672 /// @{ 673 673 … … 886 886 public: 887 887 888 /// \name Execution of the writer888 /// \name Execution of the Writer 889 889 /// @{ 890 890 … … 1107 1107 public: 1108 1108 1109 /// \name Writing rules1109 /// \name Writing Rules 1110 1110 /// @{ 1111 1111 … … 1256 1256 } 1257 1257 1258 /// \name Section captions1258 /// \name Section Captions 1259 1259 /// @{ 1260 1260 … … 1283 1283 } 1284 1284 1285 /// \name Skipping section1285 /// \name Skipping Section 1286 1286 /// @{ 1287 1287 … … 1500 1500 public: 1501 1501 1502 /// \name Execution of the writer1502 /// \name Execution of the Writer 1503 1503 /// @{ 1504 1504 … … 1652 1652 public: 1653 1653 1654 /// \name Section writers1654 /// \name Section Writers 1655 1655 /// @{ 1656 1656 … … 1719 1719 1720 1720 1721 /// \name Execution of the writer1721 /// \name Execution of the Writer 1722 1722 /// @{ 1723 1723 -
lemon/lp_base.h
r576 r584 53 53 ///Possible outcomes of an LP solving procedure 54 54 enum SolveExitStatus { 55 /// Thismeans that the problem has been successfully solved: either55 /// = 0. It means that the problem has been successfully solved: either 56 56 ///an optimal solution has been found or infeasibility/unboundedness 57 57 ///has been proved. 58 58 SOLVED = 0, 59 /// Any other case (including the case when some user specified60 ///limit has been exceeded) 59 /// = 1. Any other case (including the case when some user specified 60 ///limit has been exceeded). 61 61 UNSOLVED = 1 62 62 }; … … 72 72 ///Enum for \c messageLevel() parameter 73 73 enum MessageLevel { 74 /// no output (default value)74 /// No output (default value). 75 75 MESSAGE_NOTHING, 76 /// error messages only76 /// Error messages only. 77 77 MESSAGE_ERROR, 78 /// warnings78 /// Warnings. 79 79 MESSAGE_WARNING, 80 /// normal output80 /// Normal output. 81 81 MESSAGE_NORMAL, 82 /// verbose output82 /// Verbose output. 83 83 MESSAGE_VERBOSE 84 84 }; … … 1006 1006 const char* solverName() const {return _solverName();} 1007 1007 1008 ///\name Build up and modify the LP1008 ///\name Build Up and Modify the LP 1009 1009 1010 1010 ///@{ … … 1789 1789 /// The problem types for primal and dual problems 1790 1790 enum ProblemType { 1791 /// Feasible solution hasn't been found (but may exist).1791 /// = 0. Feasible solution hasn't been found (but may exist). 1792 1792 UNDEFINED = 0, 1793 /// The problem has no feasible solution1793 /// = 1. The problem has no feasible solution. 1794 1794 INFEASIBLE = 1, 1795 /// Feasible solution found1795 /// = 2. Feasible solution found. 1796 1796 FEASIBLE = 2, 1797 /// Optimal solution exists and found1797 /// = 3. Optimal solution exists and found. 1798 1798 OPTIMAL = 3, 1799 /// The cost function is unbounded1799 /// = 4. The cost function is unbounded. 1800 1800 UNBOUNDED = 4 1801 1801 }; … … 1853 1853 ///@} 1854 1854 1855 ///\name Obtain the solution1855 ///\name Obtain the Solution 1856 1856 1857 1857 ///@{ … … 1975 1975 /// The problem types for MIP problems 1976 1976 enum ProblemType { 1977 /// Feasible solution hasn't been found (but may exist).1977 /// = 0. Feasible solution hasn't been found (but may exist). 1978 1978 UNDEFINED = 0, 1979 /// The problem has no feasible solution1979 /// = 1. The problem has no feasible solution. 1980 1980 INFEASIBLE = 1, 1981 /// Feasible solution found1981 /// = 2. Feasible solution found. 1982 1982 FEASIBLE = 2, 1983 /// Optimal solution exists and found1983 /// = 3. Optimal solution exists and found. 1984 1984 OPTIMAL = 3, 1985 ///The cost function is unbounded 1986 /// 1987 ///The Mip or at least the relaxed problem is unbounded 1985 /// = 4. The cost function is unbounded. 1986 ///The Mip or at least the relaxed problem is unbounded. 1988 1987 UNBOUNDED = 4 1989 1988 }; … … 2007 2006 ///@} 2008 2007 2009 ///\name Set ting column type2008 ///\name Set Column Type 2010 2009 ///@{ 2011 2010 2012 2011 ///Possible variable (column) types (e.g. real, integer, binary etc.) 2013 2012 enum ColTypes { 2014 /// Continuous variable (default)2013 /// = 0. Continuous variable (default). 2015 2014 REAL = 0, 2016 /// Integer variable2015 /// = 1. Integer variable. 2017 2016 INTEGER = 1 2018 2017 }; … … 2035 2034 ///@} 2036 2035 2037 ///\name Obtain the solution2036 ///\name Obtain the Solution 2038 2037 2039 2038 ///@{ -
lemon/maps.h
r572 r584 2729 2729 /// \brief Potential difference map 2730 2730 /// 2731 /// Potential Map returns the difference between the potentials of the2732 /// source and target nodes of each arc in a digraph, i.e. it returns2731 /// PotentialDifferenceMap returns the difference between the potentials of 2732 /// the source and target nodes of each arc in a digraph, i.e. it returns 2733 2733 /// \code 2734 2734 /// potential[gr.target(arc)] - potential[gr.source(arc)]. -
lemon/min_cost_arborescence.h
r581 r584 91 91 /// \ingroup spantree 92 92 /// 93 /// \brief %MinCostArborescence algorithm class.93 /// \brief Minimum Cost Arborescence algorithm class. 94 94 /// 95 95 /// This class provides an efficient implementation of 96 /// %MinCostArborescence algorithm. The arborescence is a tree96 /// Minimum Cost Arborescence algorithm. The arborescence is a tree 97 97 /// which is directed from a given source node of the digraph. One or 98 98 /// more sources should be given for the algorithm and it will calculate … … 391 391 public: 392 392 393 /// \name Named template parameters393 /// \name Named Template Parameters 394 394 395 395 /// @{ … … 631 631 /// @} 632 632 633 /// \name Execution control633 /// \name Execution Control 634 634 /// The simplest way to execute the algorithm is to use 635 635 /// one of the member functions called \c run(...). \n -
lemon/random.h
r559 r584 660 660 /// @} 661 661 662 ///\name Uniform distributions662 ///\name Uniform Distributions 663 663 /// 664 664 /// @{ … … 763 763 /// @} 764 764 765 ///\name Non-uniform distributions765 ///\name Non-uniform Distributions 766 766 /// 767 767 ///@{ … … 939 939 ///@} 940 940 941 ///\name Two dimensional distributions941 ///\name Two Dimensional Distributions 942 942 /// 943 943 ///@{ -
lemon/suurballe.h
r559 r584 289 289 } 290 290 291 /// \name Execution control291 /// \name Execution Control 292 292 /// The simplest way to execute the algorithm is to call the run() 293 293 /// function. -
lemon/time_measure.h
r548 r584 288 288 Timer(bool run=true) :_running(run) {_reset();} 289 289 290 ///\name Control the state of the timer290 ///\name Control the State of the Timer 291 291 ///Basically a Timer can be either running or stopped, 292 292 ///but it provides a bit finer control on the execution. … … 396 396 ///@} 397 397 398 ///\name Query Functions for the ellapsed time398 ///\name Query Functions for the Ellapsed Time 399 399 400 400 ///@{ -
tools/dimacs-solver.cc
r569 r584 24 24 /// 25 25 /// See 26 /// \ verbatim27 /// dimacs-solver --help28 /// \end verbatim26 /// \code 27 /// dimacs-solver --help 28 /// \endcode 29 29 /// for more info on usage. 30 ///31 30 32 31 #include <iostream> -
tools/dimacs-to-lgf.cc
r561 r584 25 25 /// 26 26 /// See 27 /// \verbatim 28 /// dimacs-to-lgf --help 29 /// \endverbatim 30 /// for more info on usage. 31 /// 27 /// \code 28 /// dimacs-to-lgf --help 29 /// \endcode 30 /// for more info on the usage. 32 31 33 32 #include <iostream> -
tools/lgf-gen.cc
r570 r584 24 24 /// 25 25 /// See 26 /// \ verbatim27 /// lgf-gen --help28 /// \end verbatim26 /// \code 27 /// lgf-gen --help 28 /// \endcode 29 29 /// for more info on the usage. 30 ///31 32 30 33 31 #include <algorithm>
Note: See TracChangeset
for help on using the changeset viewer.