Loading...
Searching...
No Matches
AtomTyper< OutputType > Class Template Referenceabstract

The AtomTyper class provides a base interface for generating a list of type identifiers describing the atoms in a molecule.

`#include <avogadro/core/atomtyper.h>`

## Public Types

using | ValueType = OutputType

## Public Member Functions

| AtomTyper (const Molecule *mol=nullptr)
void | setMolecule (const Molecule *mol)
virtual void | run ()
virtual OutputType | atomType (const Atom &atom)
Array< OutputType > | types () const
virtual void | reset ()

## Protected Member Functions

virtual void | initialize ()
virtual OutputType | type (const Atom &atom)=0

## Protected Attributes

const Molecule * | m_molecule
Array< OutputType > | m_types

## Member Function Documentation

## setMolecule()

template<typename OutputType>

void setMolecule | ( | const Molecule * | mol | ) |

Parameters

  mol | The molecule with atoms to type.

## run()

template<typename OutputType>

void run | ( |  | ) |

virtual

Iterate through the molecule and generate type descriptions for each atom. The results can be obtained by calling types().

## atomType()

template<typename OutputType>

OutputType atomType | ( | const Atom & | atom | ) |

virtual

Perform a type lookup on the specified atom. If run() has been called previously, a cached result is returned.

Returns
  The type of atom.

## types()

template<typename OutputType>

Array< OutputType > types | ( |  | ) | const

Returns
  An Array of OutputType objects. There will be one object for each atom of the input Molecule, and they are ordered by the corresponding atom's index.

## reset()

template<typename OutputType>

void reset | ( |  | ) |

virtual

Reset the typer's internal state. This is called when the molecule is changed. The base implementation clears the m_types Array.

## initialize()

template<typename OutputType>

void initialize | ( |  | ) |

protected virtual

Perform any setup needed that needs to be done prior to calling type(). The base implementation of this function reserves enough room in the m_types Array for the current Molecule.

## type()

template<typename OutputType>

virtual OutputType type | ( | const Atom & | atom | ) |

protected pure virtual

Determines the type of the atom.

Parameters

  atom | The atom to type.

Returns
  The type of atom.

Implemented in NameAtomTyper, and SymbolAtomTyper.

## Member Data Documentation

## m_molecule

template<typename OutputType>

const Molecule* m_molecule

protected

The molecule on which to operate.

## m_types

template<typename OutputType>

Array<OutputType> m_types

protected

The array of types to be populated.

The documentation for this class was generated from the following files:

- atomtyper.h
- atomtyper-inline.h