00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef BTK_ATOM_TYPES_H
00029 #define BTK_ATOM_TYPES_H
00030
00031
00032 #include "element_types.h"
00033
00034 #include <string>
00035
00036 namespace BTK{
00037 namespace ATOM {
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048 enum index_t {
00049 UNKNOWN = -1,
00050 _1C2x, _1C3x, _1CB, _1H2xx, _1H3x, _1H3xx, _1O2x, _1SG,
00051 _2C5x, _2CB, _2H5x, _2H5xx, _2O1P, _2O2P, _2O5x, _2P,
00052 _2SG,
00053 AC1x, AC2, AC2x, AC3x, AC4, AC4x, AC5, AC5x,
00054 AC6, AC8, AH1x, AH2, AH2x, AH2T, AH3x, AH3T,
00055 AH4x, AH5x, AH5s, AH61, AH62, AH8, AN1, AN3,
00056 AN6, AN7, AN9, AO1, AO1P, AO2, AO2x, AO2P,
00057 AO2T, AO3x, AO4x, AO5x, AP, AP2,
00058 C, C1, C1x, C10, C12, C1A, C1B, C1C,
00059 C1D, C2, C2x, C2A, C2B, C2C, C2D, C3,
00060 C3x, C3A, C3B, C3C, C3D, C3T, C4, C4x,
00061 C4A, C4B, C4C, C4D, C5, C5x, C5M, C5T,
00062 C6, C7, C8, C9, C9B, CA, CAA, CAB,
00063 CAC, CAD, CAL, CAT, CAY, CB, CBA, CBB,
00064 CBC, CBD, CD, CD1, CD2, CE, CE1, CE2,
00065 CE3, CES, CG, CG1, CG2, CGA, CGD, CH2,
00066 CHA, CHB, CHC, CHD, CLA, CMA, CMB, CMC,
00067 CMD, CT, CY, CZ, CZ2, CZ3,
00068 DUM,
00069 F2x,
00070 FE,
00071 H1, H1x, H1xx, H11, H11x, H12, H12x, H13,
00072 H15, H16, H17, H2, H2x, H2xx, H21, H21x,
00073 H22, H22x, H23, H3, H3x, H3xx, H31x, H32x,
00074 H3T, H3T1, H3T2, H3T3, H4, H4x, H4xx, H41,
00075 H41x, H42, H42x, H5, H5x, H5xx, H51, H51x,
00076 H52, H52x, H53, H53x, H5M1, H5M2, H5M3, H5T,
00077 H5T1, H5T2, H5T3, H6, H61, H62, H8, H9,
00078 H91, H92, H93, H9B1, H9B2, H9B3, HA, HA1,
00079 HA2, HAA1, HAA2, HAB, HAC, HAD1, HAD2, HB,
00080 HB1, HB2, HB3, HBA1, HBA2, HBB1, HBB2, HBC1,
00081 HBC2, HBD1, HBD2, HC, HD, HD1, HD11, HD12,
00082 HD13, HD2, HD21, HD22, HD23, HD3, HE, HE1,
00083 HE2, HE21, HE22, HE3, HG, HG1, HG11, HG12,
00084 HG13, HG2, HG21, HG22, HG23, HH, HH11, HH12,
00085 HH2, HH21, HH22, HMA1, HMA2, HMA3, HMB1, HMB2,
00086 HMB3, HMC1, HMC2, HMC3, HMD1, HMD2, HMD3, HN,
00087 HN1, HN2, HNT, HT1, HT2, HT3, HY1, HY2,
00088 HY3, HZ, HZ1, HZ2, HZ3,
00089 MG,
00090 N, N1,
00091 N14, N2, N3, N4, N6, N7, N9, NA,
00092 NB, NC, NC1x, NC2, NC2x, NC3, NC3x, NC4,
00093 NC4x, NC5, NC5x, NC6, NC7, ND, ND1, ND2,
00094 NE, NE1, NE2, NH1, NH1x, NH2, NH2x, NH2T,
00095 NH3x, NH3T, NH4, NH4x, NH42, NH5, NH5x, NH5s,
00096 NH6, NH71, NH72, NN1, NN7, NO1, NO2, NO2x,
00097 NO3x, NO4x, NO5x, NO7, NP, NT, NZ,
00098 O,
00099 O1, O11, O12, O13, O14, O1A, O1B, O1D,
00100 O1G, O1P, O1P3, O2, O2x, O21, O22, O23,
00101 O24, O2A, O2B, O2D, O2G, O2P, O2P3, O3,
00102 O3x, O31P, O32P, O33P, O3A, O3B, O3G, O3P,
00103 O3P3, O3T, O4, O4x, O5x, O5T, O6, OD1,
00104 OD2, OE1, OE2, OG, OG1, OH, OH2, OT1,
00105 OT2, OY,
00106 P, P1, P2, P3, PA, PB, PG,
00107 POT,
00108 SD, SG,
00109 SOD,
00110 ZN,
00111 SIZE
00112 };
00113
00114 index_t pdbname_to_atom_index(const std::string& s);
00115
00116 const std::string& atom_index_to_pdbname(index_t i);
00117
00118 ELEMENT::index_t atom_index_to_element_index(index_t i);
00119 }
00120 }
00121
00122 #endif