deba@458: /* -*- mode: C++; indent-tabs-mode: nil; -*- deba@458: * deba@458: * This file is a part of LEMON, a generic C++ optimization library. deba@458: * deba@458: * Copyright (C) 2003-2008 deba@458: * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport deba@458: * (Egervary Research Group on Combinatorial Optimization, EGRES). deba@458: * deba@458: * Permission to use, modify and distribute this software is granted deba@458: * provided that this copyright notice appears in all copies. For deba@458: * precise terms see the accompanying LICENSE file. deba@458: * deba@458: * This software is provided "AS IS" with no warranty of any kind, deba@458: * express or implied, and with no claim as to its suitability for any deba@458: * purpose. deba@458: * deba@458: */ deba@458: deba@458: #ifndef LEMON_MIP_CPLEX_H deba@458: #define LEMON_MIP_CPLEX_H deba@458: deba@458: ///\file deba@458: ///\brief Header of the LEMON-CPLEX mip solver interface. deba@458: ///\ingroup lp_group deba@458: deba@458: deba@458: #include deba@458: deba@458: namespace lemon { deba@458: deba@458: /// \brief Interface for the CPLEX MIP solver deba@458: /// deba@458: /// This class implements an interface for the CPLEX MIP solver. deba@458: ///\ingroup lp_group deba@458: class MipCplex : public MipSolverBase, public LpCplex{ deba@458: deba@458: public: deba@458: deba@458: typedef MipSolverBase ParentMip; deba@458: typedef LpCplex ParentLp; deba@458: deba@458: MipCplex(); deba@458: //~MipCplex(); deba@458: deba@458: deba@458: deba@458: deba@458: protected: deba@458: deba@458: virtual ColTypes _colType(int col) const; deba@458: virtual void _colType(int col, ColTypes col_type); deba@458: deba@458: virtual LpCplex::SolveExitStatus _solve(); deba@458: virtual LpCplex::SolutionStatus _getMipStatus() const; deba@458: virtual ParentLp::Value _getPrimal(int i) const; deba@458: virtual ParentLp::Value _getPrimalValue() const; deba@458: }; deba@458: deba@458: } //END OF NAMESPACE LEMON deba@458: deba@458: #endif // END OF LEMON_MIP_CPLEX_H