[Lemon-commits] [lemon_svn] alpar: r1027 - hugo/trunk/src/work/marci/lp

Lemon SVN svn at lemon.cs.elte.hu
Mon Nov 6 20:42:48 CET 2006


Author: alpar
Date: Thu Aug 19 13:31:40 2004
New Revision: 1027

Modified:
   hugo/trunk/src/work/marci/lp/lp_solver_wrapper.h

Log:
Add empty docs in order to make the functions and classes visible in
doxygen.


Modified: hugo/trunk/src/work/marci/lp/lp_solver_wrapper.h
==============================================================================
--- hugo/trunk/src/work/marci/lp/lp_solver_wrapper.h	(original)
+++ hugo/trunk/src/work/marci/lp/lp_solver_wrapper.h	Thu Aug 19 13:31:40 2004
@@ -2,6 +2,10 @@
 #ifndef HUGO_LP_SOLVER_WRAPPER_H
 #define HUGO_LP_SOLVER_WRAPPER
 
+///\ingroup misc
+///\file
+///\brief Dijkstra algorithm.
+
 // #include <stdio.h>
 #include <stdlib.h>
 // #include <stdio>
@@ -31,6 +35,10 @@
 
 namespace hugo {
 
+  
+  /// \addtogroup misc
+  /// @{
+
   /// \brief A partitioned vector with iterable classes.
   ///
   /// This class implements a container in which the data is stored in an 
@@ -119,6 +127,7 @@
     T& operator[](ClassIt it) { return nodes[it.i].data; }
     /// Returns the data pointed by \c it.
     const T& operator[](ClassIt it) const { return nodes[it.i].data; }
+    ///.
     class ClassIt {
       friend class IterablePartition;
     protected:
@@ -184,17 +193,25 @@
 //   };
 
   public:
+    ///.
     LPX* lp;
+    ///.
     typedef IterablePartition<int>::ClassIt RowIt;
+    ///.
     IterablePartition<int> row_iter_map;
+    ///.
     typedef IterablePartition<int>::ClassIt ColIt;
+    ///.
     IterablePartition<int> col_iter_map;
     //std::vector<int> row_id_to_lp_row_id;
     //std::vector<int> col_id_to_lp_col_id;
+    ///.
     const int VALID_ID;
+    ///.
     const int INVALID_ID;
 
   public:
+    ///.
     LPSolverWrapper() : lp(lpx_create_prob()), 
 			row_iter_map(2), 
 			col_iter_map(2), 
@@ -202,15 +219,19 @@
 			VALID_ID(0), INVALID_ID(1) {
       lpx_set_int_parm(lp, LPX_K_DUAL, 1);
     }
+    ///.
     ~LPSolverWrapper() {
       lpx_delete_prob(lp);
     }
+    ///.
     void setMinimize() { 
       lpx_set_obj_dir(lp, LPX_MIN);
     }
+    ///.
     void setMaximize() { 
       lpx_set_obj_dir(lp, LPX_MAX);
     }
+    ///.
     ColIt addCol() {
       int i=lpx_add_cols(lp, 1);  
       ColIt col_it;
@@ -229,6 +250,7 @@
 //    lpx_set_obj_coef(lp, i, cost[e]);    
       return col_it;
     }
+    ///.
     RowIt addRow() {
       int i=lpx_add_rows(lp, 1);  
       RowIt row_it;
@@ -242,6 +264,7 @@
       return row_it;
     }
     //pair<RowIt, double>-bol kell megadni egy std range-et
+    ///.
     template <typename Begin, typename End>
     void setColCoeffs(const ColIt& col_it, 
 		      Begin begin, End end) {
@@ -259,6 +282,7 @@
       delete [] doubles;
     }
     //pair<ColIt, double>-bol kell megadni egy std range-et
+    ///.
     template <typename Begin, typename End>
     void setRowCoeffs(const RowIt& row_it, 
 		      Begin begin, End end) {
@@ -275,6 +299,7 @@
       delete [] indices;
       delete [] doubles;
     }
+    ///.
     void eraseCol(const ColIt& col_it) {
       col_iter_map.set(col_it, VALID_ID, INVALID_ID);
       int cols[2];
@@ -287,6 +312,7 @@
 	if (col_iter_map[it]>cols[1]) --col_iter_map[it];
       }
     }
+    ///.
     void eraseRow(const RowIt& row_it) {
       row_iter_map.set(row_it, VALID_ID, INVALID_ID);
       int rows[2];
@@ -299,13 +325,16 @@
 	if (row_iter_map[it]>rows[1]) --row_iter_map[it];
       }
     }
+    ///.
     void setColBounds(const ColIt& col_it, int bound_type, 
 		      double lo, double up) {
       lpx_set_col_bnds(lp, col_iter_map[col_it], bound_type, lo, up);
     }
+    ///.
     void setObjCoef(const ColIt& col_it, double obj_coef) { 
       lpx_set_obj_coef(lp, col_iter_map[col_it], obj_coef);
     }
+    ///.
     void setRowBounds(const RowIt& row_it, int bound_type, 
 		      double lo, double up) {
       lpx_set_row_bnds(lp, row_iter_map[row_it], bound_type, lo, up);
@@ -313,16 +342,25 @@
 //   void setObjCoef(const RowIt& row_it, double obj_coef) { 
 //     lpx_set_obj_coef(lp, row_iter_map[row_it], obj_coef);
 //   }
+    ///.
     void solveSimplex() { lpx_simplex(lp); }
+    ///.
     void solvePrimalSimplex() { lpx_simplex(lp); }
+    ///.
     void solveDualSimplex() { lpx_simplex(lp); }
+    ///.
     double getPrimal(const ColIt& col_it) {
       return lpx_get_col_prim(lp, col_iter_map[col_it]);
     }
+    ///.
     double getObjVal() { return lpx_get_obj_val(lp); }
+    ///.
     int rowNum() const { return lpx_get_num_rows(lp); }
+    ///.
     int colNum() const { return lpx_get_num_cols(lp); }
+    ///.
     int warmUp() { return lpx_warm_up(lp); }
+    ///.
     void printWarmUpStatus(int i) {
       switch (i) {
 	case LPX_E_OK: cout << "LPX_E_OK" << endl; break;
@@ -331,7 +369,9 @@
 	case LPX_E_SING: cout << "LPX_E_SING" << endl; break;
       }
     }
+    ///.
     int getPrimalStatus() { return lpx_get_prim_stat(lp); }
+    ///.
     void printPrimalStatus(int i) {
       switch (i) {
 	case LPX_P_UNDEF: cout << "LPX_P_UNDEF" << endl; break;
@@ -340,7 +380,9 @@
 	case LPX_P_NOFEAS: cout << "LPX_P_NOFEAS" << endl; break;
       }
     }
+    ///.
     int getDualStatus() { return lpx_get_dual_stat(lp); }
+    ///.
     void printDualStatus(int i) {
       switch (i) {
 	case LPX_D_UNDEF: cout << "LPX_D_UNDEF" << endl; break;
@@ -353,6 +395,7 @@
     int getRowStat(const RowIt& row_it) { 
       return lpx_get_row_stat(lp, row_iter_map[row_it]); 
     }
+    ///.
     void printRowStatus(int i) {
       switch (i) {
 	case LPX_BS: cout << "LPX_BS" << endl; break;
@@ -366,6 +409,7 @@
     int getColStat(const ColIt& col_it) { 
       return lpx_get_col_stat(lp, col_iter_map[col_it]); 
     }
+    ///.
     void printColStatus(int i) {
       switch (i) {
 	case LPX_BS: cout << "LPX_BS" << endl; break;
@@ -376,6 +420,8 @@
       }
     }
   };
+  
+  /// @}
 
 } //namespace hugo
 



More information about the Lemon-commits mailing list