COIN-OR::LEMON - Graph Library

source: lemon/lemon/lp.h @ 1232:fc3854d936f7

Last change on this file since 1232:fc3854d936f7 was 1232:fc3854d936f7, checked in by Alpar Juttner <alpar@…>, 11 years ago

Enable/disable options for LP/MIP backends (#465)

File size: 2.2 KB
RevLine 
[481]1/* -*- mode: C++; indent-tabs-mode: nil; -*-
2 *
3 * This file is a part of LEMON, a generic C++ optimization library.
4 *
[956]5 * Copyright (C) 2003-2010
[481]6 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7 * (Egervary Research Group on Combinatorial Optimization, EGRES).
8 *
9 * Permission to use, modify and distribute this software is granted
10 * provided that this copyright notice appears in all copies. For
11 * precise terms see the accompanying LICENSE file.
12 *
13 * This software is provided "AS IS" with no warranty of any kind,
14 * express or implied, and with no claim as to its suitability for any
15 * purpose.
16 *
17 */
18
19#ifndef LEMON_LP_H
20#define LEMON_LP_H
21
22#include<lemon/config.h>
23
24
[674]25#ifdef LEMON_HAVE_GLPK
[484]26#include <lemon/glpk.h>
[674]27#elif LEMON_HAVE_CPLEX
[484]28#include <lemon/cplex.h>
[674]29#elif LEMON_HAVE_SOPLEX
[484]30#include <lemon/soplex.h>
[674]31#elif LEMON_HAVE_CLP
[484]32#include <lemon/clp.h>
[481]33#endif
34
35///\file
36///\brief Defines a default LP solver
37///\ingroup lp_group
38namespace lemon {
39
40#ifdef DOXYGEN
41  ///The default LP solver identifier
42
43  ///The default LP solver identifier.
44  ///\ingroup lp_group
45  ///
[484]46  ///Currently, the possible values are \c GLPK, \c CPLEX,
47  ///\c SOPLEX or \c CLP
[482]48#define LEMON_DEFAULT_LP SOLVER
[481]49  ///The default LP solver
50
51  ///The default LP solver.
52  ///\ingroup lp_group
53  ///
[485]54  ///Currently, it is either \c GlpkLp, \c CplexLp, \c SoplexLp or \c ClpLp
55  typedef GlpkLp Lp;
[481]56
[482]57  ///The default MIP solver identifier
58
59  ///The default MIP solver identifier.
[481]60  ///\ingroup lp_group
61  ///
[1232]62  ///Currently, the possible values are \c GLPK, \c CPLEX or \c CBC
[482]63#define LEMON_DEFAULT_MIP SOLVER
64  ///The default MIP solver.
[481]65
[482]66  ///The default MIP solver.
[481]67  ///\ingroup lp_group
68  ///
[1232]69  ///Currently, it is either \c GlpkMip, \c CplexMip , \c CbcMip
[485]70  typedef GlpkMip Mip;
[481]71#else
[1232]72#if LEMON_DEFAULT_LP == GLPK
[485]73  typedef GlpkLp Lp;
[1232]74#elif LEMON_DEFAULT_LP == CPLEX
[485]75  typedef CplexLp Lp;
[1232]76#elif LEMON_DEFAULT_LP == SOPLEX
77  typedef SoplexLp Lp;
78#elif LEMON_DEFAULT_LP == CLP
79  typedef ClpLp Lp;
80#endif
81#if LEMON_DEFAULT_MIP == GLPK
82  typedef GlpkLp Mip;
83#elif LEMON_DEFAULT_MIP == CPLEX
[485]84  typedef CplexMip Mip;
[1232]85#elif LEMON_DEFAULT_MIP == CBC
86  typedef CbcMip Mip;
[481]87#endif
88#endif
89
90} //namespace lemon
91
92#endif //LEMON_LP_H
Note: See TracBrowser for help on using the repository browser.