CbcBranchAllDifferent.hpp
Go to the documentation of this file.
1 // Edwin 11/13/2009-- carved out of CbcBranchCut
2 #ifndef CbcBranchAllDifferent_H
3 #define CbcBranchAllDifferent_H
4 
5 #include "CbcBranchBase.hpp"
6 #include "OsiRowCut.hpp"
7 #include "CoinPackedMatrix.hpp"
8 #include "CbcBranchCut.hpp"
9 
16 class CbcBranchAllDifferent : public CbcBranchCut {
17 
18 public:
19 
20  // Default Constructor
22 
25  CbcBranchAllDifferent (CbcModel * model, int number, const int * which);
26 
27  // Copy constructor
29 
31  virtual CbcObject * clone() const;
32 
33  // Assignment operator
35 
36  // Destructor
38 
40  virtual double infeasibility(const OsiBranchingInformation * info,
41  int &preferredWay) const;
42 
44  virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ;
45 
46 
47 protected:
49 
51  int numberInSet_;
53  int * which_;
54 };
55 #endif
56