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_GLPK_H deba@458: #define LEMON_MIP_GLPK_H deba@458: deba@458: ///\file deba@458: ///\brief Header of the LEMON-GLPK mip solver interface. deba@458: ///\ingroup lp_group deba@458: deba@458: deba@458: #include deba@458: deba@458: namespace lemon { deba@458: /// \brief Interface for the GLPK MIP solver deba@458: /// deba@458: /// This class implements an interface for the GLPK MIP solver. deba@458: ///\ingroup lp_group deba@458: class MipGlpk : public MipSolverBase, public LpGlpk{ deba@458: deba@458: public: deba@458: deba@458: typedef MipSolverBase ParentMip; deba@458: typedef LpGlpk ParentLp; deba@458: deba@458: MipGlpk(); deba@458: //~MipGlpk(); 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 LpGlpk::SolveExitStatus _solve(); deba@458: virtual LpGlpk::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_GLPK_H