Open Babel: OBChemTsfm Class Reference

Public Member Functions

# OBChemTsfm Class Reference

SMARTS based structural modification (chemical transformation) More...

`#include <openbabel/phmodel.h>`

List of all members.

## Public Member Functions
| OBChemTsfm ()
| ~OBChemTsfm ()
bool | Init (std::string &start, std::string &end)
bool | Apply (OBMol &)
bool | IsAcid ()
bool | IsBase ()

## Detailed Description

SMARTS based structural modification (chemical transformation)

Transformation of chemical structures can be used for pH value correction (i.e. via OBPhModel and OBMol::CorrectForPH()). The OBChemTsfm class defines SMARTS based TRANSFORM patterns to delete atoms, change atom types, atom formal charges, and bond types.

For storing and converting chemical reaction files, use the OBReaction class.

## Constructor & Destructor Documentation

OBChemTsfm | ( | ) | `[inline]`

~OBChemTsfm | ( | ) | `[inline]`

## Member Function Documentation

bool Init | ( | std::string & | start,
|  | std::string & | end
| ) |  |

Initialize this transformation with the supplied SMARTS patterns.

Referenced by OBPhModel::ParseLine().

bool Apply | ( | OBMol & | mol ) |

Apply this transformation to all matches in the supplied OBMol.

bool IsAcid | ( | ) |

Is this transformation an acid dissociation?

          Ka
      HA ----> A(-)         (the H(+) will be deleted)

IsAcid() will check the charge in the end SMARTS pattern.

Returns:
  true if the charge is less than 0 (-1).

bool IsBase | ( | ) |

Is this a transformation to the conjugated acid from a base?

          Ka
      HA ----> A(-)         (the H(+) will be deleted)

IsBase() will check the charge in the end SMARTS pattern.

Returns:
  true if the charge is higher than 0 (+1).

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

- phmodel.h
- phmodel.cpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines