chains.cpp File Reference

Parse for macromolecule chains and residues. More...

#include <openbabel/babelconfig.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <map>
#include <openbabel/mol.h>
#include <openbabel/chains.h>

Namespaces

namespace  OpenBabel

Defines

#define RESIDMIN   3
#define RESIDMAX   32
#define ATOMMINAMINO   4
#define ATOMMINNUCLEIC   50
#define MAXPEPTIDE   11
#define MAXNUCLEIC   15
#define AMINOMAX   21
#define NUCLEOMAX   6
#define STACKSIZE   20
#define AI_N   0
#define AI_CA   1
#define AI_C   2
#define AI_O   3
#define AI_OXT   37
#define AI_P   38
#define AI_O1P   39
#define AI_O2P   40
#define AI_O5   41
#define AI_C5   42
#define AI_C4   43
#define AI_O4   44
#define AI_C3   45
#define AI_O3   46
#define AI_C2   47
#define AI_O2   48
#define AI_C1   49
#define BitN   0x0001
#define BitNTer   0x0002
#define BitNPro   0x0004
#define BitNPT   0x0008
#define BitCA   0x0010
#define BitCAGly   0x0020
#define BitC   0x0100
#define BitCTer   0x0200
#define BitCOXT   0x0400
#define BitO   0x1000
#define BitOXT   0x2000
#define BitNAll   0x000F
#define BitCAAll   0x0030
#define BitCAll   0x0700
#define BitOAll   0x3000
#define BitP   0x0001
#define BitPTer   0x0002
#define BitOP   0x0004
#define BitO5   0x0008
#define BitO5Ter   0x0010
#define BitC5   0x0020
#define BitC4   0x0040
#define BitO4   0x0080
#define BitC3   0x0100
#define BitO3   0x0200
#define BitO3Ter   0x0400
#define BitC2RNA   0x0800
#define BitC2DNA   0x1000
#define BitO2   0x2000
#define BitC1   0x4000
#define BitPAll   0x0003
#define Bit05All   0x0018
#define BitO3All   0x0600
#define BitC2All   0x1800
#define BC_ASSIGN   0x01
#define BC_COUNT   0x02
#define BC_ELEM   0x03
#define BC_EVAL   0x04
#define BC_IDENT   0x05
#define BC_LOCAL   0x06
#define BF_SINGLE   0x01
#define BF_DOUBLE   0x02
#define BF_TRIPLE   0x04
#define BF_AROMATIC   0x08
#define ATOMMAX   68

Typedefs

typedef union OpenBabel::_ByteCode ByteCode

Functions

static ByteCode * AllocateByteCode (int type)
static void DeleteByteCode (ByteCode *node)
static void FatalMemoryError (void)
void GenerateByteCodes (ByteCode **node, int resid, int curr, int prev, int bond)

Variables

static char ChainsResName [RESIDMAX][4]
static Template Peptide [MAXPEPTIDE]
static Template Nucleotide [MAXNUCLEIC]
static char ChainsAtomName [ATOMMAX][4]
static ResidType AminoAcids [AMINOMAX]
static ResidType Nucleotides [NUCLEOMAX]
static MonoAtomType MonoAtom [MaxMonoAtom]
static MonoBondType MonoBond [MaxMonoBond]
static int MonoAtomCount
static int MonoBondCount
static StackType Stack [STACKSIZE]
static int StackPtr
static int AtomIndex
static int BondIndex
static bool StrictFlag = false


Detailed Description

Parse for macromolecule chains and residues.


Define Documentation

#define RESIDMIN   3

The first available index for actual residues 0, 1, 2 reserved for UNK, HOH, LIG

Referenced by OBChainsParser::OBChainsParser().

#define RESIDMAX   32

The maximum number of residue IDs for this code.

#define ATOMMINAMINO   4

#define ATOMMINNUCLEIC   50

#define MAXPEPTIDE   11

#define MAXNUCLEIC   15

#define AMINOMAX   21

The number of amino acids recognized by this code Currently: ILE, VAL, ALA, ASN, ASP, ARG, CYS, GLN, GLU GLY, HIS, HYP, LEU, LYS, MET, PHE, PRO, SER, THR, TRP, TYR

Referenced by OBChainsParser::OBChainsParser().

#define NUCLEOMAX   6

The number of nucleic acids recognized by this code Currently A, C, T, G, U, I

Referenced by OBChainsParser::OBChainsParser().

#define STACKSIZE   20

#define AI_N   0

#define AI_CA   1

#define AI_C   2

#define AI_O   3

#define AI_OXT   37

#define AI_P   38

#define AI_O1P   39

#define AI_O2P   40

#define AI_O5   41

#define AI_C5   42

#define AI_C4   43

#define AI_O4   44

#define AI_C3   45

#define AI_O3   46

#define AI_C2   47

#define AI_O2   48

#define AI_C1   49

#define BitN   0x0001

#define BitNTer   0x0002

#define BitNPro   0x0004

#define BitNPT   0x0008

#define BitCA   0x0010

#define BitCAGly   0x0020

#define BitC   0x0100

#define BitCTer   0x0200

#define BitCOXT   0x0400

#define BitO   0x1000

#define BitOXT   0x2000

#define BitNAll   0x000F

#define BitCAAll   0x0030

#define BitCAll   0x0700

#define BitOAll   0x3000

#define BitP   0x0001

#define BitPTer   0x0002

#define BitOP   0x0004

#define BitO5   0x0008

#define BitO5Ter   0x0010

#define BitC5   0x0020

#define BitC4   0x0040

#define BitO4   0x0080

#define BitC3   0x0100

#define BitO3   0x0200

#define BitO3Ter   0x0400

#define BitC2RNA   0x0800

#define BitC2DNA   0x1000

#define BitO2   0x2000

#define BitC1   0x4000

#define BitPAll   0x0003

#define Bit05All   0x0018

#define BitO3All   0x0600

#define BitC2All   0x1800

#define BC_ASSIGN   0x01

#define BC_COUNT   0x02

#define BC_ELEM   0x03

#define BC_EVAL   0x04

#define BC_IDENT   0x05

#define BC_LOCAL   0x06

#define BF_SINGLE   0x01

#define BF_DOUBLE   0x02

#define BF_TRIPLE   0x04

#define BF_AROMATIC   0x08

#define ATOMMAX   68

The number of PDB atom type names recognized by this code.


Variable Documentation

char ChainsResName[RESIDMAX][4] [static]

Initial value:

 {
   "UNK",  
   "HOH",  
   "LIG"
}
An index of the residue names perceived during a run 0, 1, and 2 reserved for UNK, HOH, LIG

Referenced by OpenBabel::GenerateByteCodes(), and OBChainsParser::OBChainsParser().