src/work/athos/lp/lp_solver_skeleton.h
changeset 1254 c9558638fe42
child 1263 a490938ad0aa
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/src/work/athos/lp/lp_solver_skeleton.h	Thu Mar 24 12:15:50 2005 +0000
     1.3 @@ -0,0 +1,50 @@
     1.4 +/* -*- C++ -*-
     1.5 + * src/lemon/lp_solver_skeleton.h
     1.6 + * - 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_SOLVER_SKELETON
    1.22 +#define LEMON_LP_SOLVER_SKELETON
    1.23 +
    1.24 +#include"lp_base.h"
    1.25 +
    1.26 +///\file
    1.27 +///\brief A skeleton file to implement LP solver interfaces
    1.28 +namespace lemon {
    1.29 +  
    1.30 +  ///A skeleton class to implement LP solver interfaces
    1.31 +  class LpSolverSkeleton :public LpSolverBase {
    1.32 +
    1.33 +  protected:
    1.34 +    virtual int _addCol();
    1.35 +    virtual int _addRow();
    1.36 +    virtual void _setRowCoeffs(int i, 
    1.37 +			       int length,
    1.38 +                               int  const * indices, 
    1.39 +                               Value  const * values );
    1.40 +    virtual void _setColCoeffs(int i, 
    1.41 +			       int length,
    1.42 +                               int  const * indices, 
    1.43 +                               Value  const * values);
    1.44 +    virtual void _setColLowerBound(int i, Value value);
    1.45 +    virtual void _setColUpperBound(int i, Value value);
    1.46 +    virtual void _setRowLowerBound(int i, Value value);
    1.47 +    virtual void _setRowUpperBound(int i, Value value);
    1.48 +    virtual void _setObjCoeff(int i, Value obj_coef);
    1.49 +  };  
    1.50 +
    1.51 +} //namespace lemon
    1.52 +
    1.53 +#endif // LEMON_LP_SOLVER_SKELETON