// $Id: CbcCompareDepth.hpp 1902 2013-04-10 16:58:16Z 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/24/09 carved out of CbcCompareActual #ifndef CbcCompareDepth_H #define CbcCompareDepth_H //############################################################################# /* These are alternative strategies for node traversal. They can take data etc for fine tuning At present the node list is stored as a heap and the "test" comparison function returns true if node y is better than node x. */ #include "CbcNode.hpp" #include "CbcCompareBase.hpp" #include "CbcCompare.hpp" class CbcModel; // This is default before first solution class CbcCompareDepth : public CbcCompareBase { public: // Default Constructor CbcCompareDepth () ; ~CbcCompareDepth(); // Copy constructor CbcCompareDepth ( const CbcCompareDepth &rhs); // Assignment operator CbcCompareDepth & operator=( const CbcCompareDepth& rhs); /// Clone virtual CbcCompareBase * clone() const; /// Create C++ lines to get to current state virtual void generateCpp( FILE * fp); // This returns true if the depth of node y is greater than depth of node x virtual bool test (CbcNode * x, CbcNode * y); }; #endif