View Javadoc

1   /*
2    * Copyright 2006-2010 Sam Adams <sea36 at users.sourceforge.net>
3    *
4    * This file is part of JNI-InChI.
5    *
6    * JNI-InChI is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU Lesser General Public License as published
8    * by the Free Software Foundation, either version 3 of the License, or
9    * (at your option) any later version.
10   *
11   * JNI-InChI is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   * GNU Lesser General Public License for more details.
15   *
16   * You should have received a copy of the GNU Lesser General Public License
17   * along with JNI-InChI.  If not, see <http://www.gnu.org/licenses/>.
18   */
19  package net.sf.jniinchi;
20  
21  
22  /**
23   * Type-safe enumeration of InChI options.  See <tt>inchi_api.h</tt>.
24   * @author Sam Adams
25   */
26  public enum INCHI_OPTION {
27  
28      /**
29       * Use Chiral Flag.
30       */
31      SUCF,
32  
33      /**
34       * Set Chiral Flag.
35       */
36      ChiralFlagON,
37  
38      /**
39       * Set Not-Chiral Flag.
40       */
41      ChiralFlagOFF,
42  
43      /**
44       * Exclude stereo (Default: Include Absolute stereo).
45       */
46      SNon,
47  
48      /**
49       * Absolute stereo.
50       */
51      SAbs,
52  
53      /**
54       * Relative stereo.
55       */
56      SRel,
57  
58      /**
59       * Racemic stereo.
60       */
61      SRac,
62  
63      /**
64       * Include omitted unknown/undefined stereo.
65       */
66      SUU,
67  
68      /**
69       * Narrow end of wedge points to stereocentre (default: both).
70       */
71      NEWPS,
72  
73      /**
74       * Include reconnected bond to metal results.
75       */
76      RecMet,
77  
78      /**
79       * Mobile H Perception Off (Default: On).
80       */
81      FixedH,
82  
83      /**
84       * Omit auxiliary information (default: Include).
85       */
86      AuxNone,
87  
88      /**
89       * Disable Aggressive Deprotonation (for testing only).
90       */
91      NoADP,
92  
93      /**
94       * Compressed output.
95       */
96      Compress,
97  
98      /**
99       * Overrides inchi_Atom::num_iso_H[0] == -1.
100      */
101     DoNotAddH,
102 
103     /**
104      * Set time-out per structure in seconds; W0 means unlimited. In InChI
105      * library the default value is unlimited
106      */
107     Wnumber,
108 
109     /**
110      * Output SDfile instead of InChI.
111      */
112     OutputSDF,
113 
114     /**
115      * Warn and produce empty InChI for empty structure.
116      */
117     WarnOnEmptyStructure,
118 
119     /**
120      * Fix bug leading to missing or undefined sp3 parity.
121      */
122     FixSp3Bug,
123 
124     /**
125      * Same as FixSp3Bug.
126      */
127     FB,
128 
129     /**
130      * Include Phosphines Stereochemistry.
131      */
132     SPXYZ,
133 
134     /**
135      * Include Arsines Stereochemistry
136      */
137     SAsXYZ;
138 
139     /* -- DOESN'T WORK
140      * Generate InChIKey
141      * /
142     Key,
143     */
144 
145     public static INCHI_OPTION valueOfIgnoreCase(String string) {
146         for (INCHI_OPTION option : INCHI_OPTION.values()) {
147             if (option.name().equalsIgnoreCase(string)) {
148                 return option;
149             }
150         }
151         return null;
152     }
153 
154 }