COIN-OR::LEMON - Graph Library

source: lemon-0.x/lemon/lp_skeleton.cc @ 2339:c329fe995b40

Last change on this file since 2339:c329fe995b40 was 2328:b4931ae52069, checked in by athos, 13 years ago

Query functions have been implemented for GLPK (CPLEX breaks at the moment, I guess): These functions include:
retrieving one element of the coeff. matrix
retrieving one element of the obj function
lower bd for a variable
upper bound for a variable
lower and upper bounds for a row (these can not be handled separately at the moment)
direction of the optimization (is_max() function)

File size: 2.9 KB
Line 
1/* -*- C++ -*-
2 *
3 * This file is a part of LEMON, a generic C++ optimization library
4 *
5 * Copyright (C) 2003-2006
6 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7 * (Egervary Research Group on Combinatorial Optimization, EGRES).
8 *
9 * Permission to use, modify and distribute this software is granted
10 * provided that this copyright notice appears in all copies. For
11 * precise terms see the accompanying LICENSE file.
12 *
13 * This software is provided "AS IS" with no warranty of any kind,
14 * express or implied, and with no claim as to its suitability for any
15 * purpose.
16 *
17 */
18
19#include <lemon/lp_skeleton.h>
20
21///\file
22///\brief A skeleton file to implement LP solver interfaces
23namespace lemon {
24 
25  LpSolverBase &LpSkeleton::_newLp()
26  {
27    LpSolverBase *tmp=0;
28    return *tmp;
29  }
30 
31  LpSolverBase &LpSkeleton::_copyLp()
32  {
33    LpSolverBase *tmp=0;
34    return *tmp;
35  }
36
37  int LpSkeleton::_addCol()
38  {
39    return ++col_num;
40  }
41 
42  int LpSkeleton::_addRow()
43  {
44    return ++row_num;
45  }
46 
47  void LpSkeleton::_eraseCol(int ) {
48  }
49 
50  void LpSkeleton::_eraseRow(int) {
51  }
52
53  void LpSkeleton::_getColName(int, std::string &) {
54  }
55 
56 
57  void LpSkeleton::_setColName(int, const std::string &) {
58  }
59 
60 
61  void LpSkeleton::_setRowCoeffs(int, LpRowIterator, LpRowIterator) {
62  }
63 
64  void LpSkeleton::_setColCoeffs(int, LpColIterator, LpColIterator) {
65  }
66
67  void LpSkeleton::_setCoeff(int, int, Value )
68  {
69  }
70
71  LpSkeleton::Value LpSkeleton::_getCoeff(int, int)
72  {
73    return 0;
74  }
75
76
77  void LpSkeleton::_setColLowerBound(int, Value)
78  {
79  }
80 
81  LpSkeleton::Value LpSkeleton::_getColLowerBound(int)
82  {
83    return 0;
84  }
85 
86  void LpSkeleton::_setColUpperBound(int, Value)
87  {
88  }
89
90  LpSkeleton::Value LpSkeleton::_getColUpperBound(int)
91  {
92    return 0;
93  }
94 
95//   void LpSkeleton::_setRowLowerBound(int, Value)
96//   {
97//   }
98 
99//   void LpSkeleton::_setRowUpperBound(int, Value)
100//   {
101//   }
102
103  void LpSkeleton::_setRowBounds(int, Value, Value)
104  {
105  }
106
107  void LpSkeleton::_getRowBounds(int, Value&, Value&)
108  {
109  }
110 
111  void LpSkeleton::_setObjCoeff(int, Value)
112  {
113  }
114
115  LpSkeleton::Value LpSkeleton::_getObjCoeff(int){
116    return 0;
117  }
118
119  void LpSkeleton::_setMax()
120  {
121  }
122
123  void LpSkeleton::_setMin()
124  {
125  }
126
127  bool LpSkeleton::_isMax()
128  {
129    return true;
130  }
131
132
133  void LpSkeleton::_clearObj()
134  {
135  }
136 
137  LpSkeleton::SolveExitStatus LpSkeleton::_solve()
138  {
139    return SOLVED;
140  }
141
142  LpSkeleton::Value LpSkeleton::_getPrimal(int)
143  {
144    return 0;
145  }
146 
147  LpSkeleton::Value LpSkeleton::_getDual(int)
148  {
149    return 0;
150  }
151 
152  LpSkeleton::Value LpSkeleton::_getPrimalValue()
153  {
154    return 0;
155  }
156 
157  LpSkeleton::SolutionStatus LpSkeleton::_getPrimalStatus()
158  {
159    return UNDEFINED;
160  }
161
162  LpSkeleton::SolutionStatus LpSkeleton::_getDualStatus()
163  {
164    return UNDEFINED;
165  }
166
167  LpSkeleton::ProblemTypes LpSkeleton::_getProblemType()
168  {
169    return UNKNOWN;
170  }
171
172  bool LpSkeleton::_isBasicCol(int)
173  {
174    return true;
175  }
176
177} //namespace lemon
178
Note: See TracBrowser for help on using the repository browser.