Loading...
Searching...
No Matches
surfaceProcessor.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
#ifndef BALL_STRUCTURE_SURFACE_PROCESSOR_H
#define BALL_STRUCTURE_SURFACE_PROCESSOR_H
#ifndef BALL_COMMON_EXCEPTION_H
# include <BALL/COMMON/exception.h>
#endif
#ifndef BALL_STRUCTURE_REDUCEDSURFACE_H
# include <BALL/STRUCTURE/reducedSurface.h>
#endif
#ifndef BALL_STRUCTURE_SOLVENTEXCLUDEDSURFACE_H
# include <BALL/STRUCTURE/solventExcludedSurface.h>
#endif
#ifndef BALL_STRUCTURE_TRIANGULATEDSES_H
# include <BALL/STRUCTURE/triangulatedSES.h>
#endif
#ifndef BALL_STRUCTURE_SOLVENTACCESSIBLESURFACE_H
# include <BALL/STRUCTURE/solventAccessibleSurface.h>
#endif
#ifndef BALL_STRUCTURE_TRIANGULATEDSAS_H
# include <BALL/STRUCTURE/triangulatedSAS.h>
#endif
#ifndef BALL_STRUCTURE_TRIANGULATEDSURFACE_H
# include <BALL/STRUCTURE/triangulatedSurface.h>
#endif
#ifndef BALL_MATHS_SURFACE_H
# include <BALL/MATHS/surface.h>
#endif
#ifndef BALL_CONCEPT_PROCESSOR_H
# include <BALL/CONCEPT/processor.h>
#endif
#ifndef BALL_KERNEL_ATOM_H
# include <BALL/KERNEL/atom.h>
#endif
#ifndef BALL_KERNEL_PTE_H
# include <BALL/KERNEL/PTE.h>
#endif
namespace BALL
{
class BALL_EXPORT SurfaceProcessor
: public UnaryProcessor<Atom>
{
public:
enum SurfaceType
{
SOLVENT_EXCLUDED_SURFACE,
SOLVENT_ACCESSIBLE_SURFACE
};
SurfaceProcessor();
virtual bool start();
virtual bool finish();
virtual Processor::Result operator () (Atom& atom);
const Surface& getSurface() const { return surface_; }
Surface& getSurface() { return surface_; }
void setProbeRadius(double radius)
{
if(radius <= 0.0) {
throw Exception::OutOfRange(__FILE__, __LINE__);
}
probe_radius_ = radius;
}
double getProbeRadius() const { return probe_radius_; }
void setDensity(double density) { density_ = density; }
double getDensity() const { return density_; }
std::vector<TSphere3<double> >& getSpheres() { return spheres_; }
void setType(SurfaceType type) { surface_type_ = type; }
SurfaceType getType() const { return surface_type_; }
protected:
double radius_offset_;
double vdw_factor_;
//_
SurfaceType surface_type_;
//_
Surface surface_;
//_
std::vector<TSphere3<double> > spheres_;
//_
double density_;
//_
double probe_radius_;
};
}
#endif // BALL_STRUCTURE_SURFACE_PROCESSOR_H
exception.h
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
PTE.h
atom.h
BALL::Atom
Definition atom.h:90
BALL::Exception::OutOfRange
Definition COMMON/exception.h:219
BALL::Processor::Result
int Result
Definition processor.h:36
BALL::SurfaceProcessor::spheres_
std::vector< TSphere3< double > > spheres_
Definition surfaceProcessor.h:146
BALL::SurfaceProcessor::setDensity
void setDensity(double density)
Definition surfaceProcessor.h:114
BALL::SurfaceProcessor::finish
virtual bool finish()
BALL::SurfaceProcessor::getType
SurfaceType getType() const
Get the surface type to be computed.
Definition surfaceProcessor.h:128
BALL::SurfaceProcessor::getSurface
Surface & getSurface()
Definition surfaceProcessor.h:94
BALL::SurfaceProcessor::getDensity
double getDensity() const
Definition surfaceProcessor.h:117
BALL::SurfaceProcessor::getSpheres
std::vector< TSphere3< double > > & getSpheres()
Definition surfaceProcessor.h:120
BALL::SurfaceProcessor::start
virtual bool start()
BALL::SurfaceProcessor::density_
double density_
Definition surfaceProcessor.h:149
BALL::SurfaceProcessor::setProbeRadius
void setProbeRadius(double radius)
Definition surfaceProcessor.h:101
BALL::SurfaceProcessor::setType
void setType(SurfaceType type)
Definition surfaceProcessor.h:125
BALL::SurfaceProcessor::getProbeRadius
double getProbeRadius() const
Definition surfaceProcessor.h:111
BALL::SurfaceProcessor::vdw_factor_
double vdw_factor_
Definition surfaceProcessor.h:137
BALL::SurfaceProcessor::radius_offset_
double radius_offset_
Definition surfaceProcessor.h:134
BALL::SurfaceProcessor::surface_type_
SurfaceType surface_type_
Definition surfaceProcessor.h:140
BALL::SurfaceProcessor::getSurface
const Surface & getSurface() const
Definition surfaceProcessor.h:91
BALL::SurfaceProcessor::surface_
Surface surface_
Definition surfaceProcessor.h:143
BALL::SurfaceProcessor::probe_radius_
double probe_radius_
Definition surfaceProcessor.h:152
BALL::SurfaceProcessor::SurfaceType
SurfaceType
Definition surfaceProcessor.h:58
BALL::SurfaceProcessor::SOLVENT_ACCESSIBLE_SURFACE
@ SOLVENT_ACCESSIBLE_SURFACE
Definition surfaceProcessor.h:60
BALL::SurfaceProcessor::SOLVENT_EXCLUDED_SURFACE
@ SOLVENT_EXCLUDED_SURFACE
Definition surfaceProcessor.h:59
BALL::SurfaceProcessor::SurfaceProcessor
SurfaceProcessor()
Default constructor.
BALL::UnaryProcessor< Atom >::UnaryProcessor
UnaryProcessor()
Definition processor.h:69
BALL::Surface
TSurface< float > Surface
Definition surface.h:488
BALL
Definition constants.h:13
processor.h
reducedSurface.h
solventAccessibleSurface.h
solventExcludedSurface.h
surface.h
triangulatedSAS.h
triangulatedSES.h
triangulatedSurface.h