~ubuntu-branches/ubuntu/feisty/openbabel/feisty

« back to all changes in this revision

Viewing changes to src/formats/inchi/ichinorm.h

  • Committer: Bazaar Package Importer
  • Author(s): Michael Banck
  • Date: 2006-05-14 19:46:01 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20060514194601-h3j1wovvc42cigxl
Tags: 2.0.1-1
* New upstream release. (Closes: #341628)
* debian/patches/04_zipstream_fix.diff: Removed, applied upstream.
* debian/rules (DEB_MAKE_CHECK_TARGET): Readded.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * International Union of Pure and Applied Chemistry (IUPAC)
 
3
 * International Chemical Identifier (InChI)
 
4
 * Version 1
 
5
 * Software version 1.00
 
6
 * April 13, 2005
 
7
 * Developed at NIST
 
8
 */
 
9
 
 
10
#ifndef __INCHINORM_H__
 
11
#define __INCHINORM_H__
 
12
 
 
13
#include "mode.h"
 
14
#include "ichi_bns.h"
 
15
 
 
16
#ifndef INCHI_ALL_CPP
 
17
#ifdef __cplusplus
 
18
extern "C" {
 
19
#endif
 
20
#endif
 
21
 
 
22
/* main normalization procedure */
 
23
int mark_alt_bonds_and_taut_groups ( inp_ATOM *at, inp_ATOM *at_fixed_bonds_out, int num_atoms,
 
24
                                     T_GROUP_INFO *t_group_info, INCHI_MODE *inpbTautFlags, INCHI_MODE *inpbTautFlagsDone );
 
25
 
 
26
int MarkTautomerGroups( inp_ATOM *at, int num_atoms, T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info,
 
27
                        struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD);
 
28
int MarkChargeGroups ( inp_ATOM *at, int num_atoms, C_GROUP_INFO *c_group_info, T_GROUP_INFO *t_group_info,
 
29
                      struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD );
 
30
int MarkSaltChargeGroups ( inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info,
 
31
                          T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info,
 
32
                          struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD );
 
33
int MarkSaltChargeGroups2 ( inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info,
 
34
                          T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info,
 
35
                          struct BalancedNetworkStructure *pBNS, struct BalancedNetworkData *pBD );
 
36
int MergeSaltTautGroups( inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info,
 
37
                          T_GROUP_INFO *t_group_info, C_GROUP_INFO *c_group_info,
 
38
                          struct BalancedNetworkStructure *pBNS );
 
39
int MakeIsotopicHGroup( inp_ATOM *at, int num_atoms, S_GROUP_INFO *s_group_info,
 
40
                          T_GROUP_INFO *t_group_info );
 
41
 
 
42
int remove_terminal_HDT( int num_atoms, inp_ATOM *at );
 
43
int RemoveExcessiveImplicitH( int num_atoms, int num_removed_H, inp_ATOM *at );
 
44
int add_DT_to_num_H( int num_atoms, inp_ATOM *at );
 
45
int MarkRingSystemsInp( inp_ATOM *at, int num_atoms );
 
46
int free_t_group_info( T_GROUP_INFO *t_group_info );
 
47
int make_a_copy_of_t_group_info( T_GROUP_INFO *t_group_info, T_GROUP_INFO *t_group_info_orig );
 
48
int set_tautomer_iso_sort_keys( T_GROUP_INFO *t_group_info );
 
49
int CountTautomerGroups( sp_ATOM *at, int num_atoms, T_GROUP_INFO *t_group_info );
 
50
int SortTautomerGroupsAndEndpoints( T_GROUP_INFO *t_group_info, int num_atoms, int num_at_tg, AT_RANK *nRank );
 
51
int FillIsotopicAtLinearCT( int num_atoms, sp_ATOM* at, const AT_RANK *nAtomNumber,
 
52
                            AT_ISOTOPIC *LinearCTIsotopic, int nMaxLenLinearCTIsotopic, int *pnLenLinearCTIsotopic );
 
53
 
 
54
int FillTautLinearCT2( int num_atoms, int num_at_tg, int bIsoTaut,
 
55
        const AT_RANK *nRank, const AT_RANK *nAtomNumber, const AT_RANK *nSymmRank,
 
56
        const AT_RANK *nRankIso, const AT_RANK *nAtomNumberIso, const AT_RANK *nSymmRankIso,
 
57
        AT_TAUTOMER   *LinearCTTautomer, int nMaxLenLinearCTTautomer, int *pnLenLinearCTTautomer,
 
58
        AT_ISO_TGROUP *LinearCTIsotopicTautomer, int nMaxLenLinearCTIsotopicTautomer, int *pnLenLinearCTIsotopicTautomer,
 
59
        T_GROUP_INFO *t_group_info );
 
60
 
 
61
#ifndef INCHI_ALL_CPP
 
62
#ifdef __cplusplus
 
63
}
 
64
#endif
 
65
#endif
 
66
 
 
67
#endif /* __INCHINORM_H__ */