6 #ifndef CbcBranchUser_H 
    7 #define CbcBranchUser_H 
   39     double changeUp, 
int numberInfeasibilitiesUp,
 
   40     double changeDown, 
int numberInfeasibilitiesDown);
 
   51     double *changeUp, 
int *numberInfeasibilitiesUp,
 
   52     double *changeDown, 
int *numberInfeasibilitiesDown,
 
   53     double objectiveValue);
 
virtual void initialize(CbcModel *model)
Initialize i.e. before start of choosing at a node. 
 
virtual int betterBranch(CbcBranchingObject *thisOne, CbcBranchingObject *bestSoFar, double changeUp, int numberInfeasibilitiesUp, double changeDown, int numberInfeasibilitiesDown)
Returns nonzero if branching on first object is "better" than on second (if second NULL first wins)...
 
Define a single integer class where branching is forced until fixed. 
 
CbcSimpleIntegerFixed & operator=(const CbcSimpleIntegerFixed &rhs)
 
int preferredWay() const 
If -1 down always chosen first, +1 up always, 0 normal. 
 
Abstract Base Class for describing an interface to a solver. 
 
Define a single integer class. 
 
virtual ~CbcBranchUserDecision()
 
double infeasibility() const 
Return infeasibility. 
 
CbcModel * model() const 
Return model. 
 
Abstract branching object base class Now just difference with OsiBranchingObject. ...
 
Branching decision user class. 
 
virtual CbcBranchDecision * clone() const 
Clone. 
 
double breakEven() const 
Breakeven e.g 0.7 -> >= 0.7 go up first. 
 
virtual CbcObject * clone() const 
Clone. 
 
virtual CbcBranchingObject * createBranch(OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
Creates a branching object. 
 
Simple Branch and bound class. 
 
virtual int bestBranch(CbcBranchingObject **objects, int numberObjects, int numberUnsatisfied, double *changeUp, int *numberInfeasibilitiesUp, double *changeDown, int *numberInfeasibilitiesDown, double objectiveValue)
Compare N branching objects. 
 
CbcBranchUserDecision & operator=(const CbcBranchUserDecision &rhs)
Illegal Assignment operator.