Cbc  2.10.10
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CbcGenCbcParam.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 CbcCbcParam_H
14 #define CbcCbcParam_H
15 
16 /* \file CbcGenCbcParam.hpp
17  \brief Declarations for parameters that act on a CbcModel object.
18 */
19 
20 /*
21  $Id$
22 */
23 
31 class CbcCbcParam : public CoinParam {
32 
33 public:
36 
45 
67 
69 
71 
73 
82  CbcCbcParam();
83 
90  CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
91  double lower, double upper, double dflt = 0.0,
92  bool display = true);
93 
98  CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
99  int lower, int upper, int dflt = 0,
100  bool display = true);
101 
111  CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
112  std::string firstValue, int dflt, bool display = true);
113 
120  CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
121  std::string dflt, bool display = true);
122 
125  CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
126  bool display = true);
127 
130  CbcCbcParam(const CbcCbcParam &orig);
131 
134  CbcCbcParam *clone();
135 
138  CbcCbcParam &operator=(const CbcCbcParam &rhs);
139 
142  ~CbcCbcParam();
143 
145 
148 
151  inline CbcCbcParamCode paramCode() const
152  {
153  return (paramCode_);
154  }
155 
158  inline void setParamCode(CbcCbcParamCode code)
159  {
160  paramCode_ = code;
161  }
162 
165  inline CbcModel *obj() const
166  {
167  return (obj_);
168  }
169 
172  inline void setObj(CbcModel *obj)
173  {
174  obj_ = obj;
175  }
176 
178 
179 private:
182 
185 
188 
190 };
191 
192 /*
193  Declare the utility functions.
194 */
195 
196 namespace CbcCbcParamUtils {
197 void addCbcCbcParams(int &numParams, CoinParamVec &paramVec,
198  CbcModel *model);
199 void loadCbcParamObj(const CoinParamVec paramVec, int first, int last,
200  CbcModel *model);
201 void setCbcModelDefaults(CbcModel *model);
202 
203 int pushCbcCbcDbl(CoinParam *param);
204 int pushCbcCbcInt(CoinParam *param);
205 }
206 
207 #endif
208 
209 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
210 */
CbcCbcParam::CUTOFF
@ CUTOFF
Definition: CbcGenCbcParam.hpp:49
CbcGenParam::CBCGEN_LASTPARAM
@ CBCGEN_LASTPARAM
Definition: CbcGenParam.hpp:107
CbcCbcParam::MOREMIPOPTIONS
@ MOREMIPOPTIONS
Definition: CbcGenCbcParam.hpp:61
CbcCbcParam
Class for control parameters that act on a CbcModel object.
Definition: CbcGenCbcParam.hpp:31
CbcCbcParam::operator=
CbcCbcParam & operator=(const CbcCbcParam &rhs)
Assignment.
CbcCbcParam::CBCCBC_LASTPARAM
@ CBCCBC_LASTPARAM
Definition: CbcGenCbcParam.hpp:68
CbcCbcParamUtils::loadCbcParamObj
void loadCbcParamObj(const CoinParamVec paramVec, int first, int last, CbcModel *model)
CbcCbcParam::CUTPASS
@ CUTPASS
Definition: CbcGenCbcParam.hpp:50
CbcCbcParam::MAXIMIZE
@ MAXIMIZE
Definition: CbcGenCbcParam.hpp:57
CbcCbcParam::CUTDEPTH
@ CUTDEPTH
Definition: CbcGenCbcParam.hpp:48
CbcCbcParam::paramCode_
CbcCbcParamCode paramCode_
Parameter code.
Definition: CbcGenCbcParam.hpp:184
CbcCbcParam::MAXNODES
@ MAXNODES
Definition: CbcGenCbcParam.hpp:58
CbcCbcParamUtils::pushCbcCbcDbl
int pushCbcCbcDbl(CoinParam *param)
CbcCbcParam::MINIMIZE
@ MINIMIZE
Definition: CbcGenCbcParam.hpp:59
CbcCbcParam::NUMBERMINI
@ NUMBERMINI
Definition: CbcGenCbcParam.hpp:64
CbcCbcParam::CbcCbcParam
CbcCbcParam()
Default constructor.
CbcCbcParam::MIPOPTIONS
@ MIPOPTIONS
Definition: CbcGenCbcParam.hpp:60
CbcCbcParam::obj_
CbcModel * obj_
CbcModel object.
Definition: CbcGenCbcParam.hpp:187
CbcCbcParam::GAPRATIO
@ GAPRATIO
Definition: CbcGenCbcParam.hpp:52
CbcCbcParam::STRONGBRANCHING
@ STRONGBRANCHING
Definition: CbcGenCbcParam.hpp:65
CbcCbcParam::obj
CbcModel * obj() const
Get the underlying CbcModel object.
Definition: CbcGenCbcParam.hpp:165
CbcModel
Simple Branch and bound class.
Definition: CbcModel.hpp:100
CbcCbcParam::NUMBERBEFORE
@ NUMBERBEFORE
Definition: CbcGenCbcParam.hpp:63
CbcCbcParamUtils::setCbcModelDefaults
void setCbcModelDefaults(CbcModel *model)
CbcCbcParamUtils::pushCbcCbcInt
int pushCbcCbcInt(CoinParam *param)
CbcCbcParam::NUMBERANALYZE
@ NUMBERANALYZE
Definition: CbcGenCbcParam.hpp:62
CbcCbcParam::setParamCode
void setParamCode(CbcCbcParamCode code)
Set the parameter code.
Definition: CbcGenCbcParam.hpp:158
CbcCbcParam::DIRECTION
@ DIRECTION
Definition: CbcGenCbcParam.hpp:51
CbcCbcParam::setObj
void setObj(CbcModel *obj)
Set the underlying CbcModel object.
Definition: CbcGenCbcParam.hpp:172
CbcCbcParam::~CbcCbcParam
~CbcCbcParam()
Destructor.
CbcCbcParam::clone
CbcCbcParam * clone()
Clone.
CbcCbcParam::LOGLEVEL
@ LOGLEVEL
Definition: CbcGenCbcParam.hpp:56
CbcCbcParam::CbcCbcParamCode
CbcCbcParamCode
Enumeration for parameters that control a CbcModel object.
Definition: CbcGenCbcParam.hpp:44
CbcCbcParam::TIMELIMIT_BAB
@ TIMELIMIT_BAB
Definition: CbcGenCbcParam.hpp:66
CbcCbcParam::INCREMENT
@ INCREMENT
Definition: CbcGenCbcParam.hpp:53
CbcCbcParam::INTEGERTOLERANCE
@ INTEGERTOLERANCE
Definition: CbcGenCbcParam.hpp:55
CbcCbcParamUtils
Definition: CbcGenCbcParam.hpp:196
CbcCbcParam::INFEASIBILITYWEIGHT
@ INFEASIBILITYWEIGHT
Definition: CbcGenCbcParam.hpp:54
CbcCbcParam::ALLOWABLEGAP
@ ALLOWABLEGAP
Definition: CbcGenCbcParam.hpp:46
CbcCbcParam::CBCCBC_FIRSTPARAM
@ CBCCBC_FIRSTPARAM
Definition: CbcGenCbcParam.hpp:44
CbcCbcParam::COSTSTRATEGY
@ COSTSTRATEGY
Definition: CbcGenCbcParam.hpp:47
CbcCbcParam::paramCode
CbcCbcParamCode paramCode() const
Get the parameter code
Definition: CbcGenCbcParam.hpp:151
CbcCbcParamUtils::addCbcCbcParams
void addCbcCbcParams(int &numParams, CoinParamVec &paramVec, CbcModel *model)