BALL  1.4.79
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
BALL::GAFFTypeProcessor Class Reference

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

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

Classes

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

Public Member Functions

 GAFFTypeProcessor ()
 
 GAFFTypeProcessor (const Options &new_options)
 
virtual ~GAFFTypeProcessor ()
 
virtual Processor::Result operator() (Composite &composite)
 
std::set< StringgetTypeNames () const
 
- Public Member Functions inherited from BALL::UnaryProcessor< Composite >
 UnaryProcessor ()
 
 UnaryProcessor (const UnaryProcessor &)
 
virtual ~UnaryProcessor ()
 
virtual bool start ()
 
virtual bool finish ()
 

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, ... More...
 
void precomputeAtomProperties_ (Molecule *molecule)
 
void annotateBondTypes_ ()
 Helper for precomputeBondProperties. More...
 
void annotateRingSizes_ ()
 Helper for precomputeAtomProperties. More...
 
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_
 

Additional Inherited Members

- Public Types inherited from BALL::UnaryFunctor< Composite, Processor::Result >
typedef Processor::Result result_type
 
typedef Composite argument_type
 
typedef Compositeargument_reference
 
typedef const Compositeconst_argument_reference
 
typedef Compositeargument_pointer
 
typedef const Compositeconst_argument_pointer
 

Detailed Description

Definition at line 37 of file GAFFTypeProcessor.h.

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_ ( )
inlineprotected

Definition at line 92 of file GAFFTypeProcessor.h.

std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getHydrogenTypes_ ( )
inlineprotected

Definition at line 93 of file GAFFTypeProcessor.h.

std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getNitrogenTypes_ ( )
inlineprotected

Definition at line 94 of file GAFFTypeProcessor.h.

std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getOxygenTypes_ ( )
inlineprotected

Definition at line 95 of file GAFFTypeProcessor.h.

std::vector<TypeDefinition> BALL::GAFFTypeProcessor::getSulfurTypes_ ( )
inlineprotected

Definition at line 96 of file GAFFTypeProcessor.h.

std::set<String> BALL::GAFFTypeProcessor::getTypeNames ( ) const
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

Definition at line 137 of file GAFFTypeProcessor.h.

StringHashMap<GAFFCESParser*> BALL::GAFFTypeProcessor::ces_parsers_
protected

Definition at line 134 of file GAFFTypeProcessor.h.

Molecule* BALL::GAFFTypeProcessor::current_molecule_
protected

Definition at line 143 of file GAFFTypeProcessor.h.

Options BALL::GAFFTypeProcessor::options

Definition at line 88 of file GAFFTypeProcessor.h.

std::vector<std::vector<Atom*> > BALL::GAFFTypeProcessor::sssr_
protected

Definition at line 140 of file GAFFTypeProcessor.h.