00001
00002
00003 #ifndef SbbBranchUser_H
00004 #define SbbBranchUser_H
00005
00006 #include "SbbBranchBase.hpp"
00007
00010 class SbbBranchUserDecision : public SbbBranchDecision {
00011 public:
00012
00013 SbbBranchUserDecision ();
00014
00015
00016 SbbBranchUserDecision ( const SbbBranchUserDecision &);
00017
00018 virtual ~SbbBranchUserDecision();
00019
00021 virtual SbbBranchDecision * clone() const;
00022
00024 virtual void initialize(SbbModel * model);
00025
00033 virtual int betterBranch(SbbBranchingObject * thisOne,
00034 SbbBranchingObject * bestSoFar,
00035 double changeUp, int numberInfeasibilitiesUp,
00036 double changeDown, int numberInfeasibilitiesDown);
00037
00045 virtual int
00046 bestBranch (SbbBranchingObject ** objects, int numberObjects, int numberUnsatisfied,
00047 double * changeUp, int * numberInfeasibilitiesUp,
00048 double * changeDown, int * numberInfeasibilitiesDown,
00049 double objectiveValue) ;
00050 private:
00051
00053 SbbBranchUserDecision & operator=(const SbbBranchUserDecision& rhs);
00054
00055 };
00056
00057 #endif