NewMapWin has become Dialog instead of Window. Therefore it is created dynamically, when there is need for it, instead of keeping one instance in memory. This solution is slower, but more correct than before.
2 * lemon/lp_glpk.h - Part of LEMON, a generic C++ optimization library
4 * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
5 * (Egervary Research Group on Combinatorial Optimization, EGRES).
7 * Permission to use, modify and distribute this software is granted
8 * provided that this copyright notice appears in all copies. For
9 * precise terms see the accompanying LICENSE file.
11 * This software is provided "AS IS" with no warranty of any kind,
12 * express or implied, and with no claim as to its suitability for any
17 #ifndef LEMON_LP_GLPK_H
18 #define LEMON_LP_GLPK_H
21 ///\brief Header of the LEMON-GLPK lp solver interface.
22 ///\ingroup gen_opt_group
24 #include <lemon/lp_base.h>
32 /// \brief Interface for the GLPK LP solver
34 /// This class implements an interface for the GLPK LP solver.
35 ///\ingroup gen_opt_group
36 class LpGlpk : public LpSolverBase {
42 typedef LpSolverBase Parent;
48 virtual LpSolverBase &_newLp();
49 virtual LpSolverBase &_copyLp();
51 virtual int _addCol();
52 virtual int _addRow();
53 virtual void _eraseCol(int i);
54 virtual void _eraseRow(int i);
56 virtual void _setRowCoeffs(int i,
59 const Value * values );
60 virtual void _setColCoeffs(int i,
63 const Value * values);
64 virtual void _setCoeff(int row, int col, Value value);
65 virtual void _setColLowerBound(int i, Value value);
66 virtual void _setColUpperBound(int i, Value value);
67 // virtual void _setRowLowerBound(int i, Value value);
68 // virtual void _setRowUpperBound(int i, Value value);
69 virtual void _setRowBounds(int i, Value lower, Value upper);
70 virtual void _setObjCoeff(int i, Value obj_coef);
71 virtual void _clearObj();
72 // virtual void _setObj(int length,
73 // int const * indices,
74 // Value const * values ) = 0;
78 ///\todo It should be clarified
80 virtual SolveExitStatus _solve();
81 virtual Value _getPrimal(int i);
82 virtual Value _getDual(int i);
83 virtual Value _getPrimalValue();
86 ///\todo It should be clarified
88 virtual SolutionStatus _getPrimalStatus();
89 virtual SolutionStatus _getDualStatus();
90 virtual ProblemTypes _getProblemType();
92 virtual void _setMax();
93 virtual void _setMin();
96 ///Set the verbosity of the messages
98 ///Set the verbosity of the messages
100 ///\param m is the level of the messages output by the solver routines.
101 ///The possible values are:
102 ///- 0 --- no output (default value)
103 ///- 1 --- error messages only
104 ///- 2 --- normal output
105 ///- 3 --- full output (includes informational messages)
106 void messageLevel(int m);
107 ///Turns on or off the presolver
109 ///Turns on (\c b is \c true) or off (\c b is \c false) the presolver
111 ///The presolver is off by default.
112 void presolver(bool b);
115 } //END OF NAMESPACE LEMON
117 #endif //LEMON_LP_GLPK_H