This processor provides methods for detection and assignment of aromaticity. More...
#include <BALL/QSAR/aromaticityProcessor.h>
Classes | |
struct | Default |
Default values for options. More... | |
struct | Option |
Option names. More... | |
Public Member Functions | |
Constructors and Destructors | |
AromaticityProcessor () | |
AromaticityProcessor (const AromaticityProcessor &aro) | |
virtual | ~AromaticityProcessor () |
Assignment | |
AromaticityProcessor & | operator= (const AromaticityProcessor &aro) |
Accessors | |
void | aromatize (const vector< vector< Atom * > > &sssr, AtomContainer &ac) |
void | aromatizeSimple (vector< vector< Atom * > > &sssr) |
Processor-related methods | |
Processor::Result | operator() (AtomContainer &ac) |
virtual bool | start () |
Protected Member Functions | |
Predicates | |
bool | isValid_ (const AtomContainer &ac) |
Private Member Functions | |
bool | simpleCanBeAromatic_ (const HashSet< Atom * > &ring) |
bool | simpleCanBeAromaticWeaker_ (const HashSet< Atom * > &ring) |
void | extendAromaticSystem_ (vector< HashSet< Atom * > > &sssr, HashSet< Atom * > ring) |
bool | hasConjugatedDoubleBonds_ (HashSet< Atom * > ring) |
Size | countPiElectrons_ (HashSet< Atom * > &ring) |
Private Attributes | |
bool | overwrite_bond_orders_ |
Public Attributes | |
| |
Options | options |
options | |
void | setDefaultOptions () |
This processor provides methods for detection and assignment of aromaticity.
Aromaticity Processor
Processor method to detect aromaticity of AtomContainers. If it is called as a processor with the operator (), the RingPerceptionProcessor is called before, to calculate a ring set. It can be called explicitely with aromatize with a ringset as parameter.
Definition at line 28 of file aromaticityProcessor.h.
BALL::AromaticityProcessor::AromaticityProcessor | ( | ) |
Default constructor
BALL::AromaticityProcessor::AromaticityProcessor | ( | const AromaticityProcessor & | aro | ) |
Copy constructor
virtual BALL::AromaticityProcessor::~AromaticityProcessor | ( | ) | [virtual] |
Destrcutor
void BALL::AromaticityProcessor::aromatize | ( | const vector< vector< Atom * > > & | sssr, | |
AtomContainer & | ac | |||
) |
Calculated the aromaticity of the molcule and sets the properties "IsAromatic" for aromatic atoms, and Bond::ORDER__AROMATIC for bonds which are aromatic.
SSSR | ring set as vector<vector<Atom*> >, (vector of rings in vector<Atom*>) after the processing this variable holds all aromatic systems, which are not necessarily single rings! |
void BALL::AromaticityProcessor::aromatizeSimple | ( | vector< vector< Atom * > > & | sssr | ) |
Method to set aromaticity with the use of simple rules. Each ring from the given SSSR set (which needs just to be a set of rings) is examined for itself. (needed for the implementation of the MMFF94 force field which does not agree with the advanced araomtaticity definition of the default method.).
void BALL::AromaticityProcessor::extendAromaticSystem_ | ( | vector< HashSet< Atom * > > & | sssr, | |
HashSet< Atom * > | ring | |||
) | [private] |
bool BALL::AromaticityProcessor::isValid_ | ( | const AtomContainer & | ac | ) | [protected] |
Processor::Result BALL::AromaticityProcessor::operator() | ( | AtomContainer & | ) | [virtual] |
operator ()
Reimplemented from BALL::UnaryProcessor< AtomContainer >.
AromaticityProcessor& BALL::AromaticityProcessor::operator= | ( | const AromaticityProcessor & | aro | ) |
Assignment operator
void BALL::AromaticityProcessor::setDefaultOptions | ( | ) |
reset the options to default values
bool BALL::AromaticityProcessor::simpleCanBeAromaticWeaker_ | ( | const HashSet< Atom * > & | ring | ) | [private] |
virtual bool BALL::AromaticityProcessor::start | ( | ) | [virtual] |
start method
Reimplemented from BALL::UnaryProcessor< AtomContainer >.
options
Definition at line 83 of file aromaticityProcessor.h.
Should we set the bond orders to aromatic or merely store the information as a property of the bond? This value depends on the value of the option OVERWRITE_BOND_ORDERS
Definition at line 166 of file aromaticityProcessor.h.