BALL::ScoringFunction Class Reference

#include <BALL/SCORING/COMMON/scoringFunction.h>

Inheritance diagram for BALL::ScoringFunction:
BALL::SLICKEnergy BALL::SLICKScore

List of all members.

Classes

struct  Default
struct  Option

Public Member Functions

 ScoringFunction ()
 ScoringFunction (const ScoringFunction &sf)
 ScoringFunction (Molecule &receptor, Molecule &ligand)
 ScoringFunction (Molecule &receptor, Molecule &ligand, const Options &options)
virtual ~ScoringFunction ()
virtual void clear ()
ScoringFunction & operator= (const ScoringFunction &sf)
bool setup ()
bool setup (Molecule &receptor, Molecule &ligand)
bool setup (Molecule &receptor, Molecule &ligand, const Options &options)
virtual bool specificSetup () throw (Exception::TooManyErrors)
void setMaximumNumberOfErrors (Size nr)
Size getMaximumNumberOfErrors () const
void setFirstMolecule (Molecule &molecule1)
Molecule * getFirstMolecule () const
void setSecondMolecule (Molecule &molecule2)
Molecule * getSecondMolecule () const
void setReceptor (Molecule &receptor)
Molecule * getReceptor () const
void setLigand (Molecule &ligand)
Molecule * getLigand () const
void setIntercept (double intercept)
double getIntercept () const
void setBaseFunction (ScoringBaseFunction &base_function)
 Set the instance of BaseFunction for the scoring function.
ScoringBaseFunction * getBaseFunction () const
void insertComponent (ScoringComponent *component, float coefficient=1.0f)
void removeComponent (const ScoringComponent *component)
void removeComponent (const String &name)
void setCoefficient (const ScoringComponent *component, float coefficient)
void setCoefficient (const String &name, float coefficient)
bool getCoefficient (const ScoringComponent *component, float &coefficient) const
bool getCoefficient (const String &name, float &coefficient) const
ScoringComponent * getComponent (const String &name) const
 Return a pointer to a component in the components vector.
ScoringComponent * getComponent (const Size index) const
 Return a pointer to a component in the components vector.
double calculateScore ()
const HashSet< const Atom * > & getUnassignedAtoms () const
HashSet< const Atom * > & getUnassignedAtoms ()

Public Attributes

Options options

Protected Attributes

Molecule * molecule1_
Molecule * molecule2_
String name_
double score_
double intercept_
ScoringBaseFunction * base_function_
std::vector< std::pair
< ScoringComponent *, float > > 
components_
HashSet< const Atom * > unassigned_atoms_
Size max_number_of_errors_
Size number_of_errors_

Constructor & Destructor Documentation

BALL::ScoringFunction::ScoringFunction (  ) 
BALL::ScoringFunction::ScoringFunction ( const ScoringFunction &  sf  ) 
BALL::ScoringFunction::ScoringFunction ( Molecule &  receptor,
Molecule &  ligand 
)
BALL::ScoringFunction::ScoringFunction ( Molecule &  receptor,
Molecule &  ligand,
const Options &  options 
)
virtual BALL::ScoringFunction::~ScoringFunction (  )  [virtual]

Member Function Documentation

double BALL::ScoringFunction::calculateScore (  ) 
virtual void BALL::ScoringFunction::clear (  )  [virtual]

Reimplemented in BALL::SLICKEnergy, and BALL::SLICKScore.

ScoringBaseFunction* BALL::ScoringFunction::getBaseFunction (  )  const

Return a pointer to the instance of BaseFunction used by this scoring function.

bool BALL::ScoringFunction::getCoefficient ( const String &  name,
float &  coefficient 
) const

Get the coefficient of a component. If there was no matching component, return false, ow return true.

bool BALL::ScoringFunction::getCoefficient ( const ScoringComponent *  component,
float &  coefficient 
) const

Get the coefficient of a component. If there was no matching component, return false, ow return true.

ScoringComponent* BALL::ScoringFunction::getComponent ( const Size  index  )  const

Return a pointer to a component in the components vector.

ScoringComponent* BALL::ScoringFunction::getComponent ( const String &  name  )  const

Return a pointer to a component in the components vector.

Molecule* BALL::ScoringFunction::getFirstMolecule (  )  const
double BALL::ScoringFunction::getIntercept (  )  const
Molecule* BALL::ScoringFunction::getLigand (  )  const

Return the ligand of the complex (which is just the same as molecule2_).

Size BALL::ScoringFunction::getMaximumNumberOfErrors (  )  const
Molecule* BALL::ScoringFunction::getReceptor (  )  const

Return the receptor of the complex (which is just the same as molecule1_).

Molecule* BALL::ScoringFunction::getSecondMolecule (  )  const
HashSet<const Atom*>& BALL::ScoringFunction::getUnassignedAtoms (  ) 
const HashSet<const Atom*>& BALL::ScoringFunction::getUnassignedAtoms (  )  const
void BALL::ScoringFunction::insertComponent ( ScoringComponent *  component,
float  coefficient = 1.0f 
)
ScoringFunction& BALL::ScoringFunction::operator= ( const ScoringFunction &  sf  ) 
void BALL::ScoringFunction::removeComponent ( const String &  name  ) 

Remove a component from the component list of this scoring function and delete it from memory. If there was no matching component, do nothing. Note that the user will get no feedback if there was no component removed. Only the first occurrence of a name in the component list will be removed.

void BALL::ScoringFunction::removeComponent ( const ScoringComponent *  component  ) 

Remove a component from the component list of this scoring function and delete it from memory. If there was no matching component, do nothing. Note that the user will get no feedback if there was no component removed.

void BALL::ScoringFunction::setBaseFunction ( ScoringBaseFunction &  base_function  ) 

Set the instance of BaseFunction for the scoring function.

void BALL::ScoringFunction::setCoefficient ( const String &  name,
float  coefficient 
)

Set the coefficient of a named component. If there was no matching component, do nothing. Note that the user will get no feedback if there was no coefficient set. Only the first occurrence of a name in the component list will be changed.

void BALL::ScoringFunction::setCoefficient ( const ScoringComponent *  component,
float  coefficient 
)

Set the coefficient of a component. If there was no matching component, do nothing. Note that the user will get no feedback if there was no coefficient set.

void BALL::ScoringFunction::setFirstMolecule ( Molecule &  molecule1  ) 
void BALL::ScoringFunction::setIntercept ( double  intercept  ) 
void BALL::ScoringFunction::setLigand ( Molecule &  ligand  ) 

Set the ligand of the complex (which is just the same as molecule2_).

void BALL::ScoringFunction::setMaximumNumberOfErrors ( Size  nr  ) 
void BALL::ScoringFunction::setReceptor ( Molecule &  receptor  ) 

Set the receptor of the complex (which is just the same as molecule1_).

void BALL::ScoringFunction::setSecondMolecule ( Molecule &  molecule2  ) 
bool BALL::ScoringFunction::setup ( Molecule &  receptor,
Molecule &  ligand,
const Options &  options 
)
bool BALL::ScoringFunction::setup ( Molecule &  receptor,
Molecule &  ligand 
)
bool BALL::ScoringFunction::setup (  ) 
virtual bool BALL::ScoringFunction::specificSetup (  )  throw (Exception::TooManyErrors) [virtual]

Reimplemented in BALL::SLICKEnergy, and BALL::SLICKScore.


Member Data Documentation

std::vector< std::pair<ScoringComponent*, float> > BALL::ScoringFunction::components_ [protected]