COIN-OR::LEMON - Graph Library

source: lemon/lemon/lp.h @ 481:7afc121e0689

Last change on this file since 481:7afc121e0689 was 481:7afc121e0689, checked in by Balazs Dezso <deba@…>, 10 years ago

Port LP and MIP solvers from SVN -r3509 (#44)

File size: 2.1 KB
Line 
1/* -*- mode: C++; indent-tabs-mode: nil; -*-
2 *
3 * This file is a part of LEMON, a generic C++ optimization library.
4 *
5 * Copyright (C) 2003-2008
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
25#ifdef HAVE_GLPK
26#include <lemon/lp_glpk.h>
27#include <lemon/mip_glpk.h>
28#elif HAVE_CPLEX
29#include <lemon/lp_cplex.h>
30#include <lemon/mip_cplex.h>
31#elif HAVE_SOPLEX
32#include <lemon/lp_soplex.h>
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  ///
46  ///Currently, the possible values are \c GLPK or \c CPLEX
47#define DEFAULT_LP SOLVER
48  ///The default LP solver
49
50  ///The default LP solver.
51  ///\ingroup lp_group
52  ///
53  ///Currently, it is either \c LpGlpk or \c LpCplex
54  typedef LpGlpk Lp;
55  ///The default LP solver identifier string
56
57  ///The default LP solver identifier string.
58  ///\ingroup lp_group
59  ///
60  ///Currently, the possible values are "GLPK" or "CPLEX"
61  const char default_solver_name[]="SOLVER";
62
63  ///The default ILP solver.
64
65  ///The default ILP solver.
66  ///\ingroup lp_group
67  ///
68  ///Currently, it is either \c LpGlpk or \c LpCplex
69  typedef MipGlpk Mip;
70#else
71#ifdef HAVE_GLPK
72#define DEFAULT_LP GLPK
73  typedef LpGlpk Lp;
74  typedef MipGlpk Mip;
75  const char default_solver_name[]="GLPK";
76#elif HAVE_CPLEX
77#define DEFAULT_LP CPLEX
78  typedef LpCplex Lp;
79  typedef MipCplex Mip;
80  const char default_solver_name[]="CPLEX";
81#elif HAVE_SOPLEX
82#define DEFAULT_LP SOPLEX
83  typedef LpSoplex Lp;
84  const char default_solver_name[]="SOPLEX";
85#endif
86#endif
87
88} //namespace lemon
89
90#endif //LEMON_LP_H
Note: See TracBrowser for help on using the repository browser.