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_LP_H deba@458: #define LEMON_LP_H deba@458: deba@458: #include deba@458: deba@458: deba@458: #ifdef HAVE_GLPK deba@458: #include deba@458: #include deba@458: #elif HAVE_CPLEX deba@458: #include deba@458: #include deba@458: #elif HAVE_SOPLEX deba@458: #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: /// deba@458: ///Currently, the possible values are \c GLPK or \c CPLEX deba@458: #define DEFAULT_LP SOLVER deba@458: ///The default LP solver deba@458: deba@458: ///The default LP solver. deba@458: ///\ingroup lp_group deba@458: /// deba@458: ///Currently, it is either \c LpGlpk or \c LpCplex deba@458: typedef LpGlpk Lp; deba@458: ///The default LP solver identifier string deba@458: deba@458: ///The default LP solver identifier string. deba@458: ///\ingroup lp_group deba@458: /// deba@458: ///Currently, the possible values are "GLPK" or "CPLEX" deba@458: const char default_solver_name[]="SOLVER"; deba@458: deba@458: ///The default ILP solver. deba@458: deba@458: ///The default ILP solver. deba@458: ///\ingroup lp_group deba@458: /// deba@458: ///Currently, it is either \c LpGlpk or \c LpCplex deba@458: typedef MipGlpk Mip; deba@458: #else deba@458: #ifdef HAVE_GLPK deba@458: #define DEFAULT_LP GLPK deba@458: typedef LpGlpk Lp; deba@458: typedef MipGlpk Mip; deba@458: const char default_solver_name[]="GLPK"; deba@458: #elif HAVE_CPLEX deba@458: #define DEFAULT_LP CPLEX deba@458: typedef LpCplex Lp; deba@458: typedef MipCplex Mip; deba@458: const char default_solver_name[]="CPLEX"; deba@458: #elif HAVE_SOPLEX deba@458: #define DEFAULT_LP SOPLEX deba@458: typedef LpSoplex Lp; deba@458: const char default_solver_name[]="SOPLEX"; deba@458: #endif deba@458: #endif deba@458: deba@458: } //namespace lemon deba@458: deba@458: #endif //LEMON_LP_H