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: * alpar@877: * Copyright (C) 2003-2010 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_LP_H deba@458: #define LEMON_LP_H deba@458: deba@458: #include deba@458: deba@458: ladanyi@627: #ifdef LEMON_HAVE_GLPK alpar@461: #include ladanyi@627: #elif LEMON_HAVE_CPLEX alpar@461: #include ladanyi@627: #elif LEMON_HAVE_SOPLEX alpar@461: #include ladanyi@627: #elif LEMON_HAVE_CLP alpar@461: #include deba@458: #endif deba@458: deba@458: ///\file deba@458: ///\brief Defines a default LP solver deba@458: ///\ingroup lp_group deba@458: namespace lemon { deba@458: deba@458: #ifdef DOXYGEN deba@458: ///The default LP solver identifier deba@458: deba@458: ///The default LP solver identifier. deba@458: ///\ingroup lp_group deba@458: /// alpar@461: ///Currently, the possible values are \c GLPK, \c CPLEX, alpar@461: ///\c SOPLEX or \c CLP deba@459: #define LEMON_DEFAULT_LP SOLVER deba@458: ///The default LP solver deba@458: deba@458: ///The default LP solver. deba@458: ///\ingroup lp_group deba@458: /// alpar@462: ///Currently, it is either \c GlpkLp, \c CplexLp, \c SoplexLp or \c ClpLp alpar@462: typedef GlpkLp Lp; deba@458: deba@459: ///The default MIP solver identifier deba@459: deba@459: ///The default MIP solver identifier. deba@458: ///\ingroup lp_group deba@458: /// alpar@461: ///Currently, the possible values are \c GLPK or \c CPLEX deba@459: #define LEMON_DEFAULT_MIP SOLVER deba@459: ///The default MIP solver. deba@458: deba@459: ///The default MIP solver. deba@458: ///\ingroup lp_group deba@458: /// alpar@462: ///Currently, it is either \c GlpkMip or \c CplexMip alpar@462: typedef GlpkMip Mip; deba@458: #else ladanyi@627: #ifdef LEMON_HAVE_GLPK alpar@461: # define LEMON_DEFAULT_LP GLPK alpar@462: typedef GlpkLp Lp; alpar@461: # define LEMON_DEFAULT_MIP GLPK alpar@462: typedef GlpkMip Mip; ladanyi@627: #elif LEMON_HAVE_CPLEX alpar@461: # define LEMON_DEFAULT_LP CPLEX alpar@462: typedef CplexLp Lp; alpar@461: # define LEMON_DEFAULT_MIP CPLEX alpar@462: typedef CplexMip Mip; ladanyi@627: #elif LEMON_HAVE_SOPLEX alpar@461: # define DEFAULT_LP SOPLEX alpar@462: typedef SoplexLp Lp; ladanyi@627: #elif LEMON_HAVE_CLP alpar@461: # define DEFAULT_LP CLP alpar@877: typedef ClpLp Lp; deba@458: #endif deba@458: #endif deba@458: deba@458: } //namespace lemon deba@458: deba@458: #endif //LEMON_LP_H