|
1 /* -*- C++ -*- |
|
2 * src/lemon/lp_solver_skeleton.h |
|
3 * - Part of LEMON, a generic C++ optimization library |
|
4 * |
|
5 * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
|
6 * (Egervary Combinatorial Optimization Research Group, EGRES). |
|
7 * |
|
8 * Permission to use, modify and distribute this software is granted |
|
9 * provided that this copyright notice appears in all copies. For |
|
10 * precise terms see the accompanying LICENSE file. |
|
11 * |
|
12 * This software is provided "AS IS" with no warranty of any kind, |
|
13 * express or implied, and with no claim as to its suitability for any |
|
14 * purpose. |
|
15 * |
|
16 */ |
|
17 |
|
18 #ifndef LEMON_LP_SOLVER_SKELETON |
|
19 #define LEMON_LP_SOLVER_SKELETON |
|
20 |
|
21 #include"lp_base.h" |
|
22 |
|
23 ///\file |
|
24 ///\brief A skeleton file to implement LP solver interfaces |
|
25 namespace lemon { |
|
26 |
|
27 ///A skeleton class to implement LP solver interfaces |
|
28 class LpSolverSkeleton :public LpSolverBase { |
|
29 |
|
30 protected: |
|
31 virtual int _addCol(); |
|
32 virtual int _addRow(); |
|
33 virtual void _setRowCoeffs(int i, |
|
34 int length, |
|
35 int const * indices, |
|
36 Value const * values ); |
|
37 virtual void _setColCoeffs(int i, |
|
38 int length, |
|
39 int const * indices, |
|
40 Value const * values); |
|
41 virtual void _setColLowerBound(int i, Value value); |
|
42 virtual void _setColUpperBound(int i, Value value); |
|
43 virtual void _setRowLowerBound(int i, Value value); |
|
44 virtual void _setRowUpperBound(int i, Value value); |
|
45 virtual void _setObjCoeff(int i, Value obj_coef); |
|
46 }; |
|
47 |
|
48 } //namespace lemon |
|
49 |
|
50 #endif // LEMON_LP_SOLVER_SKELETON |