BALL::AromaticityProcessor Class Reference

This processor provides methods for detection and assignment of aromaticity. More...

#include <BALL/QSAR/aromaticityProcessor.h>

Inheritance diagram for BALL::AromaticityProcessor:
Inheritance graph
[legend]

List of all members.

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

AromaticityProcessoroperator= (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 ()

Detailed Description

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.


Constructor & Destructor Documentation

BALL::AromaticityProcessor::AromaticityProcessor (  ) 

Default constructor

BALL::AromaticityProcessor::AromaticityProcessor ( const AromaticityProcessor aro  ) 

Copy constructor

virtual BALL::AromaticityProcessor::~AromaticityProcessor (  )  [virtual]

Destrcutor


Member Function Documentation

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.

Parameters:
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.).

It does not set any aromaticity flags, neither at the atoms nor bonds to bond order aromatic! sssr is the set to be examined, only aromatic rings will stay
Size BALL::AromaticityProcessor::countPiElectrons_ ( HashSet< Atom * > &  ring  )  [private]
void BALL::AromaticityProcessor::extendAromaticSystem_ ( vector< HashSet< Atom * > > &  sssr,
HashSet< Atom * >  ring 
) [private]
bool BALL::AromaticityProcessor::hasConjugatedDoubleBonds_ ( 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::simpleCanBeAromatic_ ( const HashSet< Atom * > &  ring  )  [private]
bool BALL::AromaticityProcessor::simpleCanBeAromaticWeaker_ ( const HashSet< Atom * > &  ring  )  [private]
virtual bool BALL::AromaticityProcessor::start (  )  [virtual]

start method

Reimplemented from BALL::UnaryProcessor< AtomContainer >.


Member Data Documentation

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.

Generated by  doxygen 1.6.3