BALL::BindingPocketProcessor Class Reference
[Miscellaneous]

#include <BALL/STRUCTURE/bindingPocketProcessor.h>

Inheritance diagram for BALL::BindingPocketProcessor:
Inheritance graph
[legend]

List of all members.

Classes

struct  Default
struct  Option
class  Sphere_
class  SphereComparator_

Public Member Functions

 BindingPocketProcessor ()
 BindingPocketProcessor (Options &new_options)
 BindingPocketProcessor (const BindingPocketProcessor &pp)
virtual ~BindingPocketProcessor ()
const BindingPocketProcessoroperator= (const BindingPocketProcessor &pp)
virtual bool finish ()
 Finish .
virtual Processor::Result operator() (Composite &composite)
const vector< std::pair
< Vector3, double > > & 
getActiveSitePoints () const
const vector< vector
< std::pair< Vector3, double > > > & 
getLayers () const

Public Attributes

Options options

Private Member Functions

double radius_ (const String &element)
void trySphere__ (HashGridBox3< Sphere_ >::DataIterator data_it, HashGridBox3< Sphere_ >::DataIterator data_it2, HashGridBox3< Sphere_ >::DataIterator data_it3)
void addSphere_s_ ()
Vector3 calculateT_ (HashGridBox3< Sphere_ >::DataIterator data_it, HashGridBox3< Sphere_ >::DataIterator data_it2)
void testFirst_ (HashGrid3< Sphere_ > &hg, HashGridBox3< Sphere_ >::DataIterator data_it, Position x, Position y, Position z)
void testSecond_ (HashGrid3< Sphere_ > &hg, HashGridBox3< Sphere_ >::DataIterator data_it, HashGridBox3< Sphere_ >::DataIterator data_it2, Position x, Position y, Position z, Position step)
bool testSphereClash_ (Vector3 &v)
bool testProteinClash_ (Vector3 &v)
bool testBC_ (Sphere_ &sp)
void weedCandidates_ ()
bool parse_ ()

Private Attributes

Position layer_
HashGrid3< Sphere_sphere_grid_
HashGrid3< Sphere_protein_grid_
HashGrid3< Sphere_layer_grid_
HashGrid3< Sphere_clayer_grid_
HashGrid3< Sphere_BC_grid_
HashGrid3< Sphere_pw_grid_
HashGrid3< Sphere_candidates_grid_
std::vector< Sphere_sorted_spheres_
double sphere_rad_
double second_layer_rad_
double protein_clash_rad_
double BC_threshold_
Position found_new_
double c_factor_
std::vector< Sphere_candidates
std::vector< std::pair
< Vector3, double > > 
asps_
std::vector< std::vector
< std::pair< Vector3, double > > > 
layers_
bool second_it_

Friends

std::ostream & operator<< (std::ostream &os, const BindingPocketProcessor::Sphere_ &)

Detailed Description

This processor searches for binding pockets in a given atom container. The pockets are detected with the PASS method (Fast Feature Selection Using Fractal Dimension (2000) Caetano Traina, Jr., Agma Traina, et al)

Definition at line 40 of file bindingPocketProcessor.h.


Constructor & Destructor Documentation

BALL::BindingPocketProcessor::BindingPocketProcessor (  ) 

standard constructor

BALL::BindingPocketProcessor::BindingPocketProcessor ( Options new_options  ) 

constructor with options

BALL::BindingPocketProcessor::BindingPocketProcessor ( const BindingPocketProcessor pp  ) 

copy constructor

virtual BALL::BindingPocketProcessor::~BindingPocketProcessor (  )  [virtual]

destructor


Member Function Documentation

void BALL::BindingPocketProcessor::addSphere_s_ (  )  [private]

compute sphere layers

Vector3 BALL::BindingPocketProcessor::calculateT_ ( HashGridBox3< Sphere_ >::DataIterator  data_it,
HashGridBox3< Sphere_ >::DataIterator  data_it2 
) [private]

geometric computation

virtual bool BALL::BindingPocketProcessor::finish (  )  [virtual]

Finish .

Reimplemented from BALL::UnaryProcessor< Composite >.

const vector<std::pair<Vector3,double> >& BALL::BindingPocketProcessor::getActiveSitePoints (  )  const

Returns the position and burial counts of the calculated actice site points

const vector<vector<std::pair<Vector3,double> > >& BALL::BindingPocketProcessor::getLayers (  )  const

Returns a vector of vectors, each containing one layer with position and probe weight of its spheres

virtual Processor::Result BALL::BindingPocketProcessor::operator() ( Composite  )  [virtual]

operator ()

Reimplemented from BALL::UnaryProcessor< Composite >.

const BindingPocketProcessor& BALL::BindingPocketProcessor::operator= ( const BindingPocketProcessor pp  ) 

assignment operator

bool BALL::BindingPocketProcessor::parse_ (  )  [private]

read parameter file

double BALL::BindingPocketProcessor::radius_ ( const String element  )  [private]

Determine the radius of an element

Parameters:
element the full name of the element for which a radius should be looked up. Example: "Oxygen"
Exceptions:
IllegalArgument if an unknown element has been passed
Returns:
The radius of the specified element
bool BALL::BindingPocketProcessor::testBC_ ( Sphere_ sp  )  [private]

test for burial count

void BALL::BindingPocketProcessor::testFirst_ ( HashGrid3< Sphere_ > &  hg,
HashGridBox3< Sphere_ >::DataIterator  data_it,
Position  x,
Position  y,
Position  z 
) [private]

test if three spheres produce two offspring spheres

bool BALL::BindingPocketProcessor::testProteinClash_ ( Vector3 v  )  [private]

test clash with protein atoms

void BALL::BindingPocketProcessor::testSecond_ ( HashGrid3< Sphere_ > &  hg,
HashGridBox3< Sphere_ >::DataIterator  data_it,
HashGridBox3< Sphere_ >::DataIterator  data_it2,
Position  x,
Position  y,
Position  z,
Position  step 
) [private]
bool BALL::BindingPocketProcessor::testSphereClash_ ( Vector3 v  )  [private]

test clash with all existing spheres

void BALL::BindingPocketProcessor::trySphere__ ( HashGridBox3< Sphere_ >::DataIterator  data_it,
HashGridBox3< Sphere_ >::DataIterator  data_it2,
HashGridBox3< Sphere_ >::DataIterator  data_it3 
) [private]

calculates two spheres if possible

void BALL::BindingPocketProcessor::weedCandidates_ (  )  [private]

remove redundant spheres


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const BindingPocketProcessor::Sphere_  
) [friend]

output operator for Sphere TODO: implement!

Definition at line 225 of file bindingPocketProcessor.h.


Member Data Documentation

std::vector<std::pair<Vector3,double> > BALL::BindingPocketProcessor::asps_ [private]

Definition at line 283 of file bindingPocketProcessor.h.

need for computation of burial count

Definition at line 245 of file bindingPocketProcessor.h.

threshold for burial count filer

Definition at line 271 of file bindingPocketProcessor.h.

Definition at line 277 of file bindingPocketProcessor.h.

store all possible new spheres

Definition at line 281 of file bindingPocketProcessor.h.

store all possible new spheres

Definition at line 253 of file bindingPocketProcessor.h.

needed for sphere collision

Definition at line 241 of file bindingPocketProcessor.h.

number of newly found spheres

Definition at line 275 of file bindingPocketProcessor.h.

current layer

Definition at line 220 of file bindingPocketProcessor.h.

store all sphere layers

Definition at line 237 of file bindingPocketProcessor.h.

std::vector<std::vector<std::pair<Vector3,double> > > BALL::BindingPocketProcessor::layers_ [private]

Definition at line 285 of file bindingPocketProcessor.h.

options for BALLPass

Definition at line 151 of file bindingPocketProcessor.h.

radius for collision with protein atoms

Definition at line 267 of file bindingPocketProcessor.h.

store protein atoms

Definition at line 233 of file bindingPocketProcessor.h.

need for computation of probe weight

Definition at line 249 of file bindingPocketProcessor.h.

Definition at line 340 of file bindingPocketProcessor.h.

sphere radius for following layers

Definition at line 263 of file bindingPocketProcessor.h.

Definition at line 255 of file bindingPocketProcessor.h.

store all spheres

Definition at line 225 of file bindingPocketProcessor.h.

first layer radius

Definition at line 259 of file bindingPocketProcessor.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Generated by  doxygen 1.6.3