00001
00002
00003 #ifndef BALL_SCORING_FUNCTIONS_SLICKENERGY_H
00004 #define BALL_SCORING_FUNCTIONS_SLICKENERGY_H
00005
00006 #ifndef BALL_COMMON_H
00007 # include <BALL/common.h>
00008 #endif
00009
00010 #ifndef BALL_MOLMEC_COMMON_SCORING_FUNCTION_H
00011 # include <BALL/SCORING/COMMON/scoringFunction.h>
00012 #endif
00013
00014 #ifndef BALL_KERNEL_SYSTEM_H
00015 # include <BALL/KERNEL/system.h>
00016 #endif
00017
00018 #ifndef BALL_DATATYPE_HASHMAP_H
00019 # include <BALL/DATATYPE/hashMap.h>
00020 #endif
00021
00022 namespace BALL
00023 {
00027 class SLICKEnergy
00028 : public ScoringFunction
00029 {
00030
00031 public:
00032
00036
00039 struct Option
00040 {
00043 static const char* CONST;
00044
00047 static const char* CHPI;
00048
00051 static const char* HB;
00052
00055 static const char* VDW;
00056
00059 static const char* NONPOLAR;
00060
00063 static const char* POLAR;
00064
00065 };
00066
00067
00070 struct Default
00071 {
00074 static const float CONST;
00075
00078 static const float CHPI;
00079
00082 static const float HB;
00083
00086 static const float VDW;
00087
00090 static const float NONPOLAR;
00091
00094 static const float POLAR;
00095
00096 };
00097
00098
00099
00101
00104
00105 BALL_CREATE(SLICKEnergy)
00106
00107
00109 SLICKEnergy()
00110 ;
00111
00115 SLICKEnergy(Molecule& protein, Molecule& ligand)
00116 ;
00117
00120 SLICKEnergy(Molecule& protein, Molecule& ligand,
00121 const Options& options)
00122 ;
00123
00126 SLICKEnergy(const SLICKEnergy& slick)
00127 ;
00128
00131 virtual ~SLICKEnergy()
00132 ;
00133
00135
00138
00141 const SLICKEnergy& operator = (const SLICKEnergy& slick)
00142 ;
00143
00146 virtual void clear()
00147 ;
00148
00150
00153
00156 virtual bool specificSetup()
00157 throw();
00158
00160
00163
00166 double getCHPIScore() const
00167 ;
00168
00171 double getHydrogenBondScore() const
00172 ;
00173
00176 double getVDWScore() const
00177 ;
00178
00181 double getPolarSolvationScore() const
00182 ;
00183
00186 double getNonpolarSolvationScore() const
00187 ;
00189
00190
00191 private:
00192
00193
00194
00195 void registerComponents_()
00196 ;
00197
00198 };
00199
00200 }
00201
00202 #endif // BALL_SCORING_FUNCTIONS_SLICKENERGY_H