BALL::GAFFTypeProcessor Class Reference

#include <BALL/MOLMEC/AMBER/GAFFTypeProcessor.h>

Inheritance diagram for BALL::GAFFTypeProcessor:
BALL::UnaryProcessor< Composite > BALL::UnaryFunctor< Composite, Processor::Result >

List of all members.

Classes

struct  Default
struct  Option
struct  TypeDefinition
 Nested class definitions. More...

Public Types

enum  BOND_TYPES {
  sb, SB, db, DB,
  TB, DL, AB
}

Public Member Functions

 GAFFTypeProcessor ()
 GAFFTypeProcessor (const Options &new_options)
virtual ~GAFFTypeProcessor ()
virtual Processor::Result operator() (Composite &composite)

Public Attributes

Options options

Protected Member Functions

std::vector< TypeDefinitiongetCarbonTypes_ ()
std::vector< TypeDefinitiongetHydrogenTypes_ ()
std::vector< TypeDefinitiongetNitrogenTypes_ ()
std::vector< TypeDefinitiongetOxygenTypes_ ()
std::vector< TypeDefinitiongetSulfurTypes_ ()
void parseAtomtypeTableFile_ () throw (Exception::FileNotFound)
void precomputeBondProperties_ (Molecule *molecule)
 compute aromaticity, ring memberships, GAFF bond typization, ...
void precomputeAtomProperties_ (Molecule *molecule)
void annotateBondTypes_ ()
 Helper for precomputeBondProperties.
void annotateRingSizes_ ()
 Helper for precomputeAtomProperties.
void annotateAliphaticAndAromaticRingAtoms_ ()
void annotatePlanarRingAtoms_ ()
bool planarAtom_ (const Atom &atom)
bool assignAtomtype_ (Atom &atom)
void postProcessAtomTypes_ (Molecule *molecule)

Protected Attributes

StringHashMap< GAFFCESParser * > ces_parsers_
std::map< Position,
std::vector< TypeDefinition > > 
atom_types_
std::vector< std::vector< Atom * > > sssr_
Moleculecurrent_molecule_

Member Enumeration Documentation

Enumerator:
sb 
SB 
db 
DB 
TB 
DL 
AB 

Constructor & Destructor Documentation

BALL::GAFFTypeProcessor::GAFFTypeProcessor (  ) 
BALL::GAFFTypeProcessor::GAFFTypeProcessor ( const Options new_options  ) 
virtual BALL::GAFFTypeProcessor::~GAFFTypeProcessor (  )  [virtual]

Member Function Documentation

void BALL::GAFFTypeProcessor::annotateAliphaticAndAromaticRingAtoms_ (  )  [protected]
void BALL::GAFFTypeProcessor::annotateBondTypes_ (  )  [protected]

Helper for precomputeBondProperties.

void BALL::GAFFTypeProcessor::annotatePlanarRingAtoms_ (  )  [protected]
void BALL::GAFFTypeProcessor::annotateRingSizes_ (  )  [protected]

Helper for precomputeAtomProperties.

bool BALL::GAFFTypeProcessor::assignAtomtype_ ( Atom atom  )  [protected]

Check the atom against each possible atom type and try to assign one.

std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getCarbonTypes_ (  )  [inline, protected]
std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getHydrogenTypes_ (  )  [inline, protected]
std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getNitrogenTypes_ (  )  [inline, protected]
std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getOxygenTypes_ (  )  [inline, protected]
std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getSulfurTypes_ (  )  [inline, protected]
virtual Processor::Result BALL::GAFFTypeProcessor::operator() ( Composite  )  [virtual]

operator ()

Reimplemented from BALL::UnaryProcessor< Composite >.

void BALL::GAFFTypeProcessor::parseAtomtypeTableFile_ (  )  throw (Exception::FileNotFound) [protected]

Read file with table of atomtypes and push atomtypes and their TypeDefinition in corresponding vector and store a GAFFCESParser for every CESstring. The path to the atom type file is taken from the value of the option ATOMTYPE_FILENAME.

bool BALL::GAFFTypeProcessor::planarAtom_ ( const Atom atom  )  [protected]
void BALL::GAFFTypeProcessor::postProcessAtomTypes_ ( Molecule molecule  )  [protected]

Postprocessing and cleanup for GAFF types

void BALL::GAFFTypeProcessor::precomputeAtomProperties_ ( Molecule molecule  )  [protected]

Store connectivity, number of attached H-atoms and number of attached N,O,F,Cl and Br-atoms for every atom in molecule

void BALL::GAFFTypeProcessor::precomputeBondProperties_ ( Molecule molecule  )  [protected]

compute aromaticity, ring memberships, GAFF bond typization, ...


Member Data Documentation

std::map<Position, std::vector<TypeDefinition> > BALL::GAFFTypeProcessor::atom_types_ [protected]
std::vector<std::vector<Atom*> > BALL::GAFFTypeProcessor::sssr_ [protected]