Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CbcGeneral.hpp
Go to the documentation of this file.
1 // $Id: CbcGeneral.hpp 1899 2013-04-09 18:12:08Z stefan $
2 // Copyright (C) 2002, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 // Edwin 11/10/2009-- carved out of CbcBranchActual
7 
8 #ifndef CbcGeneral_H
9 #define CbcGeneral_H
10 
11 #include "CbcBranchBase.hpp"
17 class CbcGeneral : public CbcObject {
18 
19 public:
20 
21  // Default Constructor
22  CbcGeneral ();
23 
28 
29  // Copy constructor
30  CbcGeneral ( const CbcGeneral &);
31 
33  virtual CbcObject * clone() const = 0;
34 
35  // Assignment operator
36  CbcGeneral & operator=( const CbcGeneral& rhs);
37 
38  // Destructor
39  ~CbcGeneral ();
40 
42  virtual double infeasibility(const OsiBranchingInformation * info,
43  int &preferredWay) const;
44 
47  virtual void feasibleRegion() = 0;
48 
50  virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ;
51 
53  virtual void redoSequenceEtc(CbcModel * model, int numberColumns, const int * originalColumns) = 0;
54 
55 protected:
57 };
58 
59 #endif
60 
virtual void feasibleRegion()=0
For the variable(s) referenced by the object, look at the current solution and set bounds to match th...
int preferredWay() const
If -1 down always chosen first, +1 up always, 0 normal.
Definition: CbcObject.hpp:245
Abstract Base Class for describing an interface to a solver.
virtual CbcObject * clone() const =0
Clone.
double infeasibility() const
Return infeasibility.
CbcGeneral & operator=(const CbcGeneral &rhs)
CbcModel * model() const
Return model.
Definition: CbcObject.hpp:240
Abstract branching object base class Now just difference with OsiBranchingObject. ...
Define a catch all class.
Definition: CbcGeneral.hpp:17
virtual void redoSequenceEtc(CbcModel *model, int numberColumns, const int *originalColumns)=0
Redoes data when sequence numbers change.
virtual void feasibleRegion()=0
This looks at solution and sets bounds to contain solution.
Simple Branch and bound class.
Definition: CbcModel.hpp:101
virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
Creates a branching object.