deba@481: /* -*- mode: C++; indent-tabs-mode: nil; -*- deba@481: * deba@481: * This file is a part of LEMON, a generic C++ optimization library. deba@481: * alpar@1270: * Copyright (C) 2003-2013 deba@481: * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport deba@481: * (Egervary Research Group on Combinatorial Optimization, EGRES). deba@481: * deba@481: * Permission to use, modify and distribute this software is granted deba@481: * provided that this copyright notice appears in all copies. For deba@481: * precise terms see the accompanying LICENSE file. deba@481: * deba@481: * This software is provided "AS IS" with no warranty of any kind, deba@481: * express or implied, and with no claim as to its suitability for any deba@481: * purpose. deba@481: * deba@481: */ deba@481: deba@481: #ifndef LEMON_LP_H deba@481: #define LEMON_LP_H deba@481: deba@481: #include deba@481: deba@481: ladanyi@674: #ifdef LEMON_HAVE_GLPK alpar@484: #include ladanyi@674: #elif LEMON_HAVE_CPLEX alpar@484: #include ladanyi@674: #elif LEMON_HAVE_SOPLEX alpar@484: #include ladanyi@674: #elif LEMON_HAVE_CLP alpar@484: #include alpar@1300: #elif LEMON_HAVE_CBC alpar@1300: #include deba@481: #endif deba@481: deba@481: ///\file deba@481: ///\brief Defines a default LP solver deba@481: ///\ingroup lp_group deba@481: namespace lemon { deba@481: deba@481: #ifdef DOXYGEN deba@481: ///The default LP solver identifier deba@481: deba@481: ///The default LP solver identifier. deba@481: ///\ingroup lp_group deba@481: /// alpar@1306: ///Currently, the possible values are \c _LEMON_GLPK, \c LEMON__CPLEX, alpar@1306: ///\c _LEMON_SOPLEX or \c LEMON__CLP deba@482: #define LEMON_DEFAULT_LP SOLVER deba@481: ///The default LP solver deba@481: deba@481: ///The default LP solver. deba@481: ///\ingroup lp_group deba@481: /// alpar@485: ///Currently, it is either \c GlpkLp, \c CplexLp, \c SoplexLp or \c ClpLp alpar@485: typedef GlpkLp Lp; deba@481: deba@482: ///The default MIP solver identifier deba@482: deba@482: ///The default MIP solver identifier. deba@481: ///\ingroup lp_group deba@481: /// alpar@1306: ///Currently, the possible values are \c _LEMON_GLPK, \c LEMON__CPLEX alpar@1306: ///or \c _LEMON_CBC deba@482: #define LEMON_DEFAULT_MIP SOLVER deba@482: ///The default MIP solver. deba@481: deba@482: ///The default MIP solver. deba@481: ///\ingroup lp_group deba@481: /// alpar@1232: ///Currently, it is either \c GlpkMip, \c CplexMip , \c CbcMip alpar@485: typedef GlpkMip Mip; deba@481: #else alpar@1306: #if LEMON_DEFAULT_LP == _LEMON_GLPK alpar@485: typedef GlpkLp Lp; alpar@1306: #elif LEMON_DEFAULT_LP == _LEMON_CPLEX alpar@485: typedef CplexLp Lp; alpar@1306: #elif LEMON_DEFAULT_LP == _LEMON_SOPLEX alpar@1232: typedef SoplexLp Lp; alpar@1306: #elif LEMON_DEFAULT_LP == _LEMON_CLP alpar@1232: typedef ClpLp Lp; alpar@1232: #endif alpar@1306: #if LEMON_DEFAULT_MIP == _LEMON_GLPK alpar@1300: typedef GlpkMip Mip; alpar@1306: #elif LEMON_DEFAULT_MIP == _LEMON_CPLEX alpar@485: typedef CplexMip Mip; alpar@1306: #elif LEMON_DEFAULT_MIP == _LEMON_CBC alpar@1232: typedef CbcMip Mip; deba@481: #endif deba@481: #endif deba@481: deba@481: } //namespace lemon deba@481: deba@481: #endif //LEMON_LP_H