summaryrefslogtreecommitdiff
path: root/build/Bonmin/include/coin/CbcCutModifier.hpp
diff options
context:
space:
mode:
authorHarpreet2016-08-04 15:25:44 +0530
committerHarpreet2016-08-04 15:25:44 +0530
commit9fd2976931c088dc523974afb901e96bad20f73c (patch)
tree22502de6e6988d5cd595290d11266f8432ad825b /build/Bonmin/include/coin/CbcCutModifier.hpp
downloadFOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.tar.gz
FOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.tar.bz2
FOSSEE-Optim-toolbox-development-9fd2976931c088dc523974afb901e96bad20f73c.zip
initial add
Diffstat (limited to 'build/Bonmin/include/coin/CbcCutModifier.hpp')
-rw-r--r--build/Bonmin/include/coin/CbcCutModifier.hpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/build/Bonmin/include/coin/CbcCutModifier.hpp b/build/Bonmin/include/coin/CbcCutModifier.hpp
new file mode 100644
index 0000000..726d615
--- /dev/null
+++ b/build/Bonmin/include/coin/CbcCutModifier.hpp
@@ -0,0 +1,57 @@
+// $Id: CbcCutModifier.hpp 1899 2013-04-09 18:12:08Z stefan $
+// Copyright (C) 2003, International Business Machines
+// Corporation and others. All Rights Reserved.
+// This code is licensed under the terms of the Eclipse Public License (EPL).
+
+//Edwin 11/25/09 carved out of CbcCutGenerator
+
+#ifndef CbcCutModifier_H
+#define CbcCutModifier_H
+
+#include "OsiSolverInterface.hpp"
+#include "OsiCuts.hpp"
+#include "CglCutGenerator.hpp"
+
+class CbcModel;
+class OsiRowCut;
+class OsiRowCutDebugger;
+/** Abstract cut modifier base class
+
+ In exotic circumstances - cuts may need to be modified
+ a) strengthened - changed
+ b) weakened - changed
+ c) deleted - set to NULL
+ d) unchanged
+*/
+
+class CbcCutModifier {
+public:
+ /// Default Constructor
+ CbcCutModifier ();
+
+ // Copy constructor
+ CbcCutModifier ( const CbcCutModifier &);
+
+ /// Destructor
+ virtual ~CbcCutModifier();
+
+ /// Assignment
+ CbcCutModifier & operator=(const CbcCutModifier& rhs);
+/// Clone
+ virtual CbcCutModifier * clone() const = 0;
+
+ /** Returns
+ 0 unchanged
+ 1 strengthened
+ 2 weakened
+ 3 deleted
+ */
+ virtual int modify(const OsiSolverInterface * solver, OsiRowCut & cut) = 0;
+ /// Create C++ lines to get to current state
+ virtual void generateCpp( FILE * ) {}
+protected:
+
+};
+
+#endif //CbcCutModifier_H
+