BALL  1.4.79
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
pair6_12InteractionEnergyProcessor.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: pair6_12InteractionEnergyProcessor.h,v 1.22 2005/12/23 17:01:59 amoll Exp $
5 //
6 
7 #ifndef BALL_SOLVATION_PAIR6_12INTERACTIONENERGYPROCESSOR_H
8 #define BALL_SOLVATION_PAIR6_12INTERACTIONENERGYPROCESSOR_H
9 
10 #ifndef BALL_COMMON_H
11 # include <BALL/common.h>
12 #endif
13 
14 #ifndef BALL_DATATYPE_OPTIONS_H
15 # include <BALL/DATATYPE/options.h>
16 #endif
17 
18 #ifndef BALL_MATHS_SURFACE_H
19 # include <BALL/MATHS/surface.h>
20 #endif
21 
22 #ifndef BALL_ENERGY_ENERGYPROCESSOR_H
24 #endif
25 
26 #ifndef BALL_STRUCTURE_RDFPARAMETER_H
28 #endif
29 
30 #ifndef BALL_SOLVATION_PAIR6_12RDFINTEGRATOR_H
32 #endif
33 
34 #ifndef BALL_SOLVATION_SOLVENTDESCRIPTOR_H
36 #endif
37 
38 namespace BALL
39 {
49  : public EnergyProcessor
50  {
51 
52  public:
53 
54  // ?????: Doku.
56  {
57  SURFACE__UNKNOWN = 0,
58  SURFACE__SAS = 1,
59  SURFACE__SES = 2,
60  SURFACE__EXTERNAL = 3
61  };
62 
68  {
69 
75  static const char* VERBOSITY;
76 
83  static const char* USE_RDF;
84 
91  static const char* RDF_FILENAME;
92 
99  static const char* SOLVENT_FILENAME;
100 
107  static const char* LJ_FILENAME;
108 
115  static const char* SOLVENT_NUMBER_DENSITY;
116 
121  static const char* SURFACE_TYPE;
122 
127  static const char* SURFACE_FILENAME;
128 
129  };
130 
136  {
140  static const Size VERBOSITY;
141 
146  static const bool USE_RDF;
147  static const char* RDF_FILENAME;
148  static const char* SOLVENT_FILENAME;
149  static const char* LJ_FILENAME;
150 
156  static const float SOLVENT_NUMBER_DENSITY;
157 
161  static const Size SURFACE_TYPE;
162 
166  static const char* SURFACE_FILENAME;
167 
168  };
169 
173 
177  ;
178 
184  ;
185 
193  const RDFParameter& rdf_param,
194  const Pair6_12RDFIntegrator& rdf_integrator)
195  ;
196 
200 
202 
205 
209  void setSolventDescriptor(const SolventDescriptor& solvent) ;
210 
214  const SolventDescriptor& getSolventDescriptor() const ;
215 
219  void setRDFParameters(const RDFParameter& rdf_parameter) ;
220 
224  const RDFParameter& getRDFParameter() const ;
225 
229  void setRDFIntegrator(const Pair6_12RDFIntegrator& integrator) ;
230 
234  const Pair6_12RDFIntegrator& getRDFIntegrator() const ;
235 
237 
240 
243  const Pair6_12InteractionEnergyProcessor& operator =
244  (const Pair6_12InteractionEnergyProcessor& proc) ;
245 
248  virtual void clear() ;
249 
251 
254 
257  virtual bool finish()
258  throw(Exception::DivisionByZero);
259 
261 
264 
267  Options options;
268 
270 
273 
276  bool operator == (const Pair6_12InteractionEnergyProcessor& proc)
277  const ;
278 
280 
281  protected:
282 
283  /*_ solvent description, to be read from an INIFile
284  */
286 
287  /*_ the rdf description, also from an INIFile
288  */
289  RDFParameter rdf_parameter_;
290 
291  /*_ This is the tool to perform integrations with embedded RDf information
292  */
293  Pair6_12RDFIntegrator rdf_integrator_;
294 
295 
296  private:
297 
298  void getExternalSurface_(std::vector<std::pair<Vector3, Surface> >& surface_map,
299  const char* surface_file) ;
300  };
301 
302 } // namespace BALL
303 
304 #endif // BALL__PAIR6_12INTERACTIONENERGYPROCESSOR_H
#define BALL_EXPORT
Definition: COMMON/global.h:50