Cbc  2.9.9
CbcGenParam.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: CbcGenParam.hpp 1899 2013-04-09 18:12:08Z stefan $
8 */
9 /*
10  This file is part of cbc-generic.
11 */
12 
13 #ifndef CbcGenParam_H
14 #define CbcGenParam_H
15 
16 /* \file CbcGenParam.hpp
17  \brief Declarations for parameters that control the cbc-generic main
18  program.
19 */
20 
21 /*
22  $Id: CbcGenParam.hpp 1899 2013-04-09 18:12:08Z stefan $
23 */
24 
25 class CbcGenCtlBlk ;
26 
34 class CbcGenParam : public CoinParam {
35 
36 public:
37 
40 
49  typedef enum { CBCGEN_FIRSTPARAM = 0,
50 
64 
66 
68 
70 
80 
87  CbcGenParam(CbcGenParamCode code, std::string name, std::string help,
88  double lower, double upper, double dflt = 0.0,
89  bool display = true) ;
90 
95  CbcGenParam(CbcGenParamCode code, std::string name, std::string help,
96  int lower, int upper, int dflt = 0,
97  bool display = true) ;
98 
108  CbcGenParam(CbcGenParamCode code, std::string name, std::string help,
109  std::string firstValue, int dflt, bool display = true) ;
110 
117  CbcGenParam(CbcGenParamCode code, std::string name, std::string help,
118  std::string dflt, bool display = true) ;
119 
122  CbcGenParam(CbcGenParamCode code, std::string name, std::string help,
123  bool display = true) ;
124 
127  CbcGenParam(const CbcGenParam &orig) ;
128 
132 
136 
140 
142 
145 
148  inline CbcGenParamCode paramCode() const {
149  return (paramCode_) ;
150  }
151 
154  inline void setParamCode(CbcGenParamCode code) {
155  paramCode_ = code ;
156  }
157 
160  inline CbcGenCtlBlk *obj() const {
161  return (obj_) ;
162  }
163 
166  inline void setObj(CbcGenCtlBlk *obj) {
167  obj_ = obj ;
168  }
169 
171 
172 
173 private:
174 
177 
179  CbcGenParamCode paramCode_ ;
180 
182  CbcGenCtlBlk *obj_ ;
183 
185 
186 } ;
187 
188 /*
189  Declare the utility functions.
190 */
191 
192 namespace CbcGenParamUtils {
193 void addCbcGenParams(int &numParams, CoinParamVec &paramVec,
194  CbcGenCtlBlk *ctlBlk) ;
195 void loadGenParamObj(const CoinParamVec paramVec, int first, int last,
196  CbcGenCtlBlk *ctlBlk) ;
197 
198 void saveSolution(const OsiSolverInterface *osi, std::string fileName) ;
199 bool readSolution(std::string fileName,
200  int &numRows, int &numCols, double &objVal,
201  double **rowActivity, double **dualVars,
202  double **primalVars, double **reducedCosts) ;
203 
204 int doBaCParam(CoinParam *param) ;
205 int doDebugParam(CoinParam *param) ;
206 int doExitParam(CoinParam *param) ;
207 int doHelpParam(CoinParam *param) ;
208 int doImportParam(CoinParam *param) ;
209 int doPrintMaskParam(CoinParam *param) ;
210 int doNothingParam(CoinParam *param) ;
211 int doSolutionParam(CoinParam *param) ;
212 int doUnimplementedParam(CoinParam *param) ;
213 int doVersionParam(CoinParam *param) ;
214 
215 int pushCbcGenDblParam(CoinParam *param) ;
216 int pushCbcGenIntParam(CoinParam *param) ;
217 int pushCbcGenKwdParam(CoinParam *param) ;
218 int pushCbcGenStrParam(CoinParam *param) ;
219 
220 int pushCbcGenCutParam(CoinParam *param) ;
221 }
222 
223 
224 #endif
CbcGenParam::~CbcGenParam
~CbcGenParam()
Destructor.
CbcGenParam::COSTSTRATEGY
@ COSTSTRATEGY
Definition: CbcGenParam.hpp:52
CbcGenParamUtils::pushCbcGenCutParam
int pushCbcGenCutParam(CoinParam *param)
CbcGenParam::CPP
@ CPP
Definition: CbcGenParam.hpp:53
CbcGenParam::CBCGEN_FIRSTPARAM
@ CBCGEN_FIRSTPARAM
Definition: CbcGenParam.hpp:49
CbcGenParam::STRENGTHEN
@ STRENGTHEN
Definition: CbcGenParam.hpp:61
CbcGenParam::MIXEDCUTS
@ MIXEDCUTS
Definition: CbcGenParam.hpp:58
CbcGenParam::SHOWUNIMP
@ SHOWUNIMP
Definition: CbcGenParam.hpp:63
CbcGenParam::INTPRINT
@ INTPRINT
Definition: CbcGenParam.hpp:57
CbcGenParam::SOLUTION
@ SOLUTION
Definition: CbcGenParam.hpp:61
CbcGenParam::PRINTOPTIONS
@ PRINTOPTIONS
Definition: CbcGenParam.hpp:59
CbcGenParam::GOMORYCUTS
@ GOMORYCUTS
Definition: CbcGenParam.hpp:56
CbcGenParam::CBCGEN_LASTPARAM
@ CBCGEN_LASTPARAM
Definition: CbcGenParam.hpp:65
CbcGenParamUtils::loadGenParamObj
void loadGenParamObj(const CoinParamVec paramVec, int first, int last, CbcGenCtlBlk *ctlBlk)
CbcGenCtlBlk
Definition: CbcGenCtlBlk.hpp:67
CbcGenParam::FPUMPITS
@ FPUMPITS
Definition: CbcGenParam.hpp:56
CbcGenParam::COMBINE
@ COMBINE
Definition: CbcGenParam.hpp:52
CbcGenParam::SOLVECONTINUOUS
@ SOLVECONTINUOUS
Definition: CbcGenParam.hpp:61
CbcGenParamUtils::doBaCParam
int doBaCParam(CoinParam *param)
CbcGenParam::ODDHOLECUTS
@ ODDHOLECUTS
Definition: CbcGenParam.hpp:58
CbcGenParam::CUTDEPTH
@ CUTDEPTH
Definition: CbcGenParam.hpp:53
CbcGenParam
Class for cbc-generic control parameters.
Definition: CbcGenParam.hpp:34
CbcGenParam::USERCBC
@ USERCBC
Definition: CbcGenParam.hpp:63
CbcGenParam::clone
CbcGenParam * clone()
Clone.
CbcGenParam::DEBUG
@ DEBUG
Definition: CbcGenParam.hpp:54
CbcGenParam::MESSAGES
@ MESSAGES
Definition: CbcGenParam.hpp:58
CbcGenParamUtils
Definition: CbcGenCtlBlk.hpp:56
CbcGenParam::ERRORSALLOWED
@ ERRORSALLOWED
Definition: CbcGenParam.hpp:55
CbcGenParamUtils::pushCbcGenStrParam
int pushCbcGenStrParam(CoinParam *param)
CbcGenParam::CbcGenParam
CbcGenParam(CbcGenParamCode code, std::string name, std::string help, std::string dflt, bool display=true)
Constructor for a string parameter.
CbcGenParam::PREPROCESS
@ PREPROCESS
Definition: CbcGenParam.hpp:59
CbcGenParam::PRIORITYIN
@ PRIORITYIN
Definition: CbcGenParam.hpp:59
CbcGenParam::CbcGenParam
CbcGenParam()
Default constructor.
CbcGenParamUtils::saveSolution
void saveSolution(const OsiSolverInterface *osi, std::string fileName)
CbcGenParamUtils::doExitParam
int doExitParam(CoinParam *param)
CbcGenParam::USESOLUTION
@ USESOLUTION
Definition: CbcGenParam.hpp:63
CbcGenParamUtils::pushCbcGenIntParam
int pushCbcGenIntParam(CoinParam *param)
CbcGenParamUtils::doUnimplementedParam
int doUnimplementedParam(CoinParam *param)
CbcGenParam::FPUMP
@ FPUMP
Definition: CbcGenParam.hpp:56
CbcGenParam::EXIT
@ EXIT
Definition: CbcGenParam.hpp:55
CbcGenParamUtils::pushCbcGenDblParam
int pushCbcGenDblParam(CoinParam *param)
CbcGenParam::OUTDUPROWS
@ OUTDUPROWS
Definition: CbcGenParam.hpp:58
CbcGenParam::CbcGenParam
CbcGenParam(CbcGenParamCode code, std::string name, std::string help, std::string firstValue, int dflt, bool display=true)
Constructor for a parameter with keyword values.
CbcGenParam::UNITTEST
@ UNITTEST
Definition: CbcGenParam.hpp:63
CbcGenParam::OUTPUTFORMAT
@ OUTPUTFORMAT
Definition: CbcGenParam.hpp:58
CbcGenParamUtils::pushCbcGenKwdParam
int pushCbcGenKwdParam(CoinParam *param)
CbcGenParam::REDSPLITCUTS
@ REDSPLITCUTS
Definition: CbcGenParam.hpp:60
CbcGenParam::FLOWCUTS
@ FLOWCUTS
Definition: CbcGenParam.hpp:56
CbcGenParam::CbcGenParam
CbcGenParam(CbcGenParamCode code, std::string name, std::string help, int lower, int upper, int dflt=0, bool display=true)
Constructor for a parameter with an integer value.
CbcGenParam::setObj
void setObj(CbcGenCtlBlk *obj)
Set the underlying cbc-generic control object.
Definition: CbcGenParam.hpp:166
CbcGenParamUtils::doVersionParam
int doVersionParam(CoinParam *param)
CbcGenParam::CbcGenParam
CbcGenParam(CbcGenParamCode code, std::string name, std::string help, double lower, double upper, double dflt=0.0, bool display=true)
Constructor for a parameter with a double value.
CbcGenParam::BAB
@ BAB
Definition: CbcGenParam.hpp:52
CbcGenParam::HELP
@ HELP
Definition: CbcGenParam.hpp:51
CbcGenParamUtils::doNothingParam
int doNothingParam(CoinParam *param)
CbcGenParam::STDIN
@ STDIN
Definition: CbcGenParam.hpp:61
CbcGenParam::setParamCode
void setParamCode(CbcGenParamCode code)
Set the parameter code.
Definition: CbcGenParam.hpp:154
CbcGenParamUtils::doDebugParam
int doDebugParam(CoinParam *param)
CbcGenParam::LOGLEVEL
@ LOGLEVEL
Definition: CbcGenParam.hpp:57
CbcGenParam::EXPORT
@ EXPORT
Definition: CbcGenParam.hpp:55
CbcGenParam::VERBOSE
@ VERBOSE
Definition: CbcGenParam.hpp:63
CbcGenParam::MIPLIB
@ MIPLIB
Definition: CbcGenParam.hpp:58
CbcGenParam::CbcGenParam
CbcGenParam(CbcGenParamCode code, std::string name, std::string help, bool display=true)
Constructor for an action parameter.
CbcGenParam::PRINTMASK
@ PRINTMASK
Definition: CbcGenParam.hpp:59
CbcGenParam::PRINTVERSION
@ PRINTVERSION
Definition: CbcGenParam.hpp:59
CbcGenParam::CbcGenParam
CbcGenParam(const CbcGenParam &orig)
Copy constructor.
CbcGenParam::DIRECTORY
@ DIRECTORY
Definition: CbcGenParam.hpp:54
CbcGenParam::CUTSTRATEGY
@ CUTSTRATEGY
Definition: CbcGenParam.hpp:53
CbcGenParam::paramCode
CbcGenParamCode paramCode() const
Get the parameter code
Definition: CbcGenParam.hpp:148
CbcGenParam::PROBINGCUTS
@ PROBINGCUTS
Definition: CbcGenParam.hpp:59
CbcGenParam::TIGHTENFACTOR
@ TIGHTENFACTOR
Definition: CbcGenParam.hpp:62
CbcGenParam::ROUNDING
@ ROUNDING
Definition: CbcGenParam.hpp:60
CbcGenParam::IMPORT
@ IMPORT
Definition: CbcGenParam.hpp:57
CbcGenParam::SOS
@ SOS
Definition: CbcGenParam.hpp:61
CbcGenParam::TWOMIRCUTS
@ TWOMIRCUTS
Definition: CbcGenParam.hpp:62
CbcGenParamUtils::addCbcGenParams
void addCbcGenParams(int &numParams, CoinParamVec &paramVec, CbcGenCtlBlk *ctlBlk)
CbcGenParam::FULLGENERALQUERY
@ FULLGENERALQUERY
Definition: CbcGenParam.hpp:51
CbcGenParam::CLEARCUTS
@ CLEARCUTS
Definition: CbcGenParam.hpp:52
CbcGenParam::DUMMY
@ DUMMY
Definition: CbcGenParam.hpp:54
CbcGenParam::GENERALQUERY
@ GENERALQUERY
Definition: CbcGenParam.hpp:51
CbcGenParam::DJFIX
@ DJFIX
Definition: CbcGenParam.hpp:54
CbcGenParam::HEURISTICSTRATEGY
@ HEURISTICSTRATEGY
Definition: CbcGenParam.hpp:56
CbcGenParam::operator=
CbcGenParam & operator=(const CbcGenParam &rhs)
Assignment.
CbcGenParam::KNAPSACKCUTS
@ KNAPSACKCUTS
Definition: CbcGenParam.hpp:57
CbcGenParamUtils::doImportParam
int doImportParam(CoinParam *param)
CbcGenParam::LOCALTREE
@ LOCALTREE
Definition: CbcGenParam.hpp:57
CbcGenParam::obj
CbcGenCtlBlk * obj() const
Get the underlying cbc-generic control object.
Definition: CbcGenParam.hpp:160
CbcGenParamUtils::doSolutionParam
int doSolutionParam(CoinParam *param)
CbcGenParam::GREEDY
@ GREEDY
Definition: CbcGenParam.hpp:56
CbcGenParam::CbcGenParamCode
CbcGenParamCode
Enumeration for cbc-generic parameters.
Definition: CbcGenParam.hpp:49
CbcGenParam::SOLVER
@ SOLVER
Definition: CbcGenParam.hpp:61
CbcGenParam::CLIQUECUTS
@ CLIQUECUTS
Definition: CbcGenParam.hpp:52
CbcGenParamUtils::readSolution
bool readSolution(std::string fileName, int &numRows, int &numCols, double &objVal, double **rowActivity, double **dualVars, double **primalVars, double **reducedCosts)
CbcGenParamUtils::doPrintMaskParam
int doPrintMaskParam(CoinParam *param)
CbcGenParamUtils::doHelpParam
int doHelpParam(CoinParam *param)