![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Implementation of the ChEMBL structure preprocessing pipeline. More...
#include <ChEMBLStandardizer.hpp>
Public Types | |
| enum | ChangeFlags { NONE = 0x0 , EXCLUDED = 0x1 , EXPLICIT_HYDROGENS_REMOVED = 0x2 , UNKNOWN_STEREO_STANDARDIZED = 0x4 , BONDS_KEKULIZED = 0x8 , STRUCTURE_NORMALIZED = 0x10 , CHARGES_REMOVED = 0x20 , TARTRATE_STEREO_CLEARED = 0x40 , STRUCTURE_2D_CORRECTED = 0x80 , ISOTOPE_INFO_CLEARED = 0x100 , SALT_COMPONENTS_REMOVED = 0x200 , SOLVENT_COMPONENTS_REMOVED = 0x400 , DUPLICATE_COMPONENTS_REMOVED = 0x800 } |
| Bitwise-OR-combined flags reporting which standardization steps modified the input molecule. More... | |
| typedef std::shared_ptr< ChEMBLStandardizer > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated ChEMBLStandardizer instances. More... | |
Public Member Functions | |
| ChEMBLStandardizer () | |
Constructs the ChEMBLStandardizer instance. More... | |
| ChEMBLStandardizer (const ChEMBLStandardizer &standardizer) | |
Constructs a copy of the ChEMBLStandardizer instance standardizer. More... | |
| ChangeFlags | standardize (Molecule &mol, bool proc_excld=false) |
| Standardizes mol in place. More... | |
| ChangeFlags | standardize (const MolecularGraph &molgraph, Molecule &std_mol, bool proc_excluded=false) |
| Writes a standardized copy of molgraph to std_mol. More... | |
| ChangeFlags | getParent (Molecule &mol, bool neutralize=true, bool check_exclusion=true) |
| Extracts the parent compound of mol in place (removing salt/solvent components). More... | |
| ChangeFlags | getParent (const MolecularGraph &molgraph, Molecule &parent_mol, bool neutralize=true, bool check_exclusion=true) |
| Extracts the parent compound of molgraph into parent_mol. More... | |
| ChEMBLStandardizer & | operator= (const ChEMBLStandardizer &standardizer) |
| Replaces the state of this standardizer by a copy of the state of standardizer. More... | |
Implementation of the ChEMBL structure preprocessing pipeline.
| typedef std::shared_ptr<ChEMBLStandardizer> CDPL::Chem::ChEMBLStandardizer::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated ChEMBLStandardizer instances.
Bitwise-OR-combined flags reporting which standardization steps modified the input molecule.
| Enumerator | |
|---|---|
| NONE | No changes were applied. |
| EXCLUDED | The molecule matched a ChEMBL exclusion criterion and was not processed further. |
| EXPLICIT_HYDROGENS_REMOVED | Removable explicit hydrogen atoms were removed. |
| UNKNOWN_STEREO_STANDARDIZED | Atoms/bonds with unknown stereo descriptors were standardized. |
| BONDS_KEKULIZED | Aromatic bonds were kekulized to alternating single/double bonds. |
| STRUCTURE_NORMALIZED | Functional-group structure normalizations were applied. |
| CHARGES_REMOVED | Atom formal charges were removed where possible. |
| TARTRATE_STEREO_CLEARED | Defined stereo at tartrate-like substructures was cleared. |
| STRUCTURE_2D_CORRECTED | 2D bond-angle artefacts were corrected. |
| ISOTOPE_INFO_CLEARED | Atom isotope information was cleared. |
| SALT_COMPONENTS_REMOVED | Salt components were removed (parent extraction only). |
| SOLVENT_COMPONENTS_REMOVED | Common solvent components were removed (parent extraction only). |
| DUPLICATE_COMPONENTS_REMOVED | Duplicate disconnected components were collapsed (parent extraction only). |
| CDPL::Chem::ChEMBLStandardizer::ChEMBLStandardizer | ( | ) |
Constructs the ChEMBLStandardizer instance.
| CDPL::Chem::ChEMBLStandardizer::ChEMBLStandardizer | ( | const ChEMBLStandardizer & | standardizer | ) |
Constructs a copy of the ChEMBLStandardizer instance standardizer.
| standardizer | The ChEMBLStandardizer to copy. |
| ChangeFlags CDPL::Chem::ChEMBLStandardizer::standardize | ( | Molecule & | mol, |
| bool | proc_excld = false |
||
| ) |
Standardizes mol in place.
| mol | The molecule to standardize (modified in place). |
| proc_excld | If true, ChEMBL exclusion criteria are ignored and the molecule is processed regardless. |
| ChangeFlags CDPL::Chem::ChEMBLStandardizer::standardize | ( | const MolecularGraph & | molgraph, |
| Molecule & | std_mol, | ||
| bool | proc_excluded = false |
||
| ) |
Writes a standardized copy of molgraph to std_mol.
| molgraph | The input molecular graph. |
| std_mol | The output molecule receiving the standardized copy. |
| proc_excluded | If true, ChEMBL exclusion criteria are ignored and the molecule is processed regardless. |
| ChangeFlags CDPL::Chem::ChEMBLStandardizer::getParent | ( | Molecule & | mol, |
| bool | neutralize = true, |
||
| bool | check_exclusion = true |
||
| ) |
Extracts the parent compound of mol in place (removing salt/solvent components).
| mol | The molecule from which to extract the parent (modified in place). |
| neutralize | If true, charges of the extracted parent are subsequently neutralized. |
| check_exclusion | If true, ChEMBL exclusion criteria are checked before processing. |
| ChangeFlags CDPL::Chem::ChEMBLStandardizer::getParent | ( | const MolecularGraph & | molgraph, |
| Molecule & | parent_mol, | ||
| bool | neutralize = true, |
||
| bool | check_exclusion = true |
||
| ) |
Extracts the parent compound of molgraph into parent_mol.
| molgraph | The input molecular graph. |
| parent_mol | The output molecule receiving the parent compound. |
| neutralize | If true, charges of the extracted parent are subsequently neutralized. |
| check_exclusion | If true, ChEMBL exclusion criteria are checked before processing. |
| ChEMBLStandardizer& CDPL::Chem::ChEMBLStandardizer::operator= | ( | const ChEMBLStandardizer & | standardizer | ) |
Replaces the state of this standardizer by a copy of the state of standardizer.
| standardizer | The source ChEMBLStandardizer. |