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