OBAtomTyper Class Reference

Assigns atom types, hybridization, implicit valence and formal charges. More...

#include <openbabel/typer.h>

Inheritance diagram for OBAtomTyper:
OBGlobalDataBase

List of all members.

Public Member Functions

 OBAtomTyper ()
 ~OBAtomTyper ()
void ParseLine (const char *)
size_t GetSize ()
void AssignHyb (OBMol &)
void AssignTypes (OBMol &)
void AssignImplicitValence (OBMol &)
void CorrectAromaticNitrogens (OBMol &)
void Init ()
void SetReadDirectory (char *dir)
void SetEnvironmentVariable (char *var)

Protected Attributes

bool _init
const char * _dataptr
std::string _filename
std::string _dir
std::string _subdir
std::string _envvar

Detailed Description

Assigns atom types, hybridization, implicit valence and formal charges.

The OBAtomTyper class is designed to read in a list of atom typing rules and apply them to molecules. The code that performs atom typing is not usually used directly as atom typing, hybridization assignment, implicit valence assignment and charge are all done automatically when their corresponding values are requested of atoms:

    atom->GetType();
    atom->GetFormalCharge();
    atom->GetHyb();

Constructor & Destructor Documentation

OBAtomTyper (  )
~OBAtomTyper (  )

Member Function Documentation

void ParseLine ( const char *   ) [virtual]

Specified by particular table classes (parses an individual data line)

Reimplemented from OBGlobalDataBase.

size_t GetSize (  ) [inline, virtual]
Returns:
the number of implicit valence rules

Reimplemented from OBGlobalDataBase.

void AssignHyb ( OBMol mol )

Assign atomic hybridization (1 = sp, 2 = sp2, 3 = sp3...)

Referenced by OBAtom::GetHyb().

void AssignTypes ( OBMol mol )

Assign external atomic types (i.e., EXTTYP lines in atomtyp.txt)

Referenced by OBAtom::GetType().

void AssignImplicitValence ( OBMol mol )

Assign implicit valence (i.e., given an atomic type, what is the expected number of bonds to this atom

Referenced by OBAtom::GetImplicitValence(), and OBAtom::ImplicitHydrogenCount().

void CorrectAromaticNitrogens ( OBMol mol )

Correct typing, valence, and hybridization for aromatic nitrogen atoms.

Currently sets OBMol::SetAromaticCorrected and returns.

Deprecated:
Currently unused for anything significant.

Referenced by OBPhModel::CorrectForPH().

void Init (  ) [inherited]

Read in the data file, falling back as needed.

void SetReadDirectory ( char *  dir ) [inline, inherited]

Set the directory before calling Init()

void SetEnvironmentVariable ( char *  var ) [inline, inherited]

Set the environment variable to use before calling Init()


Member Data Documentation

bool _init [protected, inherited]

Whether the data been read already.

const char* _dataptr [protected, inherited]

Default data table if file is unreadable.

std::string _filename [protected, inherited]

File to search for.

std::string _dir [protected, inherited]

Data directory for file if _envvar fails.

std::string _subdir [protected, inherited]

Subdirectory (if using environment variable)

std::string _envvar [protected, inherited]

Environment variable to check first.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines