00001
00002
00003
00004 #ifndef BALL_STRUCTURE_FORCEFIELDEVALUATION_H
00005 #define BALL_STRUCTURE_FORCEFIELDEVALUATION_H
00006
00007 #ifndef BALL_STRUCTURE_DOCKING_ENERGETICEVALUATION_H
00008 # include <BALL/STRUCTURE/DOCKING/energeticEvaluation.h>
00009 #endif
00010
00011 #ifndef BALL_MOLMEC_COMMON_FORCEFIELD_H
00012 # include <BALL/MOLMEC/COMMON/forceField.h>
00013 #endif
00014
00015 namespace BALL
00016 {
00021 class BALL_EXPORT ForceFieldEvaluation
00022 : public EnergeticEvaluation
00023 {
00024 public:
00025
00027 ForceFieldEvaluation()
00028 ;
00029
00031 ForceFieldEvaluation(ForceField& ff)
00032 ;
00033
00035 virtual ~ForceFieldEvaluation()
00036 ;
00037
00040 void setForceField(ForceField& ff)
00041 ;
00042
00044 void setOptions(const Options& options)
00045 ;
00046
00048 ForceField& getForceField()
00049 ;
00050
00052 const ForceField& getForceField() const
00053 ;
00054
00056 Options& getOptions()
00057 ;
00058
00060 const Options& getOptions() const
00061 ;
00062
00064 virtual std::vector<ConformationSet::Conformation> operator () (ConformationSet& conformations)
00065 throw(Exception::TooManyErrors);
00066
00067 protected:
00068
00069 ForceField* ff_;
00070 Options options_;
00071 bool delete_force_field_;
00072 };
00073 }
00074 #endif