BALL  1.5.0
surfaceProcessor.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 #ifndef BALL_STRUCTURE_SURFACE_PROCESSOR_H
6 #define BALL_STRUCTURE_SURFACE_PROCESSOR_H
7 
8 #ifndef BALL_COMMON_EXCEPTION_H
9 # include <BALL/COMMON/exception.h>
10 #endif
11 #ifndef BALL_STRUCTURE_REDUCEDSURFACE_H
13 #endif
14 #ifndef BALL_STRUCTURE_SOLVENTEXCLUDEDSURFACE_H
16 #endif
17 #ifndef BALL_STRUCTURE_TRIANGULATEDSES_H
19 #endif
20 #ifndef BALL_STRUCTURE_SOLVENTACCESSIBLESURFACE_H
22 #endif
23 #ifndef BALL_STRUCTURE_TRIANGULATEDSAS_H
25 #endif
26 #ifndef BALL_STRUCTURE_TRIANGULATEDSURFACE_H
28 #endif
29 #ifndef BALL_MATHS_SURFACE_H
30 # include <BALL/MATHS/surface.h>
31 #endif
32 #ifndef BALL_CONCEPT_PROCESSOR_H
33 # include <BALL/CONCEPT/processor.h>
34 #endif
35 #ifndef BALL_KERNEL_ATOM_H
36 # include <BALL/KERNEL/atom.h>
37 #endif
38 #ifndef BALL_KERNEL_PTE_H
39 # include <BALL/KERNEL/PTE.h>
40 #endif
41 
42 namespace BALL
43 {
44 
49  : public UnaryProcessor<Atom>
50  {
51  public:
52 
56  enum SurfaceType
58  {
60  SOLVENT_ACCESSIBLE_SURFACE
61  };
63 
67 
70 
72 
76 
78  virtual bool start();
79 
81  virtual bool finish();
82 
84  virtual Processor::Result operator () (Atom& atom);
86 
89 
91  const Surface& getSurface() const { return surface_; }
92 
94  Surface& getSurface() { return surface_; }
95 
101  void setProbeRadius(double radius)
102  {
103  if(radius <= 0.0) {
104  throw Exception::OutOfRange(__FILE__, __LINE__);
105  }
106 
107  probe_radius_ = radius;
108  }
109 
111  double getProbeRadius() const { return probe_radius_; }
112 
114  void setDensity(double density) { density_ = density; }
115 
117  double getDensity() const { return density_; }
118 
120  std::vector<TSphere3<double> >& getSpheres() { return spheres_; }
121 
125  void setType(SurfaceType type) { surface_type_ = type; }
126 
128  SurfaceType getType() const { return surface_type_; }
130 
131  protected:
132 
135 
137  double vdw_factor_;
138 
139  //_
141 
142  //_
144 
145  //_
146  std::vector<TSphere3<double> > spheres_;
147 
148  //_
149  double density_;
150 
151  //_
153  };
154 
155 }
156 
157 #endif // BALL_STRUCTURE_SURFACE_PROCESSOR_H
BALL::SurfaceProcessor::radius_offset_
double radius_offset_
Definition: surfaceProcessor.h:134
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
BALL::SurfaceProcessor::setProbeRadius
void setProbeRadius(double radius)
Definition: surfaceProcessor.h:101
BALL::SurfaceProcessor::getSpheres
std::vector< TSphere3< double > > & getSpheres()
Definition: surfaceProcessor.h:120
reducedSurface.h
PTE.h
triangulatedSES.h
solventAccessibleSurface.h
BALL::SurfaceProcessor::vdw_factor_
double vdw_factor_
Definition: surfaceProcessor.h:137
BALL::Atom
Definition: atom.h:90
BALL::SurfaceProcessor::spheres_
std::vector< TSphere3< double > > spheres_
Definition: surfaceProcessor.h:146
BALL::SurfaceProcessor
Definition: surfaceProcessor.h:50
BALL::SurfaceProcessor::surface_
Surface surface_
Definition: surfaceProcessor.h:143
triangulatedSurface.h
BALL
Definition: constants.h:13
solventExcludedSurface.h
BALL::SurfaceProcessor::SOLVENT_EXCLUDED_SURFACE
@ SOLVENT_EXCLUDED_SURFACE
Definition: surfaceProcessor.h:59
BALL::SurfaceProcessor::surface_type_
SurfaceType surface_type_
Definition: surfaceProcessor.h:140
BALL::SurfaceProcessor::SurfaceProcessor
SurfaceProcessor()
Default constructor.
BALL::SurfaceProcessor::getSurface
const Surface & getSurface() const
Definition: surfaceProcessor.h:91
triangulatedSAS.h
BALL::UnaryProcessor
Definition: processor.h:60
BALL::SurfaceProcessor::SurfaceType
SurfaceType
Definition: surfaceProcessor.h:58
atom.h
BALL::SurfaceProcessor::getType
SurfaceType getType() const
Get the surface type to be computed.
Definition: surfaceProcessor.h:128
processor.h
exception.h
BALL::SurfaceProcessor::setDensity
void setDensity(double density)
Definition: surfaceProcessor.h:114
BALL::SurfaceProcessor::setType
void setType(SurfaceType type)
Definition: surfaceProcessor.h:125
BALL::SurfaceProcessor::probe_radius_
double probe_radius_
Definition: surfaceProcessor.h:152
BALL::SurfaceProcessor::density_
double density_
Definition: surfaceProcessor.h:149
BALL::TSurface< float >
BALL::SurfaceProcessor::finish
virtual bool finish()
BALL::SurfaceProcessor::start
virtual bool start()
BALL::Processor::Result
int Result
Definition: processor.h:36
BALL::SurfaceProcessor::getSurface
Surface & getSurface()
Definition: surfaceProcessor.h:94
BALL::SurfaceProcessor::getDensity
double getDensity() const
Definition: surfaceProcessor.h:117
surface.h
BALL::SurfaceProcessor::getProbeRadius
double getProbeRadius() const
Definition: surfaceProcessor.h:111
BALL::Exception::OutOfRange
Definition: COMMON/exception.h:219