[Lemon-commits] [lemon_svn] athos: r1674 - hugo/trunk/src/work/athos/lp

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


Author: athos
Date: Wed Mar 23 12:51:40 2005
New Revision: 1674

Modified:
   hugo/trunk/src/work/athos/lp/lp_base.cc
   hugo/trunk/src/work/athos/lp/lp_base.h

Log:
Completions.

Modified: hugo/trunk/src/work/athos/lp/lp_base.cc
==============================================================================
--- hugo/trunk/src/work/athos/lp/lp_base.cc	(original)
+++ hugo/trunk/src/work/athos/lp/lp_base.cc	Wed Mar 23 12:51:40 2005
@@ -1,4 +1,19 @@
-// -*- c++ -*-
+/* -*- C++ -*-
+ * src/lemon/maps.h - Part of LEMON, a generic C++ optimization library
+ *
+ * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
+ * (Egervary Combinatorial Optimization Research Group, EGRES).
+ *
+ * Permission to use, modify and distribute this software is granted
+ * provided that this copyright notice appears in all copies. For
+ * precise terms see the accompanying LICENSE file.
+ *
+ * This software is provided "AS IS" with no warranty of any kind,
+ * express or implied, and with no claim as to its suitability for any
+ * purpose.
+ *
+ */
+
 #ifndef LEMON_LP_BASE_CC
 #define LEMON_LP_BASE_CC
 

Modified: hugo/trunk/src/work/athos/lp/lp_base.h
==============================================================================
--- hugo/trunk/src/work/athos/lp/lp_base.h	(original)
+++ hugo/trunk/src/work/athos/lp/lp_base.h	Wed Mar 23 12:51:40 2005
@@ -1,4 +1,19 @@
-// -*- c++ -*-
+/* -*- C++ -*-
+ * src/lemon/maps.h - Part of LEMON, a generic C++ optimization library
+ *
+ * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
+ * (Egervary Combinatorial Optimization Research Group, EGRES).
+ *
+ * Permission to use, modify and distribute this software is granted
+ * provided that this copyright notice appears in all copies. For
+ * precise terms see the accompanying LICENSE file.
+ *
+ * This software is provided "AS IS" with no warranty of any kind,
+ * express or implied, and with no claim as to its suitability for any
+ * purpose.
+ *
+ */
+
 #ifndef LEMON_LP_BASE_H
 #define LEMON_LP_BASE_H
 
@@ -6,7 +21,15 @@
 ///\brief The interface of the LP solver interface.
 namespace lemon {
   class LpSolverBase {
-  protected:
+  public:
+
+    //UNCATEGORIZED
+
+    /// \e
+    typedef double Value;
+    /// \e 
+    static const Value INF;
+   protected:
 
     //MATRIX MANIPULATING FUNCTIONS
 
@@ -17,14 +40,37 @@
     /// \e
     /// \warning Arrays are indexed from 1 (datum at index 0 is ignored)
     virtual void _setRowCoeffs(int i, 
-                               int  * &indices, 
-                               double  * &doubles ) = 0;
+                               int  const * indices, 
+                               Value  const * values ) = 0;
     /// \e
     /// \warning Arrays are indexed from 1 (datum at index 0 is ignored)
     virtual void _setColCoeffs(int i, 
-                               int  * &indices, 
-                               double  * &doubles ) = 0;
+                               int  const * indices, 
+                               Value  const * values ) = 0;
     
+    /// \e
+    /// The lower bound of a variable (column) have to be given by an 
+    /// extended number of type Value, i.e. a finite number of type 
+    /// Value or -INF.
+    virtual void _setColLowerBound(int i, Value value) = 0;
+    /// \e
+    /// The upper bound of a variable (column) have to be given by an 
+    /// extended number of type Value, i.e. a finite number of type 
+    /// Value or INF.
+    virtual void _setColUpperBound(int i, Value value) = 0;
+    /// \e
+    /// The lower bound of a linear expression (row) have to be given by an 
+    /// extended number of type Value, i.e. a finite number of type 
+    /// Value or -INF.
+    virtual void _setRowLowerBound(int i, Value value) = 0;
+    /// \e
+    /// The upper bound of a linear expression (row) have to be given by an 
+    /// extended number of type Value, i.e. a finite number of type 
+    /// Value or INF.
+    virtual void _setRowUpperBound(int i, Value value) = 0;
+
+    /// \e
+    virtual void _setObjCoeff(int i, Value obj_coef) = 0;
   }  
 
 } //namespace lemon



More information about the Lemon-commits mailing list