CbcBranchUser.hpp
Go to the documentation of this file.
1 // Copyright (C) 2002, International Business Machines
2 // Corporation and others. All Rights Reserved.
3 #ifndef CbcBranchUser_H
4 #define CbcBranchUser_H
5 
6 #include "CbcBranchBase.hpp"
7 #include "CbcBranchActual.hpp"
8 
12 public:
13  // Default Constructor
15 
16  // Copy constructor
18 
19  virtual ~CbcBranchUserDecision();
20 
22  virtual CbcBranchDecision * clone() const;
23 
25  virtual void initialize(CbcModel * model);
26 
34  virtual int betterBranch(CbcBranchingObject * thisOne,
35  CbcBranchingObject * bestSoFar,
36  double changeUp, int numberInfeasibilitiesUp,
37  double changeDown, int numberInfeasibilitiesDown);
38 
46  virtual int
47  bestBranch (CbcBranchingObject ** objects, int numberObjects, int numberUnsatisfied,
48  double * changeUp, int * numberInfeasibilitiesUp,
49  double * changeDown, int * numberInfeasibilitiesDown,
50  double objectiveValue) ;
51 private:
52 
55 
56 };
57 
59 
60 
62 
63 public:
64 
65  // Default Constructor
67 
68  // Useful constructor - passed integer index and model index
69  CbcSimpleIntegerFixed (CbcModel * model, int iColumn, double breakEven=0.5);
70 
71  // Constructor from simple
72  CbcSimpleIntegerFixed (const CbcSimpleInteger & simple);
73 
74  // Copy constructor
76 
78  virtual CbcObject * clone() const;
79 
80  // Assignment operator
82 
83  // Destructor
85 
87  virtual double infeasibility(int & preferredWay) const;
88 
93  //virtual CbcBranchingObject * createBranch(int way) ;
99  virtual CbcBranchingObject * createBranch(OsiSolverInterface * solver,
100  const OsiBranchingInformation * info, int way) ;
101 
102 protected:
104 };
105 
106 #endif