Completions.
authorathos
Wed, 23 Mar 2005 11:51:40 +0000
changeset 124760708e1475ae
parent 1246 925002e098e7
child 1248 ca613a9e3567
Completions.
src/work/athos/lp/lp_base.cc
src/work/athos/lp/lp_base.h
     1.1 --- a/src/work/athos/lp/lp_base.cc	Wed Mar 23 10:35:36 2005 +0000
     1.2 +++ b/src/work/athos/lp/lp_base.cc	Wed Mar 23 11:51:40 2005 +0000
     1.3 @@ -1,4 +1,19 @@
     1.4 -// -*- c++ -*-
     1.5 +/* -*- C++ -*-
     1.6 + * src/lemon/maps.h - Part of LEMON, a generic C++ optimization library
     1.7 + *
     1.8 + * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     1.9 + * (Egervary Combinatorial Optimization Research Group, EGRES).
    1.10 + *
    1.11 + * Permission to use, modify and distribute this software is granted
    1.12 + * provided that this copyright notice appears in all copies. For
    1.13 + * precise terms see the accompanying LICENSE file.
    1.14 + *
    1.15 + * This software is provided "AS IS" with no warranty of any kind,
    1.16 + * express or implied, and with no claim as to its suitability for any
    1.17 + * purpose.
    1.18 + *
    1.19 + */
    1.20 +
    1.21  #ifndef LEMON_LP_BASE_CC
    1.22  #define LEMON_LP_BASE_CC
    1.23  
     2.1 --- a/src/work/athos/lp/lp_base.h	Wed Mar 23 10:35:36 2005 +0000
     2.2 +++ b/src/work/athos/lp/lp_base.h	Wed Mar 23 11:51:40 2005 +0000
     2.3 @@ -1,4 +1,19 @@
     2.4 -// -*- c++ -*-
     2.5 +/* -*- C++ -*-
     2.6 + * src/lemon/maps.h - Part of LEMON, a generic C++ optimization library
     2.7 + *
     2.8 + * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     2.9 + * (Egervary Combinatorial Optimization Research Group, EGRES).
    2.10 + *
    2.11 + * Permission to use, modify and distribute this software is granted
    2.12 + * provided that this copyright notice appears in all copies. For
    2.13 + * precise terms see the accompanying LICENSE file.
    2.14 + *
    2.15 + * This software is provided "AS IS" with no warranty of any kind,
    2.16 + * express or implied, and with no claim as to its suitability for any
    2.17 + * purpose.
    2.18 + *
    2.19 + */
    2.20 +
    2.21  #ifndef LEMON_LP_BASE_H
    2.22  #define LEMON_LP_BASE_H
    2.23  
    2.24 @@ -6,7 +21,15 @@
    2.25  ///\brief The interface of the LP solver interface.
    2.26  namespace lemon {
    2.27    class LpSolverBase {
    2.28 -  protected:
    2.29 +  public:
    2.30 +
    2.31 +    //UNCATEGORIZED
    2.32 +
    2.33 +    /// \e
    2.34 +    typedef double Value;
    2.35 +    /// \e 
    2.36 +    static const Value INF;
    2.37 +   protected:
    2.38  
    2.39      //MATRIX MANIPULATING FUNCTIONS
    2.40  
    2.41 @@ -17,14 +40,37 @@
    2.42      /// \e
    2.43      /// \warning Arrays are indexed from 1 (datum at index 0 is ignored)
    2.44      virtual void _setRowCoeffs(int i, 
    2.45 -                               int  * &indices, 
    2.46 -                               double  * &doubles ) = 0;
    2.47 +                               int  const * indices, 
    2.48 +                               Value  const * values ) = 0;
    2.49      /// \e
    2.50      /// \warning Arrays are indexed from 1 (datum at index 0 is ignored)
    2.51      virtual void _setColCoeffs(int i, 
    2.52 -                               int  * &indices, 
    2.53 -                               double  * &doubles ) = 0;
    2.54 +                               int  const * indices, 
    2.55 +                               Value  const * values ) = 0;
    2.56      
    2.57 +    /// \e
    2.58 +    /// The lower bound of a variable (column) have to be given by an 
    2.59 +    /// extended number of type Value, i.e. a finite number of type 
    2.60 +    /// Value or -INF.
    2.61 +    virtual void _setColLowerBound(int i, Value value) = 0;
    2.62 +    /// \e
    2.63 +    /// The upper bound of a variable (column) have to be given by an 
    2.64 +    /// extended number of type Value, i.e. a finite number of type 
    2.65 +    /// Value or INF.
    2.66 +    virtual void _setColUpperBound(int i, Value value) = 0;
    2.67 +    /// \e
    2.68 +    /// The lower bound of a linear expression (row) have to be given by an 
    2.69 +    /// extended number of type Value, i.e. a finite number of type 
    2.70 +    /// Value or -INF.
    2.71 +    virtual void _setRowLowerBound(int i, Value value) = 0;
    2.72 +    /// \e
    2.73 +    /// The upper bound of a linear expression (row) have to be given by an 
    2.74 +    /// extended number of type Value, i.e. a finite number of type 
    2.75 +    /// Value or INF.
    2.76 +    virtual void _setRowUpperBound(int i, Value value) = 0;
    2.77 +
    2.78 +    /// \e
    2.79 +    virtual void _setObjCoeff(int i, Value obj_coef) = 0;
    2.80    }  
    2.81  
    2.82  } //namespace lemon