00001
00002
00003
00004
00005
00006
00007 #ifndef BALL_SOLVATION_UHLIGCAVFREEENERGYPROCESSOR_H
00008 #define BALL_SOLVATION_UHLIGCAVFREEENERGYPROCESSOR_H
00009
00010 #ifndef BALL_COMMON_H
00011 # include <BALL/common.h>
00012 #endif
00013
00014 #ifndef BALL_ENERGY_ENERGYPROCESSOR_H
00015 # include <BALL/ENERGY/energyProcessor.h>
00016 #endif
00017
00018 #ifndef BALL_DATATYPE_OPTIONS_H
00019 # include <BALL/DATATYPE/options.h>
00020 #endif
00021
00022 namespace BALL
00023 {
00030 class BALL_EXPORT UhligCavFreeEnergyProcessor
00031 : public EnergyProcessor
00032 {
00033
00034 public:
00035
00040 struct Option
00041 {
00047 static const char* VERBOSITY;
00048
00056 static const char* PROBE_RADIUS;
00057
00065 static const char* SURFACE_TENSION;
00066
00074 static const char* CONSTANT;
00075
00076 };
00077
00082 struct Default
00083 {
00087 static const int VERBOSITY;
00088
00094 static const float PROBE_RADIUS;
00095
00106 static const float SURFACE_TENSION;
00107
00116 static const float CONSTANT;
00117
00118 };
00119
00123
00126 UhligCavFreeEnergyProcessor();
00127
00130 UhligCavFreeEnergyProcessor(const UhligCavFreeEnergyProcessor& proc);
00131
00134 virtual ~UhligCavFreeEnergyProcessor();
00135
00137
00140
00143 const UhligCavFreeEnergyProcessor& operator = (const UhligCavFreeEnergyProcessor& proc);
00144
00147 virtual void clear();
00148
00150
00153
00156 bool operator == (const UhligCavFreeEnergyProcessor& proc) const;
00157
00159
00162
00165 virtual bool finish();
00166
00168
00171
00174 Options options;
00175
00177
00178 private:
00179
00180 void setDefaultOptions();
00181
00182 };
00183 }
00184
00185 #endif // BALL_SOLVATION_UHLIGCAVFREEENERGYPROCESSOR_H