Cbc  2.10.10
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CbcGenOsiParam.hpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2007, Lou Hafer, International Business Machines Corporation
3  and others. All Rights Reserved.
4 
5  This code is licensed under the terms of the Eclipse Public License (EPL).
6 
7  $Id$
8 */
9 /*
10  This file is part of cbc-generic.
11 */
12 
13 #ifndef CbcOsiParam_H
14 #define CbcOsiParam_H
15 
16 /* \file CbcGenOsiParam.hpp
17  \brief Declarations for parameters that act on a OsiSolverInterface object.
18 */
19 
20 /*
21  $Id$
22 */
23 
31 class CbcOsiParam : public CoinParam {
32 
33 public:
36 
46 
66  KKT,
76  PFI,
96 
98 
100 
102 
111  CbcOsiParam();
112 
119  CbcOsiParam(CbcOsiParamCode code, std::string name, std::string help,
120  double lower, double upper, double dflt = 0.0,
121  bool display = true);
122 
127  CbcOsiParam(CbcOsiParamCode code, std::string name, std::string help,
128  int lower, int upper, int dflt = 0,
129  bool display = true);
130 
140  CbcOsiParam(CbcOsiParamCode code, std::string name, std::string help,
141  std::string firstValue, int dflt, bool display = true);
142 
149  CbcOsiParam(CbcOsiParamCode code, std::string name, std::string help,
150  std::string dflt, bool display = true);
151 
154  CbcOsiParam(CbcOsiParamCode code, std::string name, std::string help,
155  bool display = true);
156 
159  CbcOsiParam(const CbcOsiParam &orig);
160 
163  CbcOsiParam *clone();
164 
167  CbcOsiParam &operator=(const CbcOsiParam &rhs);
168 
171  ~CbcOsiParam();
172 
174 
177 
180  inline CbcOsiParamCode paramCode() const
181  {
182  return (paramCode_);
183  }
184 
187  inline void setParamCode(CbcOsiParamCode code)
188  {
189  paramCode_ = code;
190  }
191 
194  inline OsiSolverInterface *obj() const
195  {
196  return (obj_);
197  }
198 
201  inline void setObj(OsiSolverInterface *obj)
202  {
203  obj_ = obj;
204  }
205 
207 
208 private:
211 
214 
216  OsiSolverInterface *obj_;
217 
219 };
220 
221 /*
222  Declare the utility functions.
223 */
224 
225 namespace CbcOsiParamUtils {
226 void addCbcOsiParams(int &numParams, CoinParamVec &paramVec,
227  OsiSolverInterface *osi);
228 void loadOsiParamObj(const CoinParamVec paramVec,
229  CbcGenCtlBlk *ctlBlk);
230 void setOsiSolverInterfaceDefaults(OsiSolverInterface *osi);
231 
232 int pushCbcOsiLogLevel(CoinParam *param);
233 int pushCbcOsiInt(CoinParam *param);
234 int pushCbcOsiDbl(CoinParam *param);
235 int pushCbcOsiKwd(CoinParam *param);
236 int pushCbcOsiHint(CoinParam *param);
237 }
238 
239 #endif
240 
241 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
242 */
CbcOsiParam::BASISIN
@ BASISIN
Definition: CbcGenOsiParam.hpp:52
CbcOsiParam::CRASH
@ CRASH
Definition: CbcGenOsiParam.hpp:56
CbcOsiParam::NETLIB_DUAL
@ NETLIB_DUAL
Definition: CbcGenOsiParam.hpp:70
CbcOsiParam::obj_
OsiSolverInterface * obj_
OsiSolverInterface object.
Definition: CbcGenOsiParam.hpp:216
CbcOsiParam::TIGHTEN
@ TIGHTEN
Definition: CbcGenOsiParam.hpp:95
CbcOsiParam::operator=
CbcOsiParam & operator=(const CbcOsiParam &rhs)
Assignment.
CbcOsiParam::BARRIER
@ BARRIER
Definition: CbcGenOsiParam.hpp:50
CbcOsiParam::PFI
@ PFI
Definition: CbcGenOsiParam.hpp:76
CbcOsiParam::SAVE
@ SAVE
Definition: CbcGenOsiParam.hpp:88
CbcOsiParam::SPECIALOPTIONS
@ SPECIALOPTIONS
Definition: CbcGenOsiParam.hpp:93
CbcGenCtlBlk
Definition: CbcGenCtlBlk.hpp:67
CbcOsiParam::DUALSIMPLEX
@ DUALSIMPLEX
Definition: CbcGenOsiParam.hpp:60
CbcOsiParam::RESTORE
@ RESTORE
Definition: CbcGenOsiParam.hpp:85
CbcOsiParamUtils
Definition: CbcGenOsiParam.hpp:225
CbcOsiParam::RHSSCALE
@ RHSSCALE
Definition: CbcGenOsiParam.hpp:87
CbcCbcParam::CBCCBC_LASTPARAM
@ CBCCBC_LASTPARAM
Definition: CbcGenCbcParam.hpp:68
CbcOsiParam::CBCOSI_FIRSTPARAM
@ CBCOSI_FIRSTPARAM
Definition: CbcGenOsiParam.hpp:45
CbcOsiParam::OBJSCALE
@ OBJSCALE
Definition: CbcGenOsiParam.hpp:73
CbcOsiParam::PERTVALUE
@ PERTVALUE
Definition: CbcGenOsiParam.hpp:75
CbcOsiParam::PRESOLVEPASS
@ PRESOLVEPASS
Definition: CbcGenOsiParam.hpp:80
CbcOsiParam::CROSSOVER
@ CROSSOVER
Definition: CbcGenOsiParam.hpp:57
CbcOsiParam::PRIMALSIMPLEX
@ PRIMALSIMPLEX
Definition: CbcGenOsiParam.hpp:82
CbcOsiParam::GAMMA
@ GAMMA
Definition: CbcGenOsiParam.hpp:63
CbcOsiParam::MAXITERATION
@ MAXITERATION
Definition: CbcGenOsiParam.hpp:67
CbcOsiParamUtils::pushCbcOsiLogLevel
int pushCbcOsiLogLevel(CoinParam *param)
CbcOsiParam::ALLSLACK
@ ALLSLACK
Definition: CbcGenOsiParam.hpp:48
CbcOsiParam::BIASLU
@ BIASLU
Definition: CbcGenOsiParam.hpp:54
CbcOsiParam::FAKEBOUND
@ FAKEBOUND
Definition: CbcGenOsiParam.hpp:62
CbcOsiParam::BASISOUT
@ BASISOUT
Definition: CbcGenOsiParam.hpp:53
CbcOsiParam::paramCode_
CbcOsiParamCode paramCode_
Parameter code.
Definition: CbcGenOsiParam.hpp:213
CbcOsiParam::SPARSEFACTOR
@ SPARSEFACTOR
Definition: CbcGenOsiParam.hpp:92
CbcOsiParam::PRESOLVEOPTIONS
@ PRESOLVEOPTIONS
Definition: CbcGenOsiParam.hpp:79
CbcOsiParam::~CbcOsiParam
~CbcOsiParam()
Destructor.
CbcOsiParam::SPRINT
@ SPRINT
Definition: CbcGenOsiParam.hpp:94
CbcOsiParam::DUALPIVOT
@ DUALPIVOT
Definition: CbcGenOsiParam.hpp:59
CbcOsiParam::REALLY_SCALE
@ REALLY_SCALE
Definition: CbcGenOsiParam.hpp:84
CbcOsiParam::MAXHOTITS
@ MAXHOTITS
Definition: CbcGenOsiParam.hpp:68
CbcOsiParam::clone
CbcOsiParam * clone()
Clone.
CbcOsiParam::KEEPNAMES
@ KEEPNAMES
Definition: CbcGenOsiParam.hpp:65
CbcOsiParam
Class for control parameters that act on a OsiSolverInterface object.
Definition: CbcGenOsiParam.hpp:31
CbcOsiParam::PRIMALTOLERANCE
@ PRIMALTOLERANCE
Definition: CbcGenOsiParam.hpp:83
CbcOsiParam::CHOLESKY
@ CHOLESKY
Definition: CbcGenOsiParam.hpp:55
CbcOsiParam::NETWORK
@ NETWORK
Definition: CbcGenOsiParam.hpp:72
CbcOsiParam::paramCode
CbcOsiParamCode paramCode() const
Get the parameter code
Definition: CbcGenOsiParam.hpp:180
CbcOsiParamUtils::setOsiSolverInterfaceDefaults
void setOsiSolverInterfaceDefaults(OsiSolverInterface *osi)
CbcOsiParamUtils::pushCbcOsiInt
int pushCbcOsiInt(CoinParam *param)
CbcOsiParam::SCALING
@ SCALING
Definition: CbcGenOsiParam.hpp:89
CbcOsiParamUtils::pushCbcOsiKwd
int pushCbcOsiKwd(CoinParam *param)
CbcOsiParam::AUTOSCALE
@ AUTOSCALE
Definition: CbcGenOsiParam.hpp:49
CbcOsiParamUtils::loadOsiParamObj
void loadOsiParamObj(const CoinParamVec paramVec, CbcGenCtlBlk *ctlBlk)
CbcOsiParamUtils::addCbcOsiParams
void addCbcOsiParams(int &numParams, CoinParamVec &paramVec, OsiSolverInterface *osi)
CbcOsiParam::setParamCode
void setParamCode(CbcOsiParamCode code)
Set the parameter code.
Definition: CbcGenOsiParam.hpp:187
CbcOsiParam::setObj
void setObj(OsiSolverInterface *obj)
Set the underlying OsiSolverInterace object.
Definition: CbcGenOsiParam.hpp:201
CbcOsiParam::obj
OsiSolverInterface * obj() const
Get the underlying OsiSolverInterface object.
Definition: CbcGenOsiParam.hpp:194
CbcOsiParam::PRIMALPIVOT
@ PRIMALPIVOT
Definition: CbcGenOsiParam.hpp:81
CbcOsiParam::SLPVALUE
@ SLPVALUE
Definition: CbcGenOsiParam.hpp:90
CbcOsiParam::IDIOT
@ IDIOT
Definition: CbcGenOsiParam.hpp:64
CbcOsiParam::PRESOLVE
@ PRESOLVE
Definition: CbcGenOsiParam.hpp:78
CbcOsiParamUtils::pushCbcOsiDbl
int pushCbcOsiDbl(CoinParam *param)
CbcOsiParam::KKT
@ KKT
Definition: CbcGenOsiParam.hpp:66
CbcOsiParamUtils::pushCbcOsiHint
int pushCbcOsiHint(CoinParam *param)
CbcOsiParam::SOLVERLOGLEVEL
@ SOLVERLOGLEVEL
Definition: CbcGenOsiParam.hpp:91
CbcOsiParam::PLUSMINUS
@ PLUSMINUS
Definition: CbcGenOsiParam.hpp:77
CbcOsiParam::CbcOsiParam
CbcOsiParam()
Default constructor.
CbcOsiParam::DUALBOUND
@ DUALBOUND
Definition: CbcGenOsiParam.hpp:58
CbcOsiParam::ALGORITHM
@ ALGORITHM
Definition: CbcGenOsiParam.hpp:47
CbcOsiParam::PERTURBATION
@ PERTURBATION
Definition: CbcGenOsiParam.hpp:74
CbcOsiParam::BARRIERSCALE
@ BARRIERSCALE
Definition: CbcGenOsiParam.hpp:51
CbcOsiParam::CBCOSI_LASTPARAM
@ CBCOSI_LASTPARAM
Definition: CbcGenOsiParam.hpp:97
CbcOsiParam::DUALTOLERANCE
@ DUALTOLERANCE
Definition: CbcGenOsiParam.hpp:61
CbcOsiParam::NETLIB_PRIMAL
@ NETLIB_PRIMAL
Definition: CbcGenOsiParam.hpp:71
CbcOsiParam::NETLIB_BARRIER
@ NETLIB_BARRIER
Definition: CbcGenOsiParam.hpp:69
CbcOsiParam::CbcOsiParamCode
CbcOsiParamCode
Enumeration for parameters that control an OsiSolverInterface object.
Definition: CbcGenOsiParam.hpp:45
CbcOsiParam::REVERSE
@ REVERSE
Definition: CbcGenOsiParam.hpp:86