Chemical Data Processing Library C++ API - Version 1.1.1
Classes | Public Member Functions | Static Public Attributes | List of all members
CDPL::Chem::SymmetryClassCalculator Class Reference

SymmetryClassCalculator. More...

#include <SymmetryClassCalculator.hpp>

Public Member Functions

 SymmetryClassCalculator ()
 Constructs the SymmetryClassCalculator instance. More...
 
 SymmetryClassCalculator (const MolecularGraph &molgraph, Util::STArray &class_ids)
 Constructs the SymmetryClassCalculator instance and perceives the topological symmetry classes of the atoms in the molecular graph molgraph. More...
 
void setAtomPropertyFlags (unsigned int flags)
 Allows to specify the set of atomic properties that has to be considered in the perception of topological symmetry classes. More...
 
unsigned int getAtomPropertyFlags () const
 Returns the set of atomic properties that gets considered in the perception of topological symmetry classes. More...
 
void setBondPropertyFlags (unsigned int flags)
 Allows to specify the set of bond properties that has to be considered in the perception of topological symmetry classes. More...
 
unsigned int getBondPropertyFlags () const
 Returns the set of bond properties that gets considered in the perception of topological symmetry classes. More...
 
void includeImplicitHydrogens (bool include)
 Allows to specify whether implicit hydrogen atoms shall be ignored or treated in the same way as explicit ones. More...
 
bool implicitHydrogensIncluded () const
 Tells whether implicit hydrogen atoms are ignored or treated in the same way as explicit ones. More...
 
void calculate (const MolecularGraph &molgraph, Util::STArray &class_ids)
 Perceives the topological symmetry classes of the atoms in the molecular graph molgraph. More...
 

Static Public Attributes

static constexpr unsigned int DEF_ATOM_PROPERTY_FLAGS
 Specifies the default set of atomic properties considered in the perception of topological symmetry classes. More...
 
static constexpr unsigned int DEF_BOND_PROPERTY_FLAGS
 Specifies the default set of bond properties considered in the perception of topological symmetry classes. More...
 

Detailed Description

SymmetryClassCalculator.

See also
[TOPSY]

Constructor & Destructor Documentation

◆ SymmetryClassCalculator() [1/2]

CDPL::Chem::SymmetryClassCalculator::SymmetryClassCalculator ( )

Constructs the SymmetryClassCalculator instance.

◆ SymmetryClassCalculator() [2/2]

CDPL::Chem::SymmetryClassCalculator::SymmetryClassCalculator ( const MolecularGraph molgraph,
Util::STArray class_ids 
)

Constructs the SymmetryClassCalculator instance and perceives the topological symmetry classes of the atoms in the molecular graph molgraph.

Parameters
molgraphThe molecular graph for which to perceive the symmetry classes.
class_idsAn array containing the perceived symmetry class IDs. The class IDs are stored in the same order as the atoms appear in the atom list of the molecular graph (i.e. the symmetry class of an atom is accessible via its index).

Member Function Documentation

◆ setAtomPropertyFlags()

void CDPL::Chem::SymmetryClassCalculator::setAtomPropertyFlags ( unsigned int  flags)

Allows to specify the set of atomic properties that has to be considered in the perception of topological symmetry classes.

The flags argument is an OR combination of the constants defined in namespace Chem::AtomPropertyFlag. Supported property flags are:

Parameters
flagsThe set of atomic properties to consider.
Note
The default set of atomic properties is specified by SymmetryClassCalculator::DEF_ATOM_PROPERTY_FLAGS.

◆ getAtomPropertyFlags()

unsigned int CDPL::Chem::SymmetryClassCalculator::getAtomPropertyFlags ( ) const

Returns the set of atomic properties that gets considered in the perception of topological symmetry classes.

Returns
The set of considered atomic properties.
See also
setAtomPropertyFlags()

◆ setBondPropertyFlags()

void CDPL::Chem::SymmetryClassCalculator::setBondPropertyFlags ( unsigned int  flags)

Allows to specify the set of bond properties that has to be considered in the perception of topological symmetry classes.

The flags argument is an OR combination of the constants defined in namespace Chem::BondPropertyFlag. Supported property flags are:

Parameters
flagsThe set of bond properties to consider.
Note
The default set of bond properties is specified by SymmetryClassCalculator::DEF_BOND_PROPERTY_FLAGS.

◆ getBondPropertyFlags()

unsigned int CDPL::Chem::SymmetryClassCalculator::getBondPropertyFlags ( ) const

Returns the set of bond properties that gets considered in the perception of topological symmetry classes.

Returns
The set of considered bond properties.
See also
setBondPropertyFlags()

◆ includeImplicitHydrogens()

void CDPL::Chem::SymmetryClassCalculator::includeImplicitHydrogens ( bool  include)

Allows to specify whether implicit hydrogen atoms shall be ignored or treated in the same way as explicit ones.

Parameters
includeIf true, implicit hydrogen atoms are treated as if they were explicit and are ignored otherwise.
Note
By default, implicit hydrogen atoms are treated in the same way as explicit ones.

◆ implicitHydrogensIncluded()

bool CDPL::Chem::SymmetryClassCalculator::implicitHydrogensIncluded ( ) const

Tells whether implicit hydrogen atoms are ignored or treated in the same way as explicit ones.

Returns
true if implicit hydrogen atoms are treated in the same way as explicit ones, and false if they are ignored.

◆ calculate()

void CDPL::Chem::SymmetryClassCalculator::calculate ( const MolecularGraph molgraph,
Util::STArray class_ids 
)

Perceives the topological symmetry classes of the atoms in the molecular graph molgraph.

Parameters
molgraphThe molecular graph for which to perceive the symmetry classes.
class_idsAn array containing the perceived symmetry class IDs. The class IDs are stored in the same order as the atoms appear in the atom list of the molecular graph (i.e. the symmetry class of an atom is accessible via its index).

Member Data Documentation

◆ DEF_ATOM_PROPERTY_FLAGS

constexpr unsigned int CDPL::Chem::SymmetryClassCalculator::DEF_ATOM_PROPERTY_FLAGS
staticconstexpr
Initial value:

Specifies the default set of atomic properties considered in the perception of topological symmetry classes.

◆ DEF_BOND_PROPERTY_FLAGS

constexpr unsigned int CDPL::Chem::SymmetryClassCalculator::DEF_BOND_PROPERTY_FLAGS
staticconstexpr
Initial value:

Specifies the default set of bond properties considered in the perception of topological symmetry classes.


The documentation for this class was generated from the following file:
CDPL::Chem::AtomPropertyFlag::FORMAL_CHARGE
const unsigned int FORMAL_CHARGE
Specifies the formal charge of an atom.
Definition: Chem/AtomPropertyFlag.hpp:73
CDPL::Chem::BondPropertyFlag::AROMATICITY
const unsigned int AROMATICITY
Specifies the membership of a bond in aromatic rings.
Definition: BondPropertyFlag.hpp:73
CDPL::Chem::BondPropertyFlag::ORDER
const unsigned int ORDER
Specifies the order of a bond.
Definition: BondPropertyFlag.hpp:63
CDPL::Chem::AtomPropertyFlag::TYPE
const unsigned int TYPE
Specifies the generic type or element of an atom.
Definition: Chem/AtomPropertyFlag.hpp:63
CDPL::Chem::AtomPropertyFlag::ISOTOPE
const unsigned int ISOTOPE
Specifies the isotopic mass of an atom.
Definition: Chem/AtomPropertyFlag.hpp:68
CDPL::Chem::AtomPropertyFlag::AROMATICITY
const unsigned int AROMATICITY
Specifies the membership of an atom in aromatic rings.
Definition: Chem/AtomPropertyFlag.hpp:93
CDPL::Chem::AtomPropertyFlag::H_COUNT
const unsigned int H_COUNT
Specifies the hydrogen count of an atom.
Definition: Chem/AtomPropertyFlag.hpp:78