author | alpar |
Tue, 05 Jun 2007 17:29:46 +0000 | |
changeset 2451 | d7b7048e045b |
parent 2370 | ed6539025f27 |
child 2553 | bfced05fa852 |
permissions | -rw-r--r-- |
athos@2219 | 1 |
/* -*- C++ -*- |
athos@2219 | 2 |
* |
athos@2219 | 3 |
* This file is a part of LEMON, a generic C++ optimization library |
athos@2219 | 4 |
* |
alpar@2391 | 5 |
* Copyright (C) 2003-2007 |
athos@2219 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
athos@2219 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
athos@2219 | 8 |
* |
athos@2219 | 9 |
* Permission to use, modify and distribute this software is granted |
athos@2219 | 10 |
* provided that this copyright notice appears in all copies. For |
athos@2219 | 11 |
* precise terms see the accompanying LICENSE file. |
athos@2219 | 12 |
* |
athos@2219 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
athos@2219 | 14 |
* express or implied, and with no claim as to its suitability for any |
athos@2219 | 15 |
* purpose. |
athos@2219 | 16 |
* |
athos@2219 | 17 |
*/ |
athos@2219 | 18 |
|
athos@2219 | 19 |
#ifndef LEMON_MIP_CPLEX_H |
athos@2219 | 20 |
#define LEMON_MIP_CPLEX_H |
athos@2219 | 21 |
|
athos@2219 | 22 |
///\file |
athos@2219 | 23 |
///\brief Header of the LEMON-CPLEX mip solver interface. |
deba@2370 | 24 |
///\ingroup lp_group |
athos@2219 | 25 |
|
athos@2219 | 26 |
|
athos@2219 | 27 |
#include <lemon/lp_cplex.h> |
athos@2219 | 28 |
|
athos@2219 | 29 |
namespace lemon { |
athos@2219 | 30 |
|
athos@2219 | 31 |
/// \brief Interface for the CPLEX MIP solver |
athos@2219 | 32 |
/// |
athos@2219 | 33 |
/// This class implements an interface for the CPLEX MIP solver. |
deba@2370 | 34 |
///\ingroup lp_group |
athos@2219 | 35 |
class MipCplex : public MipSolverBase, public LpCplex{ |
athos@2219 | 36 |
|
athos@2219 | 37 |
public: |
athos@2219 | 38 |
|
athos@2219 | 39 |
typedef MipSolverBase ParentMip; |
athos@2219 | 40 |
typedef LpCplex ParentLp; |
athos@2219 | 41 |
|
athos@2219 | 42 |
MipCplex(); |
athos@2219 | 43 |
//~MipCplex(); |
athos@2219 | 44 |
|
athos@2219 | 45 |
|
athos@2219 | 46 |
|
athos@2219 | 47 |
|
athos@2219 | 48 |
protected: |
athos@2219 | 49 |
|
deba@2366 | 50 |
virtual ColTypes _colType(int col) const; |
athos@2219 | 51 |
virtual void _colType(int col, ColTypes col_type); |
athos@2219 | 52 |
|
athos@2219 | 53 |
virtual LpCplex::SolveExitStatus _solve(); |
deba@2366 | 54 |
virtual LpCplex::SolutionStatus _getMipStatus() const; |
deba@2366 | 55 |
virtual ParentLp::Value _getPrimal(int i) const; |
deba@2366 | 56 |
virtual ParentLp::Value _getPrimalValue() const; |
athos@2219 | 57 |
}; |
athos@2219 | 58 |
|
athos@2219 | 59 |
} //END OF NAMESPACE LEMON |
athos@2219 | 60 |
|
athos@2219 | 61 |
#endif // END OF LEMON_MIP_CPLEX_H |