1 #ifndef CYCLUS_SRC_SOLVER_FACTORY_H_ 2 #define CYCLUS_SRC_SOLVER_FACTORY_H_ 8 #include "CbcEventHandler.hpp" 10 class OsiSolverInterface;
25 virtual CbcEventHandler*
clone();
26 virtual CbcEventHandler::CbcAction
event(CbcEvent e);
27 inline double time()
const {
return time_; }
28 inline double obj()
const {
return obj_; }
29 inline bool found()
const {
return found_; }
56 OsiSolverInterface*
get();
64 void SolveProg(OsiSolverInterface* si,
bool verbose);
65 void SolveProg(OsiSolverInterface* si,
double greedy_obj);
66 void SolveProg(OsiSolverInterface* si,
double greedy_obj,
bool verbose);
67 bool HasInt(OsiSolverInterface* si);
71 #endif // CYCLUS_HAS_COIN 72 #endif // CYCLUS_SRC_SOLVER_FACTORY_H_
ObjValueHandler(double obj, double time, bool found)
An event handler that records the time that a better solution is found.
virtual ~ObjValueHandler()
virtual CbcEventHandler * clone()
virtual CbcEventHandler::CbcAction event(CbcEvent e)
ObjValueHandler & operator=(const ObjValueHandler &other)
int CbcCallBack(CbcModel *model, int from)
this is taken exactly from driver4.cpp in the Cbc examples
void solver_t(std::string t)
get/set the solver type
const std::string solver_t() const
bool HasInt(OsiSolverInterface *si)
taken directly from OsiSolverInterface.cpp on 2/17/14 from https://projects.coin-or.org/Osi/browser/trunk.
void SolveProg(OsiSolverInterface *si, double greedy_obj, bool verbose)
A factory class that, given a configuration, returns a Coin::OsiSolverInterface for a solver...