/usr/include/BALL/STRUCTURE/surfaceProcessor.h is in libball1.4-dev 1.4.3~beta1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | // -*- 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
{
/** SurfaceProcessor.
\ingroup Surface
*/
class BALL_EXPORT SurfaceProcessor
: public UnaryProcessor<Atom>
{
public:
/** @name Enums
*/
//@{
///
enum SurfaceType
{
SOLVENT_EXCLUDED_SURFACE,
SOLVENT_ACCESSIBLE_SURFACE
};
//@}
/** @name Constructors and destructor.
*/
//@{
/// Default constructor
SurfaceProcessor();
//@}
/** @name Processor-related methods.
*/
//@{
///
virtual bool start();
///
virtual bool finish();
///
virtual Processor::Result operator () (Atom& atom);
//@}
/** @name Accessors.
*/
//@{
///
const Surface& getSurface() const { return surface_; }
///
Surface& getSurface() { return surface_; }
/**
* Sets the radius of the used probe sphere
*
* @throw Exception::OutOfRange Specifying a radius <= 0 is illegal
*/
void setProbeRadius(double radius) throw(Exception::OutOfRange){
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_; }
/** Set the surface type to be computed.
Default is SOLVENT_EXCLUDED_SURFACE.
*/
void setType(SurfaceType type) { surface_type_ = type; }
/// Get the surface type to be computed.
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
|