BALL  1.4.1
branchAndBoundBondOrderStrategy.h
Go to the documentation of this file.
00001 #ifndef BALL_STRUCTURE_BONDORDERS_BRANCHANDBOUNDBONDORDERSTRATEGY_H
00002 #define BALL_STRUCTURE_BONDORDERS_BRANCHANDBOUNDBONDORDERSTRATEGY_H
00003 
00004 #ifndef BALL_STRUCTURE_BONDORDERS_BONDORDERASSIGNMENTSTRATEGY_H
00005 # include <BALL/STRUCTURE/BONDORDERS/bondOrderAssignmentStrategy.h>
00006 #endif
00007 
00008 #ifndef BALL_STRUCTURE_BONDORDERS_BONDORDERASSIGNMENT_H
00009 # include <BALL/STRUCTURE/BONDORDERS/bondOrderAssignment.h>
00010 #endif
00011 
00012 #ifndef BALL_STRUCTURE_BONDORDERS_KGREEDYBONDORDERSTRATEGY_H
00013 # include <BALL/STRUCTURE/BONDORDERS/KGreedyBondOrderStrategy.h>
00014 #endif
00015 
00016 namespace BALL
00017 {
00028   class BranchAndBoundBondOrderStrategy
00029     : public KGreedyBondOrderStrategy
00030   {
00031     public:
00035 
00036       struct BALL_EXPORT Option
00037       {
00044         static const char* BRANCH_AND_BOUND_CUTOFF;
00045       };
00046 
00047       struct BALL_EXPORT Default
00048       {
00049         static const float BRANCH_AND_BOUND_CUTOFF;
00050       };
00052 
00053       BranchAndBoundBondOrderStrategy(AssignBondOrderProcessor* parent);
00054       virtual ~BranchAndBoundBondOrderStrategy();
00055 
00056       virtual void clear();
00057       virtual void init();
00058 
00059       virtual bool readOptions(const Options& options);
00060       virtual void setDefaultOptions();
00061 
00062       virtual boost::shared_ptr<BondOrderAssignment> computeNextSolution();
00063 
00064     protected:
00065   };
00066 }
00067 
00068 #endif // BALL_STRUCTURE_BONDORDERS_KGREEDYBONDORDERSTRATEGY_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines