diff -r 751a14b992f2 -r bfbdded3763a lemon/lp_soplex.h --- a/lemon/lp_soplex.h Fri Feb 16 15:57:48 2007 +0000 +++ b/lemon/lp_soplex.h Fri Feb 16 19:11:31 2007 +0000 @@ -34,9 +34,15 @@ namespace lemon { + /// \ingroup gen_opt_group + /// /// \brief Interface for the SOPLEX solver /// - /// This class implements an interface for the SOPLEX LP solver. + /// This class implements an interface for the SoPlex LP solver. + /// The SoPlex library is an object oriented lp solver library + /// developed at the Konrad-Zuse-Zentrum für Informationstechnik + /// Berlin (ZIB). You can find detailed information about it at the + /// http://soplex.zib.de address. class LpSoplex :virtual public LpSolverBase { protected: @@ -46,6 +52,7 @@ bool solved; std::vector colNames; + std::map invColNames; std::vector primal_value; std::vector dual_value; @@ -70,38 +77,39 @@ virtual int _addRow(); virtual void _eraseCol(int i); virtual void _eraseRow(int i); - virtual void _getColName(int col, std::string & name); + virtual void _getColName(int col, std::string & name) const; virtual void _setColName(int col, const std::string & name); + virtual int _colByName(const std::string& name) const; virtual void _setRowCoeffs(int i, ConstRowIterator b, ConstRowIterator e); - virtual void _getRowCoeffs(int i, RowIterator b); + virtual void _getRowCoeffs(int i, RowIterator b) const; virtual void _setColCoeffs(int i, ConstColIterator b, ConstColIterator e); - virtual void _getColCoeffs(int i, ColIterator b); + virtual void _getColCoeffs(int i, ColIterator b) const; virtual void _setCoeff(int row, int col, Value value); - virtual Value _getCoeff(int row, int col); + virtual Value _getCoeff(int row, int col) const; virtual void _setColLowerBound(int i, Value value); - virtual Value _getColLowerBound(int i); + virtual Value _getColLowerBound(int i) const; virtual void _setColUpperBound(int i, Value value); - virtual Value _getColUpperBound(int i); + virtual Value _getColUpperBound(int i) const; virtual void _setRowBounds(int i, Value lower, Value upper); - virtual void _getRowBounds(int i, Value &lower, Value &upper); + virtual void _getRowBounds(int i, Value &lower, Value &upper) const; virtual void _setObjCoeff(int i, Value obj_coef); - virtual Value _getObjCoeff(int i); + virtual Value _getObjCoeff(int i) const; virtual void _clearObj(); virtual SolveExitStatus _solve(); - virtual Value _getPrimal(int i); - virtual Value _getDual(int i); - virtual Value _getPrimalValue(); - virtual bool _isBasicCol(int i); + virtual Value _getPrimal(int i) const; + virtual Value _getDual(int i) const; + virtual Value _getPrimalValue() const; + virtual bool _isBasicCol(int i) const; - virtual SolutionStatus _getPrimalStatus(); - virtual SolutionStatus _getDualStatus(); - virtual ProblemTypes _getProblemType(); + virtual SolutionStatus _getPrimalStatus() const; + virtual SolutionStatus _getDualStatus() const; + virtual ProblemTypes _getProblemType() const; virtual void _setMax(); virtual void _setMin(); - virtual bool _isMax(); + virtual bool _isMax() const; }; } //END OF NAMESPACE LEMON