• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

/tmp/buildd/coinor-cbc-2.5.0/Cbc/src/CbcGenCbcParam.hpp

Go to the documentation of this file.
00001 /*
00002   Copyright (C) 2007, Lou Hafer, International Business Machines Corporation
00003   and others.  All Rights Reserved.
00004 
00005   This file is part of cbc-generic.
00006 */
00007 
00008 #ifndef CbcCbcParam_H
00009 #define CbcCbcParam_H
00010 
00011 /* \file CbcGenCbcParam.hpp
00012    \brief Declarations for parameters that act on a CbcModel object.
00013 */
00014 
00015 /*
00016   $Id: CbcGenCbcParam.hpp 1173 2009-06-04 09:44:10Z forrest $
00017 */
00018 
00026 class CbcCbcParam : public CoinParam {
00027 
00028 public:
00029 
00032 
00040     typedef enum { CBCCBC_FIRSTPARAM = CbcGenParam::CBCGEN_LASTPARAM + 1,
00041 
00042                    ALLOWABLEGAP, COSTSTRATEGY,
00043                    CUTDEPTH, CUTOFF, CUTPASS, DIRECTION,
00044                    GAPRATIO,
00045                    INCREMENT, INFEASIBILITYWEIGHT, INTEGERTOLERANCE,
00046                    LOGLEVEL, MAXIMIZE, MAXNODES, MINIMIZE,
00047                    MIPOPTIONS, MOREMIPOPTIONS, NUMBERANALYZE,
00048                    NUMBERBEFORE, NUMBERMINI,
00049                    STRONGBRANCHING, TIMELIMIT_BAB,
00050 
00051                    CBCCBC_LASTPARAM
00052 
00053                  } CbcCbcParamCode ;
00054 
00056 
00065     CbcCbcParam() ;
00066 
00073     CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
00074                 double lower, double upper, double dflt = 0.0,
00075                 bool display = true) ;
00076 
00081     CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
00082                 int lower, int upper, int dflt = 0,
00083                 bool display = true) ;
00084 
00094     CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
00095                 std::string firstValue, int dflt, bool display = true) ;
00096 
00103     CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
00104                 std::string dflt, bool display = true) ;
00105 
00108     CbcCbcParam(CbcCbcParamCode code, std::string name, std::string help,
00109                 bool display = true) ;
00110 
00113     CbcCbcParam(const CbcCbcParam &orig) ;
00114 
00117     CbcCbcParam *clone() ;
00118 
00121     CbcCbcParam &operator=(const CbcCbcParam &rhs) ;
00122 
00125     ~CbcCbcParam() ;
00126 
00128 
00131 
00134     inline CbcCbcParamCode paramCode() const {
00135         return (paramCode_) ;
00136     }
00137 
00140     inline void setParamCode(CbcCbcParamCode code) {
00141         paramCode_ = code ;
00142     }
00143 
00146     inline CbcModel *obj() const {
00147         return (obj_) ;
00148     }
00149 
00152     inline void setObj(CbcModel *obj) {
00153         obj_ = obj ;
00154     }
00155 
00157 
00158 private:
00159 
00162 
00164     CbcCbcParamCode paramCode_ ;
00165 
00167     CbcModel *obj_ ;
00168 
00170 
00171 } ;
00172 
00173 
00174 /*
00175   Declare the utility functions.
00176 */
00177 
00178 namespace CbcCbcParamUtils {
00179 void addCbcCbcParams(int &numParams, CoinParamVec &paramVec,
00180                      CbcModel *model) ;
00181 void loadCbcParamObj(const CoinParamVec paramVec, int first, int last,
00182                      CbcModel *model) ;
00183 void setCbcModelDefaults (CbcModel *model) ;
00184 
00185 int pushCbcCbcDbl(CoinParam *param) ;
00186 int pushCbcCbcInt(CoinParam *param) ;
00187 }
00188 
00189 #endif
00190 

Generated on Tue Sep 7 2010 20:23:52 by  doxygen 1.7.1