diff options
Diffstat (limited to 'thirdparty/linux/include/coin/CbcGeneral.hpp')
-rw-r--r-- | thirdparty/linux/include/coin/CbcGeneral.hpp | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/thirdparty/linux/include/coin/CbcGeneral.hpp b/thirdparty/linux/include/coin/CbcGeneral.hpp new file mode 100644 index 0000000..19436b3 --- /dev/null +++ b/thirdparty/linux/include/coin/CbcGeneral.hpp @@ -0,0 +1,60 @@ +// $Id: CbcGeneral.hpp 1899 2013-04-09 18:12:08Z stefan $ +// Copyright (C) 2002, International Business Machines +// Corporation and others. All Rights Reserved. +// This code is licensed under the terms of the Eclipse Public License (EPL). + +// Edwin 11/10/2009-- carved out of CbcBranchActual + +#ifndef CbcGeneral_H +#define CbcGeneral_H + +#include "CbcBranchBase.hpp" +/** Define a catch all class. + This will create a list of subproblems +*/ + + +class CbcGeneral : public CbcObject { + +public: + + // Default Constructor + CbcGeneral (); + + /** Useful constructor + Just needs to point to model. + */ + CbcGeneral (CbcModel * model); + + // Copy constructor + CbcGeneral ( const CbcGeneral &); + + /// Clone + virtual CbcObject * clone() const = 0; + + // Assignment operator + CbcGeneral & operator=( const CbcGeneral& rhs); + + // Destructor + ~CbcGeneral (); + + /// Infeasibility - large is 0.5 + virtual double infeasibility(const OsiBranchingInformation * info, + int &preferredWay) const; + + using CbcObject::feasibleRegion ; + /// This looks at solution and sets bounds to contain solution + virtual void feasibleRegion() = 0; + + /// Creates a branching object + virtual CbcBranchingObject * createCbcBranch(OsiSolverInterface * solver, const OsiBranchingInformation * info, int way) ; + + /// Redoes data when sequence numbers change + virtual void redoSequenceEtc(CbcModel * model, int numberColumns, const int * originalColumns) = 0; + +protected: + /// data +}; + +#endif + |