22 #include<lemon/config.h> |
22 #include<lemon/config.h> |
23 |
23 |
24 |
24 |
25 #ifdef HAVE_GLPK |
25 #ifdef HAVE_GLPK |
26 #include <lemon/lp_glpk.h> |
26 #include <lemon/lp_glpk.h> |
27 #include <lemon/mip_glpk.h> |
|
28 #elif HAVE_CPLEX |
27 #elif HAVE_CPLEX |
29 #include <lemon/lp_cplex.h> |
28 #include <lemon/lp_cplex.h> |
30 #include <lemon/mip_cplex.h> |
|
31 #elif HAVE_SOPLEX |
29 #elif HAVE_SOPLEX |
32 #include <lemon/lp_soplex.h> |
30 #include <lemon/lp_soplex.h> |
|
31 #elif HAVE_CLP |
|
32 #include <lemon/lp_clp.h> |
33 #endif |
33 #endif |
34 |
34 |
35 ///\file |
35 ///\file |
36 ///\brief Defines a default LP solver |
36 ///\brief Defines a default LP solver |
37 ///\ingroup lp_group |
37 ///\ingroup lp_group |
41 ///The default LP solver identifier |
41 ///The default LP solver identifier |
42 |
42 |
43 ///The default LP solver identifier. |
43 ///The default LP solver identifier. |
44 ///\ingroup lp_group |
44 ///\ingroup lp_group |
45 /// |
45 /// |
46 ///Currently, the possible values are \c GLPK or \c CPLEX |
46 ///Currently, the possible values are \c LP_GLPK, \c LP_CPLEX, \c |
47 #define DEFAULT_LP SOLVER |
47 ///LP_SOPLEX or \c LP_CLP |
|
48 #define LEMON_DEFAULT_LP SOLVER |
48 ///The default LP solver |
49 ///The default LP solver |
49 |
50 |
50 ///The default LP solver. |
51 ///The default LP solver. |
51 ///\ingroup lp_group |
52 ///\ingroup lp_group |
52 /// |
53 /// |
53 ///Currently, it is either \c LpGlpk or \c LpCplex |
54 ///Currently, it is either \c LpGlpk, \c LpCplex, \c LpSoplex or \c LpClp |
54 typedef LpGlpk Lp; |
55 typedef LpGlpk Lp; |
55 ///The default LP solver identifier string |
|
56 |
56 |
57 ///The default LP solver identifier string. |
57 ///The default MIP solver identifier |
|
58 |
|
59 ///The default MIP solver identifier. |
58 ///\ingroup lp_group |
60 ///\ingroup lp_group |
59 /// |
61 /// |
60 ///Currently, the possible values are "GLPK" or "CPLEX" |
62 ///Currently, the possible values are \c MIP_GLPK or \c MIP_CPLEX |
61 const char default_solver_name[]="SOLVER"; |
63 #define LEMON_DEFAULT_MIP SOLVER |
|
64 ///The default MIP solver. |
62 |
65 |
63 ///The default ILP solver. |
66 ///The default MIP solver. |
64 |
|
65 ///The default ILP solver. |
|
66 ///\ingroup lp_group |
67 ///\ingroup lp_group |
67 /// |
68 /// |
68 ///Currently, it is either \c LpGlpk or \c LpCplex |
69 ///Currently, it is either \c MipGlpk or \c MipCplex |
69 typedef MipGlpk Mip; |
70 typedef MipGlpk Mip; |
70 #else |
71 #else |
71 #ifdef HAVE_GLPK |
72 #ifdef HAVE_GLPK |
72 #define DEFAULT_LP GLPK |
73 # define LEMON_DEFAULT_LP LP_GLPK |
73 typedef LpGlpk Lp; |
74 typedef LpGlpk Lp; |
|
75 # define LEMON_DEFAULT_MIP MIP_GLPK |
74 typedef MipGlpk Mip; |
76 typedef MipGlpk Mip; |
75 const char default_solver_name[]="GLPK"; |
|
76 #elif HAVE_CPLEX |
77 #elif HAVE_CPLEX |
77 #define DEFAULT_LP CPLEX |
78 # define LEMON_DEFAULT_LP LP_CPLEX |
78 typedef LpCplex Lp; |
79 typedef LpCplex Lp; |
|
80 # define LEMON_DEFAULT_MIP MIP_CPLEX |
79 typedef MipCplex Mip; |
81 typedef MipCplex Mip; |
80 const char default_solver_name[]="CPLEX"; |
|
81 #elif HAVE_SOPLEX |
82 #elif HAVE_SOPLEX |
82 #define DEFAULT_LP SOPLEX |
83 # define DEFAULT_LP LP_SOPLEX |
83 typedef LpSoplex Lp; |
84 typedef LpSoplex Lp; |
84 const char default_solver_name[]="SOPLEX"; |
85 #elif HAVE_CLP |
|
86 # define DEFAULT_LP LP_CLP |
|
87 typedef LpClp Lp; |
85 #endif |
88 #endif |
86 #endif |
89 #endif |
87 |
90 |
88 } //namespace lemon |
91 } //namespace lemon |
89 |
92 |