ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/trunk/src/applications/staticProps/StaticPropsCmd.h
Revision: 1390
Committed: Wed Nov 25 20:02:06 2009 UTC (15 years, 5 months ago) by gezelter
Content type: text/plain
File size: 15254 byte(s)
Log Message:
Almost all of the changes necessary to create OpenMD out of our old
project (OOPSE-4)

File Contents

# Content
1 /** @file StaticPropsCmd.h
2 * @brief The header file for the command line option parser
3 * generated by GNU Gengetopt version 2.22
4 * http://www.gnu.org/software/gengetopt.
5 * DO NOT modify this file, since it can be overwritten
6 * @author GNU Gengetopt by Lorenzo Bettini */
7
8 #ifndef STATICPROPSCMD_H
9 #define STATICPROPSCMD_H
10
11 /* If we use autoconf. */
12 #ifdef HAVE_CONFIG_H
13 #include "config.h"
14 #endif
15
16 #include <stdio.h> /* for FILE */
17
18 #ifdef __cplusplus
19 extern "C" {
20 #endif /* __cplusplus */
21
22 #ifndef CMDLINE_PARSER_PACKAGE
23 /** @brief the program name */
24 #define CMDLINE_PARSER_PACKAGE "StaticProps"
25 #endif
26
27 #ifndef CMDLINE_PARSER_VERSION
28 /** @brief the program version */
29 #define CMDLINE_PARSER_VERSION "1.00"
30 #endif
31
32 /** @brief Where the command line options are stored */
33 struct gengetopt_args_info
34 {
35 const char *help_help; /**< @brief Print help and exit help description. */
36 const char *version_help; /**< @brief Print version and exit help description. */
37 char * input_arg; /**< @brief input dump file. */
38 char * input_orig; /**< @brief input dump file original value given at command line. */
39 const char *input_help; /**< @brief input dump file help description. */
40 char * output_arg; /**< @brief output file name. */
41 char * output_orig; /**< @brief output file name original value given at command line. */
42 const char *output_help; /**< @brief output file name help description. */
43 int step_arg; /**< @brief process every n frame (default='1'). */
44 char * step_orig; /**< @brief process every n frame original value given at command line. */
45 const char *step_help; /**< @brief process every n frame help description. */
46 int nbins_arg; /**< @brief number of bins (general purpose) (default='100'). */
47 char * nbins_orig; /**< @brief number of bins (general purpose) original value given at command line. */
48 const char *nbins_help; /**< @brief number of bins (general purpose) help description. */
49 int nbins_x_arg; /**< @brief number of bins in x axis (default='100'). */
50 char * nbins_x_orig; /**< @brief number of bins in x axis original value given at command line. */
51 const char *nbins_x_help; /**< @brief number of bins in x axis help description. */
52 int nbins_y_arg; /**< @brief number of bins in y axis (default='100'). */
53 char * nbins_y_orig; /**< @brief number of bins in y axis original value given at command line. */
54 const char *nbins_y_help; /**< @brief number of bins in y axis help description. */
55 int nanglebins_arg; /**< @brief number of bins for cos(angle) (default='50'). */
56 char * nanglebins_orig; /**< @brief number of bins for cos(angle) original value given at command line. */
57 const char *nanglebins_help; /**< @brief number of bins for cos(angle) help description. */
58 double length_arg; /**< @brief maximum length (Defaults to 1/2 smallest length of first frame). */
59 char * length_orig; /**< @brief maximum length (Defaults to 1/2 smallest length of first frame) original value given at command line. */
60 const char *length_help; /**< @brief maximum length (Defaults to 1/2 smallest length of first frame) help description. */
61 double rcut_arg; /**< @brief cutoff radius (rcut). */
62 char * rcut_orig; /**< @brief cutoff radius (rcut) original value given at command line. */
63 const char *rcut_help; /**< @brief cutoff radius (rcut) help description. */
64 double zoffset_arg; /**< @brief Where to set the zero for the slab_density calculation (default='0'). */
65 char * zoffset_orig; /**< @brief Where to set the zero for the slab_density calculation original value given at command line. */
66 const char *zoffset_help; /**< @brief Where to set the zero for the slab_density calculation help description. */
67 char * sele1_arg; /**< @brief select the first stuntdouble set. */
68 char * sele1_orig; /**< @brief select the first stuntdouble set original value given at command line. */
69 const char *sele1_help; /**< @brief select the first stuntdouble set help description. */
70 char * sele2_arg; /**< @brief select the second stuntdouble set. */
71 char * sele2_orig; /**< @brief select the second stuntdouble set original value given at command line. */
72 const char *sele2_help; /**< @brief select the second stuntdouble set help description. */
73 char * sele3_arg; /**< @brief select the third stuntdouble set. */
74 char * sele3_orig; /**< @brief select the third stuntdouble set original value given at command line. */
75 const char *sele3_help; /**< @brief select the third stuntdouble set help description. */
76 char * refsele_arg; /**< @brief select reference (use and only use with --gxyz). */
77 char * refsele_orig; /**< @brief select reference (use and only use with --gxyz) original value given at command line. */
78 const char *refsele_help; /**< @brief select reference (use and only use with --gxyz) help description. */
79 char * comsele_arg; /**< @brief select stunt doubles for center-of-mass reference point. */
80 char * comsele_orig; /**< @brief select stunt doubles for center-of-mass reference point original value given at command line. */
81 const char *comsele_help; /**< @brief select stunt doubles for center-of-mass reference point help description. */
82 char * molname_arg; /**< @brief molecule name. */
83 char * molname_orig; /**< @brief molecule name original value given at command line. */
84 const char *molname_help; /**< @brief molecule name help description. */
85 int begin_arg; /**< @brief begin internal index. */
86 char * begin_orig; /**< @brief begin internal index original value given at command line. */
87 const char *begin_help; /**< @brief begin internal index help description. */
88 int end_arg; /**< @brief end internal index. */
89 char * end_orig; /**< @brief end internal index original value given at command line. */
90 const char *end_help; /**< @brief end internal index help description. */
91 double radius_arg; /**< @brief nanoparticle radius. */
92 char * radius_orig; /**< @brief nanoparticle radius original value given at command line. */
93 const char *radius_help; /**< @brief nanoparticle radius help description. */
94 const char *bo_help; /**< @brief bond order parameter (--rcut must be specified) help description. */
95 const char *bor_help; /**< @brief bond order parameter as a function of radius (--rcut must be specified) help description. */
96 const char *bad_help; /**< @brief N(theta) bond angle density within (--rcut must be specified) help description. */
97 const char *gofr_help; /**< @brief g(r) help description. */
98 const char *gofz_help; /**< @brief g(z) help description. */
99 const char *r_theta_help; /**< @brief g(r, cos(theta)) help description. */
100 const char *r_omega_help; /**< @brief g(r, cos(omega)) help description. */
101 const char *theta_omega_help; /**< @brief g(cos(theta), cos(omega)) help description. */
102 const char *gxyz_help; /**< @brief g(x, y, z) help description. */
103 const char *p2_help; /**< @brief p2 order parameter (--sele1 and --sele2 must be specified) help description. */
104 const char *rp2_help; /**< @brief rp2 order parameter (--sele1 and --sele2 must be specified) help description. */
105 const char *scd_help; /**< @brief scd order parameter (either --sele1, --sele2, --sele3 are specified or --molname, --begin, --end are specified) help description. */
106 const char *density_help; /**< @brief density plot help description. */
107 const char *slab_density_help; /**< @brief slab density help description. */
108 const char *hxy_help; /**< @brief hxy help description. */
109 const char *rho_r_help; /**< @brief rho of R help description. */
110 const char *hullvol_help; /**< @brief hull volume of nanoparticle help description. */
111
112 unsigned int help_given ; /**< @brief Whether help was given. */
113 unsigned int version_given ; /**< @brief Whether version was given. */
114 unsigned int input_given ; /**< @brief Whether input was given. */
115 unsigned int output_given ; /**< @brief Whether output was given. */
116 unsigned int step_given ; /**< @brief Whether step was given. */
117 unsigned int nbins_given ; /**< @brief Whether nbins was given. */
118 unsigned int nbins_x_given ; /**< @brief Whether nbins_x was given. */
119 unsigned int nbins_y_given ; /**< @brief Whether nbins_y was given. */
120 unsigned int nanglebins_given ; /**< @brief Whether nanglebins was given. */
121 unsigned int length_given ; /**< @brief Whether length was given. */
122 unsigned int rcut_given ; /**< @brief Whether rcut was given. */
123 unsigned int zoffset_given ; /**< @brief Whether zoffset was given. */
124 unsigned int sele1_given ; /**< @brief Whether sele1 was given. */
125 unsigned int sele2_given ; /**< @brief Whether sele2 was given. */
126 unsigned int sele3_given ; /**< @brief Whether sele3 was given. */
127 unsigned int refsele_given ; /**< @brief Whether refsele was given. */
128 unsigned int comsele_given ; /**< @brief Whether comsele was given. */
129 unsigned int molname_given ; /**< @brief Whether molname was given. */
130 unsigned int begin_given ; /**< @brief Whether begin was given. */
131 unsigned int end_given ; /**< @brief Whether end was given. */
132 unsigned int radius_given ; /**< @brief Whether radius was given. */
133 unsigned int bo_given ; /**< @brief Whether bo was given. */
134 unsigned int bor_given ; /**< @brief Whether bor was given. */
135 unsigned int bad_given ; /**< @brief Whether bad was given. */
136 unsigned int gofr_given ; /**< @brief Whether gofr was given. */
137 unsigned int gofz_given ; /**< @brief Whether gofz was given. */
138 unsigned int r_theta_given ; /**< @brief Whether r_theta was given. */
139 unsigned int r_omega_given ; /**< @brief Whether r_omega was given. */
140 unsigned int theta_omega_given ; /**< @brief Whether theta_omega was given. */
141 unsigned int gxyz_given ; /**< @brief Whether gxyz was given. */
142 unsigned int p2_given ; /**< @brief Whether p2 was given. */
143 unsigned int rp2_given ; /**< @brief Whether rp2 was given. */
144 unsigned int scd_given ; /**< @brief Whether scd was given. */
145 unsigned int density_given ; /**< @brief Whether density was given. */
146 unsigned int slab_density_given ; /**< @brief Whether slab_density was given. */
147 unsigned int hxy_given ; /**< @brief Whether hxy was given. */
148 unsigned int rho_r_given ; /**< @brief Whether rho_r was given. */
149 unsigned int hullvol_given ; /**< @brief Whether hullvol was given. */
150
151 int staticProps_group_counter; /**< @brief Counter for group staticProps */
152 } ;
153
154 /** @brief The additional parameters to pass to parser functions */
155 struct cmdline_parser_params
156 {
157 int override; /**< @brief whether to override possibly already present options (default 0) */
158 int initialize; /**< @brief whether to initialize the option structure gengetopt_args_info (default 1) */
159 int check_required; /**< @brief whether to check that all required options were provided (default 1) */
160 int check_ambiguity; /**< @brief whether to check for options already specified in the option structure gengetopt_args_info (default 0) */
161 int print_errors; /**< @brief whether getopt_long should print an error message for a bad option (default 1) */
162 } ;
163
164 /** @brief the purpose string of the program */
165 extern const char *gengetopt_args_info_purpose;
166 /** @brief the usage string of the program */
167 extern const char *gengetopt_args_info_usage;
168 /** @brief all the lines making the help output */
169 extern const char *gengetopt_args_info_help[];
170
171 /**
172 * The command line parser
173 * @param argc the number of command line options
174 * @param argv the command line options
175 * @param args_info the structure where option information will be stored
176 * @return 0 if everything went fine, NON 0 if an error took place
177 */
178 int cmdline_parser (int argc, char * const *argv,
179 struct gengetopt_args_info *args_info);
180
181 /**
182 * The command line parser (version with additional parameters - deprecated)
183 * @param argc the number of command line options
184 * @param argv the command line options
185 * @param args_info the structure where option information will be stored
186 * @param override whether to override possibly already present options
187 * @param initialize whether to initialize the option structure my_args_info
188 * @param check_required whether to check that all required options were provided
189 * @return 0 if everything went fine, NON 0 if an error took place
190 * @deprecated use cmdline_parser_ext() instead
191 */
192 int cmdline_parser2 (int argc, char * const *argv,
193 struct gengetopt_args_info *args_info,
194 int override, int initialize, int check_required);
195
196 /**
197 * The command line parser (version with additional parameters)
198 * @param argc the number of command line options
199 * @param argv the command line options
200 * @param args_info the structure where option information will be stored
201 * @param params additional parameters for the parser
202 * @return 0 if everything went fine, NON 0 if an error took place
203 */
204 int cmdline_parser_ext (int argc, char * const *argv,
205 struct gengetopt_args_info *args_info,
206 struct cmdline_parser_params *params);
207
208 /**
209 * Save the contents of the option struct into an already open FILE stream.
210 * @param outfile the stream where to dump options
211 * @param args_info the option struct to dump
212 * @return 0 if everything went fine, NON 0 if an error took place
213 */
214 int cmdline_parser_dump(FILE *outfile,
215 struct gengetopt_args_info *args_info);
216
217 /**
218 * Save the contents of the option struct into a (text) file.
219 * This file can be read by the config file parser (if generated by gengetopt)
220 * @param filename the file where to save
221 * @param args_info the option struct to save
222 * @return 0 if everything went fine, NON 0 if an error took place
223 */
224 int cmdline_parser_file_save(const char *filename,
225 struct gengetopt_args_info *args_info);
226
227 /**
228 * Print the help
229 */
230 void cmdline_parser_print_help(void);
231 /**
232 * Print the version
233 */
234 void cmdline_parser_print_version(void);
235
236 /**
237 * Initializes all the fields a cmdline_parser_params structure
238 * to their default values
239 * @param params the structure to initialize
240 */
241 void cmdline_parser_params_init(struct cmdline_parser_params *params);
242
243 /**
244 * Allocates dynamically a cmdline_parser_params structure and initializes
245 * all its fields to their default values
246 * @return the created and initialized cmdline_parser_params structure
247 */
248 struct cmdline_parser_params *cmdline_parser_params_create(void);
249
250 /**
251 * Initializes the passed gengetopt_args_info structure's fields
252 * (also set default values for options that have a default)
253 * @param args_info the structure to initialize
254 */
255 void cmdline_parser_init (struct gengetopt_args_info *args_info);
256 /**
257 * Deallocates the string fields of the gengetopt_args_info structure
258 * (but does not deallocate the structure itself)
259 * @param args_info the structure to deallocate
260 */
261 void cmdline_parser_free (struct gengetopt_args_info *args_info);
262
263 /**
264 * Checks that all the required options were specified
265 * @param args_info the structure to check
266 * @param prog_name the name of the program that will be used to print
267 * possible errors
268 * @return
269 */
270 int cmdline_parser_required (struct gengetopt_args_info *args_info,
271 const char *prog_name);
272
273
274 #ifdef __cplusplus
275 }
276 #endif /* __cplusplus */
277 #endif /* STATICPROPSCMD_H */