#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 () |
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.
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 >.
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