00001 //Edwin 11/25/09 carved out of CbcCompareActual 00002 #ifndef CbcCompareEstimate_H 00003 #define CbcCompareEstimate_H 00004 00005 00006 //############################################################################# 00007 /* These are alternative strategies for node traversal. 00008 They can take data etc for fine tuning 00009 00010 At present the node list is stored as a heap and the "test" 00011 comparison function returns true if node y is better than node x. 00012 00013 */ 00014 #include "CbcNode.hpp" 00015 #include "CbcCompareBase.hpp" 00016 #include "CbcCompare.hpp" 00017 class CbcModel; 00018 00019 /* This is when rounding is being done 00020 */ 00021 class CbcCompareEstimate : public CbcCompareBase { 00022 public: 00023 // Default Constructor 00024 CbcCompareEstimate () ; 00025 ~CbcCompareEstimate() ; 00026 // Copy constructor 00027 CbcCompareEstimate ( const CbcCompareEstimate &rhs); 00028 00029 // Assignment operator 00030 CbcCompareEstimate & operator=( const CbcCompareEstimate& rhs); 00031 00033 virtual CbcCompareBase * clone() const; 00035 virtual void generateCpp( FILE * fp); 00036 00037 virtual bool test (CbcNode * x, CbcNode * y) ; 00038 }; 00039 00040 00041 #endif //CbcCompareEstimate_H 00042