Cbc  trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
CbcGeneral.hpp
Go to the documentation of this file.
00001 // $Id$
00002 // Copyright (C) 2002, International Business Machines
00003 // Corporation and others.  All Rights Reserved.
00004 // This code is licensed under the terms of the Eclipse Public License (EPL).
00005 
00006 // Edwin 11/10/2009-- carved out of CbcBranchActual
00007 
00008 #ifndef CbcGeneral_H
00009 #define CbcGeneral_H
00010 
00011 #include "CbcBranchBase.hpp"
00017 class CbcGeneral : public CbcObject {
00018 
00019 public:
00020 
00021     // Default Constructor
00022     CbcGeneral ();
00023 
00027     CbcGeneral (CbcModel * model);
00028 
00029     // Copy constructor
00030     CbcGeneral ( const CbcGeneral &);
00031 
00033     virtual CbcObject * clone() const = 0;
00034 
00035     // Assignment operator
00036     CbcGeneral & operator=( const CbcGeneral& rhs);
00037 
00038     // Destructor
00039     ~CbcGeneral ();
00040 
00042     virtual double infeasibility(const OsiBranchingInformation * info,
00043                                  int &preferredWay) const;
00044 
00045     using CbcObject::feasibleRegion ;
00047     virtual void feasibleRegion() = 0;
00048 
00050     virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ;
00051 
00053     virtual void redoSequenceEtc(CbcModel * model, int numberColumns, const int * originalColumns) = 0;
00054 
00055 protected:
00057 };
00058 
00059 #endif
00060 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines