lemon/lp.h
author deba
Wed, 01 Mar 2006 10:25:30 +0000
changeset 1991 d7442141d9ef
parent 1875 98698b69a902
child 2144 cd8897f67c26
permissions -rw-r--r--
The graph adadptors can be alteration observed.
In most cases it uses the adapted graph alteration notifiers.
Only special case is now the UndirGraphAdaptor, where
we have to proxy the signals from the graph.

The SubBidirGraphAdaptor is removed, because it doest not
gives more feature than the EdgeSubGraphAdaptor<UndirGraphAdaptor<Graph>>.

The ResGraphAdaptor is based on this composition.
alpar@1610
     1
/* -*- C++ -*-
alpar@1610
     2
 *
alpar@1956
     3
 * This file is a part of LEMON, a generic C++ optimization library
alpar@1956
     4
 *
alpar@1956
     5
 * Copyright (C) 2003-2006
alpar@1956
     6
 * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
alpar@1610
     7
 * (Egervary Research Group on Combinatorial Optimization, EGRES).
alpar@1610
     8
 *
alpar@1610
     9
 * Permission to use, modify and distribute this software is granted
alpar@1610
    10
 * provided that this copyright notice appears in all copies. For
alpar@1610
    11
 * precise terms see the accompanying LICENSE file.
alpar@1610
    12
 *
alpar@1610
    13
 * This software is provided "AS IS" with no warranty of any kind,
alpar@1610
    14
 * express or implied, and with no claim as to its suitability for any
alpar@1610
    15
 * purpose.
alpar@1610
    16
 *
alpar@1610
    17
 */
alpar@1610
    18
alpar@1610
    19
#ifndef LEMON_LP_H
alpar@1610
    20
#define LEMON_LP_H
alpar@1610
    21
alpar@1610
    22
#include<lemon/config.h>
alpar@1610
    23
alpar@1610
    24
#ifdef HAVE_GLPK
alpar@1610
    25
#include <lemon/lp_glpk.h>
alpar@1610
    26
#elif HAVE_CPLEX
alpar@1610
    27
#include <lemon/lp_cplex.h>
alpar@1610
    28
#endif
alpar@1610
    29
alpar@1610
    30
///\file
alpar@1610
    31
///\brief Defines a default LP solver
alpar@1610
    32
///\ingroup gen_opt_group
alpar@1610
    33
namespace lemon {
alpar@1610
    34
 
alpar@1610
    35
#ifdef DOXYGEN
alpar@1610
    36
  ///The default LP solver identifier
alpar@1610
    37
alpar@1610
    38
  ///The default LP solver identifier.
alpar@1610
    39
  ///\ingroup gen_opt_group
alpar@1610
    40
  ///
alpar@1610
    41
  ///Currently, the possible values are \c GLPK or \c CPLEX
alpar@1610
    42
#define DEFAULT_LP SOLVER
alpar@1610
    43
  ///The default LP solver
alpar@1610
    44
alpar@1610
    45
  ///The default LP solver.
alpar@1610
    46
  ///\ingroup gen_opt_group
alpar@1610
    47
  ///
alpar@1610
    48
  ///Currently, it is either \c LpGlpk or \c LpCplex
alpar@1610
    49
  typedef LpGlpk Lp;
alpar@1610
    50
  ///The default LP solver identifier string
alpar@1610
    51
alpar@1610
    52
  ///The default LP solver identifier string.
alpar@1610
    53
  ///\ingroup gen_opt_group
alpar@1610
    54
  ///
alpar@1610
    55
  ///Currently, the possible values are "GLPK" or "CPLEX"
alpar@1610
    56
  const char default_solver_name[]="SOLVER";  
alpar@1610
    57
#else
alpar@1610
    58
#ifdef HAVE_GLPK
alpar@1610
    59
#define DEFAULT_LP GLPK
alpar@1610
    60
  typedef LpGlpk Lp;
alpar@1610
    61
  const char default_solver_name[]="GLPK";
alpar@1610
    62
#elif HAVE_CPLEX
alpar@1610
    63
#define DEFAULT_LP CPLEX
alpar@1610
    64
  typedef LpCplex Lp;
alpar@1610
    65
  const char default_solver_name[]="CPLEX";
alpar@1610
    66
#endif
alpar@1610
    67
#endif
alpar@1610
    68
 
alpar@1610
    69
} //namespace lemon
alpar@1610
    70
alpar@1610
    71
#endif //LEMON_LP_BASE_H