#include "babelconfig.h"
#include <math.h>
#include <algorithm>
#include <vector>
#include <string>
#include <map>
#include <iostream>
#include <fstream>
#include "base.h"
#include "data.h"
#include "chains.h"
#include "math/vector3.h"
#include "bitvec.h"
#include "ring.h"
#include "generic.h"
#include "typer.h"
#include "oberror.h"
#include "obiter.h"
#include "reaction.h"
Go to the source code of this file.
Namespaces | |
namespace | OpenBabel |
Classes | |
class | OBResidue |
Residue information. More... | |
class | OBAtom |
Atom class. More... | |
class | OBBond |
Bond class. More... | |
class | OBMol |
Molecule Class. More... | |
class | OBInternalCoord |
Used to transform from z-matrix to cartesian coordinates. More... | |
Defines | |
#define | OB_4RING_ATOM (1<<1) |
Atom is in a 4-membered ring. | |
#define | OB_3RING_ATOM (1<<2) |
Atom is in a 3-membered ring. | |
#define | OB_AROMATIC_ATOM (1<<3) |
Atom is aromatic. | |
#define | OB_RING_ATOM (1<<4) |
Atom is in a ring. | |
#define | OB_CSTEREO_ATOM (1<<5) |
Atom has clockwise SMILES chiral stereochemistry (i.e., "@@"). | |
#define | OB_ACSTEREO_ATOM (1<<6) |
Atom has anticlockwise SMILES chiral stereochemistry (i.e., "@"). | |
#define | OB_DONOR_ATOM (1<<7) |
Atom is an electron donor. | |
#define | OB_ACCEPTOR_ATOM (1<<8) |
Atom is an electron acceptor. | |
#define | OB_CHIRAL_ATOM (1<<9) |
Atom is chiral. | |
#define | OB_POS_CHIRAL_ATOM (1<<10) |
Atom has + chiral volume. | |
#define | OB_NEG_CHIRAL_ATOM (1<<11) |
Atom has - chiral volume. | |
#define | OB_AROMATIC_BOND (1<<1) |
An aromatic bond (regardless of bond order). | |
#define | OB_WEDGE_BOND (1<<2) |
A solid black wedge in 2D representations -- i.e., "up" from the 2D plane. | |
#define | OB_HASH_BOND (1<<3) |
A dashed "hash" bond in 2D representations -- i.e., "down" from the 2D plane. | |
#define | OB_RING_BOND (1<<4) |
A bond in a ring. | |
#define | OB_TORUP_BOND (1<<5) |
The "upper" bond in a double bond cis/trans isomer (i.e., "/" in SMILES). | |
#define | OB_TORDOWN_BOND (1<<6) |
The "down" bond in a double bond cis/trans isomer (i.e., "\" in SMILES). | |
#define | OB_KSINGLE_BOND (1<<7) |
A Kekule single bond. | |
#define | OB_KDOUBLE_BOND (1<<8) |
A Kekule double bond. | |
#define | OB_KTRIPLE_BOND (1<<9) |
A Kekule triple bond. | |
#define | OB_CLOSURE_BOND (1<<10) |
#define | OB_SSSR_MOL (1<<1) |
#define | OB_RINGFLAGS_MOL (1<<2) |
#define | OB_AROMATIC_MOL (1<<3) |
#define | OB_ATOMTYPES_MOL (1<<4) |
#define | OB_CHIRALITY_MOL (1<<5) |
#define | OB_PCHARGE_MOL (1<<6) |
#define | OB_HYBRID_MOL (1<<8) |
#define | OB_IMPVAL_MOL (1<<9) |
#define | OB_KEKULE_MOL (1<<10) |
#define | OB_CLOSURE_MOL (1<<11) |
#define | OB_H_ADDED_MOL (1<<12) |
#define | OB_PH_CORRECTED_MOL (1<<13) |
#define | OB_AROM_CORRECTED_MOL (1<<14) |
#define | OB_CHAINS_MOL (1<<15) |
#define | OB_TCHARGE_MOL (1<<16) |
#define | OB_TSPIN_MOL (1<<17) |
#define | OB_CURRENT_CONFORMER -1 |
#define | BUFF_SIZE 32768 |
#define | EQ(a, b) (!strcmp((a), (b))) |
#define | EQn(a, b, n) (!strncmp((a), (b), (n))) |
#define | SQUARE(x) ((x)*(x)) |
#define | IsUnsatType(x) (EQ(x,"Car") || EQ(x,"C2") || EQ(x,"Sox") || EQ(x,"Sac") || EQ(x,"Pac") || EQ(x,"So2")) |
Functions | |
bool | tokenize (vector< string > &, const char *, const char *) |
bool | tokenize (std::vector< std::string > &, std::string &, const char *delimstr=" \t\n", int limit=-1) |
void | Trim (std::string &txt) |
remove leading and trailing whitespace from a string | |
void | ThrowError (char *str) |
void | ThrowError (std::string &str) |
void | CartesianToInternal (std::vector< OBInternalCoord * > &, OBMol &) |
void | InternalToCartesian (std::vector< OBInternalCoord * > &, OBMol &) |
std::string | NewExtension (string &src, char *ext) |
Utility function: replace the last extension in string &src with new extension char *ext. | |
void | get_rmat (double *, double *, double *, int) |
void | ob_make_rmat (double mat[3][3], double rmat[9]) |
void | qtrfit (double *r, double *f, int size, double u[3][3]) |
double | superimpose (double *, double *, int) |
Variables | |
OBElementTable | etab |
Global OBElementTable for element properties. | |
OBTypeTable | ttab |
OBIsotopeTable | isotab |
Global OBIsotopeTable for isotope properties. | |
OBAromaticTyper | aromtyper |
Global OBAromaticTyper for detecting aromatic atoms and bonds. | |
OBAtomTyper | atomtyper |
OBChainsParser | chainsparser |
Global OBChainsParser for detecting macromolecular chains and residues. | |
OBMessageHandler | obErrorLog |
Global OBMessageHandler error handler. | |
OBResidueData | resdat |
Global OBResidueData biomolecule residue database. |
#define OB_4RING_ATOM (1<<1) |
Atom is in a 4-membered ring.
#define OB_3RING_ATOM (1<<2) |
Atom is in a 3-membered ring.
#define OB_AROMATIC_ATOM (1<<3) |
Atom is aromatic.
#define OB_RING_ATOM (1<<4) |
Atom is in a ring.
#define OB_CSTEREO_ATOM (1<<5) |
Atom has clockwise SMILES chiral stereochemistry (i.e., "@@").
#define OB_ACSTEREO_ATOM (1<<6) |
Atom has anticlockwise SMILES chiral stereochemistry (i.e., "@").
#define OB_DONOR_ATOM (1<<7) |
Atom is an electron donor.
#define OB_ACCEPTOR_ATOM (1<<8) |
Atom is an electron acceptor.
#define OB_CHIRAL_ATOM (1<<9) |
Atom is chiral.
#define OB_POS_CHIRAL_ATOM (1<<10) |
Atom has + chiral volume.
#define OB_NEG_CHIRAL_ATOM (1<<11) |
Atom has - chiral volume.
#define OB_AROMATIC_BOND (1<<1) |
An aromatic bond (regardless of bond order).
#define OB_WEDGE_BOND (1<<2) |
A solid black wedge in 2D representations -- i.e., "up" from the 2D plane.
#define OB_HASH_BOND (1<<3) |
A dashed "hash" bond in 2D representations -- i.e., "down" from the 2D plane.
#define OB_RING_BOND (1<<4) |
A bond in a ring.
#define OB_TORUP_BOND (1<<5) |
The "upper" bond in a double bond cis/trans isomer (i.e., "/" in SMILES).
#define OB_TORDOWN_BOND (1<<6) |
The "down" bond in a double bond cis/trans isomer (i.e., "\" in SMILES).
#define OB_KSINGLE_BOND (1<<7) |
A Kekule single bond.
#define OB_KDOUBLE_BOND (1<<8) |
A Kekule double bond.
#define OB_KTRIPLE_BOND (1<<9) |
A Kekule triple bond.
#define OB_CLOSURE_BOND (1<<10) |
#define OB_SSSR_MOL (1<<1) |
#define OB_RINGFLAGS_MOL (1<<2) |
#define OB_AROMATIC_MOL (1<<3) |
#define OB_ATOMTYPES_MOL (1<<4) |
#define OB_CHIRALITY_MOL (1<<5) |
#define OB_PCHARGE_MOL (1<<6) |
#define OB_HYBRID_MOL (1<<8) |
#define OB_IMPVAL_MOL (1<<9) |
#define OB_KEKULE_MOL (1<<10) |
#define OB_CLOSURE_MOL (1<<11) |
#define OB_H_ADDED_MOL (1<<12) |
#define OB_PH_CORRECTED_MOL (1<<13) |
#define OB_AROM_CORRECTED_MOL (1<<14) |
#define OB_CHAINS_MOL (1<<15) |
#define OB_TCHARGE_MOL (1<<16) |
#define OB_TSPIN_MOL (1<<17) |
#define OB_CURRENT_CONFORMER -1 |
#define BUFF_SIZE 32768 |
#define EQ | ( | a, | |||
b | ) | (!strcmp((a), (b))) |
#define EQn | ( | a, | |||
b, | |||||
n | ) | (!strncmp((a), (b), (n))) |
#define SQUARE | ( | x | ) | ((x)*(x)) |
#define IsUnsatType | ( | x | ) | (EQ(x,"Car") || EQ(x,"C2") || EQ(x,"Sox") || EQ(x,"Sac") || EQ(x,"Pac") || EQ(x,"So2")) |