![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Abstract base class for tautomerization rule implementations employed by the Chem::TautomerGenerator class. More...
#include <TautomerizationRule.hpp>
Inheritance diagram for CDPL::Chem::TautomerizationRule:Public Types | |
| typedef std::shared_ptr< TautomerizationRule > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated TautomerizationRule instances. More... | |
Public Member Functions | |
| virtual | ~TautomerizationRule () |
| Virtual destructor. More... | |
| virtual bool | setup (MolecularGraph &parent_molgraph)=0 |
| Performs rule-specific setup work for the given molecular graph that shall be tautomerized. More... | |
| virtual unsigned int | getID () const =0 |
| Returns the rule identifier. More... | |
| virtual bool | generate (Molecule &tautomer)=0 |
| Generates the next tautomer of the parent molecular graph and stores it in molecule. More... | |
| virtual SharedPointer | clone () const =0 |
| Returns a deep copy of this rule instance. More... | |
Abstract base class for tautomerization rule implementations employed by the Chem::TautomerGenerator class.
| typedef std::shared_ptr<TautomerizationRule> CDPL::Chem::TautomerizationRule::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated TautomerizationRule instances.
|
inlinevirtual |
Virtual destructor.
|
pure virtual |
Performs rule-specific setup work for the given molecular graph that shall be tautomerized.
| parent_molgraph | The molecular graph to tautomerize. |
true if the rule can be applied to parent_molgraph and has been initialized, and false otherwise. Implemented in CDPL::Chem::PatternBasedTautomerizationRule, and CDPL::Chem::ConjugatedRingBondPatternSwitching.
|
pure virtual |
Returns the rule identifier.
Implemented in CDPL::Chem::PatternBasedTautomerizationRule, and CDPL::Chem::ConjugatedRingBondPatternSwitching.
Generates the next tautomer of the parent molecular graph and stores it in molecule.
| tautomer | The tautomer output molecule. |
true if a tautomer was generated, false if no more tautomers could be generated. Implemented in CDPL::Chem::PatternBasedTautomerizationRule, and CDPL::Chem::ConjugatedRingBondPatternSwitching.
|
pure virtual |
Returns a deep copy of this rule instance.
Implemented in CDPL::Chem::PatternBasedTautomerizationRule, and CDPL::Chem::ConjugatedRingBondPatternSwitching.