~ubuntu-branches/debian/stretch/openbabel/stretch

« back to all changes in this revision

Viewing changes to include/inchi/ichidrp.h

  • Committer: Bazaar Package Importer
  • Author(s): Michael Banck
  • Date: 2008-07-22 23:54:58 UTC
  • mfrom: (3.1.10 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080722235458-3o606czluviz4akx
Tags: 2.2.0-2
* Upload to unstable.
* debian/control: Updated descriptions.
* debian/patches/gauss_cube_format.patch: New patch, makes the 
  gaussian cube format available again.
* debian/rules (DEB_DH_MAKESHLIBS_ARGS_libopenbabel3): Removed.
* debian/rules (DEB_CONFIGURE_EXTRA_FLAGS): Likewise.
* debian/libopenbabel3.install: Adjust formats directory to single 
  version hierarchy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * International Chemical Identifier (InChI)
 
3
 * Version 1
 
4
 * Software version 1.02-beta
 
5
 * August 23, 2007
 
6
 * Developed at NIST
 
7
 *
 
8
 * The InChI library and programs are free software developed under the
 
9
 * auspices of the International Union of Pure and Applied Chemistry (IUPAC);
 
10
 * you can redistribute this software and/or modify it under the terms of 
 
11
 * the GNU Lesser General Public License as published by the Free Software 
 
12
 * Foundation:
 
13
 * http://www.opensource.org/licenses/lgpl-license.php
 
14
 */
 
15
 
 
16
 
 
17
#ifndef __INCHIDRP_H__
 
18
#define __INCHIDRP_H__
 
19
 
 
20
#ifndef INCHI_ANSI_ONLY /* { */
 
21
/********************************************
 
22
 * Parameters for the structure drawing
 
23
 ********************************************/
 
24
#define TDP_LEN_LBL      16  /* length of a label (label: Req., Shown, Found) */
 
25
/* #define TDP_NUM_LBL 3  */ /* number of labels */
 
26
/* #define TDP_NUM_PAR 3  */ /* number of types per label (types: B/T, I/N, S) */
 
27
typedef enum tagTblTypes {itBASIC, itISOTOPIC, itSTEREO, TDP_NUM_PAR} TBL_TYPES; /*  types */
 
28
typedef enum tagTblLabels{ ilSHOWN,  TDP_NUM_LBL} TBL_LABELS; /*  labels */
 
29
typedef struct tagTblDrawPatms {
 
30
    char   ReqShownFoundTxt[TDP_NUM_LBL][TDP_LEN_LBL];
 
31
    char   ReqShownFound[TDP_NUM_LBL][TDP_NUM_PAR];
 
32
    int    nOrientation;  /* 10*degrees: 0 or 2700 */
 
33
    int    bDrawTbl;
 
34
} TBL_DRAW_PARMS;
 
35
/*********************************************/
 
36
typedef struct tagDrawParmsSettings {
 
37
    TBL_DRAW_PARMS *tdp;
 
38
    unsigned long  ulDisplTime;
 
39
    int            bOrigAtom;
 
40
    int            nFontSize;
 
41
} SET_DRAW_PARMS;  /* input only: how to draw or calculate */
 
42
/*********************************************/
 
43
typedef struct tagReturnedDrawParms {
 
44
    int       bEsc;
 
45
} RET_DRAW_PARMS;
 
46
/*********************************************/
 
47
typedef struct tagPersistDrawParms {
 
48
    int rcPict[4];
 
49
} PER_DRAW_PARMS; /* saved between displaying different structures */
 
50
/*********************************************/
 
51
typedef struct tagDrawParms {
 
52
    SET_DRAW_PARMS  sdp;   /* how to draw: fill on the 1st call */
 
53
    RET_DRAW_PARMS  rdp;   /* returned when drawing window is closed */
 
54
    PER_DRAW_PARMS *pdp;   /* persistent: save between calls (window size) */
 
55
#ifndef INCHI_LIB
 
56
#ifndef INCHI_ANSI_ONLY
 
57
    AT_NUMB   *nEquLabels; /* num_inp_atoms elements, value>0 marks atoms in the set #value  */
 
58
    AT_NUMB    nNumEquSets;  /* max mark value */
 
59
    AT_NUMB    nCurEquLabel; /* current mark */
 
60
#endif
 
61
#endif
 
62
} DRAW_PARMS; /* Settings: How to draw the structure */
 
63
 
 
64
#endif /* } INCHI_ANSI_ONLY */
 
65
 
 
66
#if( ACD_LABS_VERSION == 1 )
 
67
#define MAX_NUM_PATHS 5
 
68
#else
 
69
#define MAX_NUM_PATHS 4
 
70
#endif
 
71
 
 
72
typedef enum tagInputType { INPUT_NONE=0, INPUT_MOLFILE=1, INPUT_SDFILE=2, INPUT_INCHI_XML=3, INPUT_INCHI_PLAIN=4, INPUT_CMLFILE=5, INPUT_INCHI=6, INPUT_MAX } INPUT_TYPE;
 
73
typedef struct tagInputParms {
 
74
    char            szSdfDataHeader[MAX_SDF_HEADER+1];
 
75
    char           *pSdfLabel;
 
76
    char           *pSdfValue;
 
77
    long            lSdfId;
 
78
    long            lMolfileNumber;
 
79
#ifndef INCHI_ANSI_ONLY
 
80
    DRAW_PARMS      dp;
 
81
    PER_DRAW_PARMS  pdp;
 
82
    TBL_DRAW_PARMS  tdp;
 
83
#endif
 
84
/*
 
85
  -- Files --
 
86
  ip->path[0] => Input
 
87
  ip->path[1] => Output (INChI)
 
88
  ip->path[2] => Log
 
89
  ip->path[3] => Problem structures
 
90
  ip->path[4] => Errors file (ACD)
 
91
 
 
92
*/
 
93
    const char     *path[MAX_NUM_PATHS];
 
94
    int             num_paths;
 
95
    long            first_struct_number;
 
96
    long            last_struct_number;
 
97
    INPUT_TYPE      nInputType;
 
98
    INCHI_MODE      nMode;
 
99
    int             bAbcNumbers;
 
100
    /*int             bXml;*/
 
101
    int             bINChIOutputOptions; /* !(ip->bINChIOutputOptions & INCHI_OUT_PLAIN_TEXT) */
 
102
    int             bCtPredecessors;
 
103
    int             bXmlStarted;
 
104
    int             bDisplayEachComponentINChI;
 
105
 
 
106
    long            msec_MaxTime;   /* was ulMaxTime; max time to run ProsessOneStructure */
 
107
    long            msec_LeftTime;
 
108
 
 
109
    long            ulDisplTime; /* not used: max structure or question display time */
 
110
    int             bDisplay;
 
111
    int             bDisplayIfRestoreWarnings; /* InChI->Struct debug */
 
112
    int             bMergeAllInputStructures;
 
113
    int             bSaveWarningStructsAsProblem;
 
114
    int             bSaveAllGoodStructsAsProblem;
 
115
    int             bGetSdfileId;
 
116
    int             bGetMolfileNumber;  /* read molfile number from the name line like "Structure #22" */
 
117
    int             bCompareComponents; /* see flags CMP_COMPONENTS, etc. */
 
118
    int             bDisplayCompositeResults;
 
119
    int             bDoNotAddH;
 
120
    int             bNoStructLabels;
 
121
    int             bChiralFlag;
 
122
    int             bAllowEmptyStructure;
 
123
        /*^^^ */
 
124
    int             bCalcInChIKey;
 
125
        /*^^^ */
 
126
    INCHI_MODE      bTautFlags;
 
127
    INCHI_MODE      bTautFlagsDone;
 
128
 
 
129
#if( READ_INCHI_STRING == 1 )
 
130
    int             bReadInChIOptions;
 
131
#endif
 
132
 
 
133
/* post v.1 features */
 
134
#if( UNDERIVATIZE == 1 )
 
135
    int             bUnderivatize;
 
136
#endif
 
137
#if( RING2CHAIN == 1 )
 
138
    int             bRing2Chain;
 
139
#endif
 
140
#if ( RING2CHAIN == 1 || UNDERIVATIZE == 1 )
 
141
    int             bIngnoreUnchanged;
 
142
#endif
 
143
 
 
144
} INPUT_PARMS;
 
145
 
 
146
#endif /* __INCHIDRP_H__ */