OpenMD 3.0
Molecular Dynamics in the Open
Loading...
Searching...
No Matches
nanorodBuilderCmd.hpp
Go to the documentation of this file.
1/** @file nanorodBuilderCmd.hpp
2 * @brief The header file for the command line option parser
3 * generated by GNU Gengetopt version 2.22.6
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 NANORODBUILDERCMD_H
9#define NANORODBUILDERCMD_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
19extern "C" {
20#endif /* __cplusplus */
21
22#ifndef CMDLINE_PARSER_PACKAGE
23/** @brief the program name (used for printing errors) */
24#define CMDLINE_PARSER_PACKAGE "nanorodBuilder"
25#endif
26
27#ifndef CMDLINE_PARSER_PACKAGE_NAME
28/** @brief the complete program name (used for help and version) */
29#define CMDLINE_PARSER_PACKAGE_NAME "nanorodBuilder"
30#endif
31
32#ifndef CMDLINE_PARSER_VERSION
33/** @brief the program version */
34#define CMDLINE_PARSER_VERSION ""
35#endif
36
37/** @brief Where the command line options are stored */
39{
40 const char *help_help; /**< @brief Print help and exit help description. */
41 const char *version_help; /**< @brief Print version and exit help description. */
42 char * output_arg; /**< @brief Output file name. */
43 char * output_orig; /**< @brief Output file name original value given at command line. */
44 const char *output_help; /**< @brief Output file name help description. */
45 double latticeConstant_arg; /**< @brief Lattice spacing in Angstroms for cubic lattice.. */
46 char * latticeConstant_orig; /**< @brief Lattice spacing in Angstroms for cubic lattice. original value given at command line. */
47 const char *latticeConstant_help; /**< @brief Lattice spacing in Angstroms for cubic lattice. help description. */
48 double radius_arg; /**< @brief Nanorod radius in Angstroms. */
49 char * radius_orig; /**< @brief Nanorod radius in Angstroms original value given at command line. */
50 const char *radius_help; /**< @brief Nanorod radius in Angstroms help description. */
51 double length_arg; /**< @brief Nanorod length in Angstroms. */
52 char * length_orig; /**< @brief Nanorod length in Angstroms original value given at command line. */
53 const char *length_help; /**< @brief Nanorod length in Angstroms help description. */
54 int ellipsoid_flag; /**< @brief Build an Ellipsoid instead of a rod. (default=off). */
55 const char *ellipsoid_help; /**< @brief Build an Ellipsoid instead of a rod. help description. */
56 double* shellRadius_arg; /**< @brief Radius containing within it only molecules of a specific component. Specified for each component > 1 in the template file.. */
57 char ** shellRadius_orig; /**< @brief Radius containing within it only molecules of a specific component. Specified for each component > 1 in the template file. original value given at command line. */
58 unsigned int shellRadius_min; /**< @brief Radius containing within it only molecules of a specific component. Specified for each component > 1 in the template file.'s minimum occurreces */
59 unsigned int shellRadius_max; /**< @brief Radius containing within it only molecules of a specific component. Specified for each component > 1 in the template file.'s maximum occurreces */
60 const char *shellRadius_help; /**< @brief Radius containing within it only molecules of a specific component. Specified for each component > 1 in the template file. help description. */
61 double* molFraction_arg; /**< @brief Builds a multi-component random alloy nanoparticle. A mole Fraction must be specified for each component > 1 in the template file.. */
62 char ** molFraction_orig; /**< @brief Builds a multi-component random alloy nanoparticle. A mole Fraction must be specified for each component > 1 in the template file. original value given at command line. */
63 unsigned int molFraction_min; /**< @brief Builds a multi-component random alloy nanoparticle. A mole Fraction must be specified for each component > 1 in the template file.'s minimum occurreces */
64 unsigned int molFraction_max; /**< @brief Builds a multi-component random alloy nanoparticle. A mole Fraction must be specified for each component > 1 in the template file.'s maximum occurreces */
65 const char *molFraction_help; /**< @brief Builds a multi-component random alloy nanoparticle. A mole Fraction must be specified for each component > 1 in the template file. help description. */
66 double vacancyPercent_arg; /**< @brief Percentage of atoms to remove from within vacancy range. */
67 char * vacancyPercent_orig; /**< @brief Percentage of atoms to remove from within vacancy range original value given at command line. */
68 const char *vacancyPercent_help; /**< @brief Percentage of atoms to remove from within vacancy range help description. */
69 double vacancyInnerRadius_arg; /**< @brief Radius arround core-shell where vacancies should be located.. */
70 char * vacancyInnerRadius_orig; /**< @brief Radius arround core-shell where vacancies should be located. original value given at command line. */
71 const char *vacancyInnerRadius_help; /**< @brief Radius arround core-shell where vacancies should be located. help description. */
72 double vacancyOuterRadius_arg; /**< @brief Radius arround core-shell where vacancies should be located.. */
73 char * vacancyOuterRadius_orig; /**< @brief Radius arround core-shell where vacancies should be located. original value given at command line. */
74 const char *vacancyOuterRadius_help; /**< @brief Radius arround core-shell where vacancies should be located. help description. */
75
76 unsigned int help_given ; /**< @brief Whether help was given. */
77 unsigned int version_given ; /**< @brief Whether version was given. */
78 unsigned int output_given ; /**< @brief Whether output was given. */
79 unsigned int latticeConstant_given ; /**< @brief Whether latticeConstant was given. */
80 unsigned int radius_given ; /**< @brief Whether radius was given. */
81 unsigned int length_given ; /**< @brief Whether length was given. */
82 unsigned int ellipsoid_given ; /**< @brief Whether ellipsoid was given. */
83 unsigned int shellRadius_given ; /**< @brief Whether shellRadius was given. */
84 unsigned int molFraction_given ; /**< @brief Whether molFraction was given. */
85 unsigned int vacancyPercent_given ; /**< @brief Whether vacancyPercent was given. */
86 unsigned int vacancyInnerRadius_given ; /**< @brief Whether vacancyInnerRadius was given. */
87 unsigned int vacancyOuterRadius_given ; /**< @brief Whether vacancyOuterRadius was given. */
88
89 char **inputs ; /**< @brief unamed options (options without names) */
90 unsigned inputs_num ; /**< @brief unamed options number */
91} ;
92
93/** @brief The additional parameters to pass to parser functions */
95{
96 int override; /**< @brief whether to override possibly already present options (default 0) */
97 int initialize; /**< @brief whether to initialize the option structure gengetopt_args_info (default 1) */
98 int check_required; /**< @brief whether to check that all required options were provided (default 1) */
99 int check_ambiguity; /**< @brief whether to check for options already specified in the option structure gengetopt_args_info (default 0) */
100 int print_errors; /**< @brief whether getopt_long should print an error message for a bad option (default 1) */
101} ;
102
103/** @brief the purpose string of the program */
104extern const char *gengetopt_args_info_purpose;
105/** @brief the usage string of the program */
106extern const char *gengetopt_args_info_usage;
107/** @brief the description string of the program */
108extern const char *gengetopt_args_info_description;
109/** @brief all the lines making the help output */
110extern const char *gengetopt_args_info_help[];
111
112/**
113 * The command line parser
114 * @param argc the number of command line options
115 * @param argv the command line options
116 * @param args_info the structure where option information will be stored
117 * @return 0 if everything went fine, NON 0 if an error took place
118 */
119int cmdline_parser (int argc, char **argv,
120 struct gengetopt_args_info *args_info);
121
122/**
123 * The command line parser (version with additional parameters - deprecated)
124 * @param argc the number of command line options
125 * @param argv the command line options
126 * @param args_info the structure where option information will be stored
127 * @param override whether to override possibly already present options
128 * @param initialize whether to initialize the option structure my_args_info
129 * @param check_required whether to check that all required options were provided
130 * @return 0 if everything went fine, NON 0 if an error took place
131 * @deprecated use cmdline_parser_ext() instead
132 */
133int cmdline_parser2 (int argc, char **argv,
134 struct gengetopt_args_info *args_info,
135 int override, int initialize, int check_required);
136
137/**
138 * The command line parser (version with additional parameters)
139 * @param argc the number of command line options
140 * @param argv the command line options
141 * @param args_info the structure where option information will be stored
142 * @param params additional parameters for the parser
143 * @return 0 if everything went fine, NON 0 if an error took place
144 */
145int cmdline_parser_ext (int argc, char **argv,
146 struct gengetopt_args_info *args_info,
147 struct cmdline_parser_params *params);
148
149/**
150 * Save the contents of the option struct into an already open FILE stream.
151 * @param outfile the stream where to dump options
152 * @param args_info the option struct to dump
153 * @return 0 if everything went fine, NON 0 if an error took place
154 */
155int cmdline_parser_dump(FILE *outfile,
156 struct gengetopt_args_info *args_info);
157
158/**
159 * Save the contents of the option struct into a (text) file.
160 * This file can be read by the config file parser (if generated by gengetopt)
161 * @param filename the file where to save
162 * @param args_info the option struct to save
163 * @return 0 if everything went fine, NON 0 if an error took place
164 */
165int cmdline_parser_file_save(const char *filename,
166 struct gengetopt_args_info *args_info);
167
168/**
169 * Print the help
170 */
172/**
173 * Print the version
174 */
176
177/**
178 * Initializes all the fields a cmdline_parser_params structure
179 * to their default values
180 * @param params the structure to initialize
181 */
183
184/**
185 * Allocates dynamically a cmdline_parser_params structure and initializes
186 * all its fields to their default values
187 * @return the created and initialized cmdline_parser_params structure
188 */
190
191/**
192 * Initializes the passed gengetopt_args_info structure's fields
193 * (also set default values for options that have a default)
194 * @param args_info the structure to initialize
195 */
196void cmdline_parser_init (struct gengetopt_args_info *args_info);
197/**
198 * Deallocates the string fields of the gengetopt_args_info structure
199 * (but does not deallocate the structure itself)
200 * @param args_info the structure to deallocate
201 */
202void cmdline_parser_free (struct gengetopt_args_info *args_info);
203
204/**
205 * The config file parser (deprecated version)
206 * @param filename the name of the config file
207 * @param args_info the structure where option information will be stored
208 * @param override whether to override possibly already present options
209 * @param initialize whether to initialize the option structure my_args_info
210 * @param check_required whether to check that all required options were provided
211 * @return 0 if everything went fine, NON 0 if an error took place
212 * @deprecated use cmdline_parser_config_file() instead
213 */
214int cmdline_parser_configfile (const char *filename,
215 struct gengetopt_args_info *args_info,
216 int override, int initialize, int check_required);
217
218/**
219 * The config file parser
220 * @param filename the name of the config file
221 * @param args_info the structure where option information will be stored
222 * @param params additional parameters for the parser
223 * @return 0 if everything went fine, NON 0 if an error took place
224 */
225int cmdline_parser_config_file (const char *filename,
226 struct gengetopt_args_info *args_info,
227 struct cmdline_parser_params *params);
228
229/**
230 * Checks that all the required options were specified
231 * @param args_info the structure to check
232 * @param prog_name the name of the program that will be used to print
233 * possible errors
234 * @return
235 */
236int cmdline_parser_required (struct gengetopt_args_info *args_info,
237 const char *prog_name);
238
239
240#ifdef __cplusplus
241}
242#endif /* __cplusplus */
243#endif /* NANORODBUILDERCMD_H */
int cmdline_parser_dump(FILE *outfile, struct gengetopt_args_info *args_info)
Save the contents of the option struct into an already open FILE stream.
int cmdline_parser(int argc, char **argv, struct gengetopt_args_info *args_info)
The command line parser.
int cmdline_parser_file_save(const char *filename, struct gengetopt_args_info *args_info)
Save the contents of the option struct into a (text) file.
const char * gengetopt_args_info_purpose
the purpose string of the program
const char * gengetopt_args_info_help[]
all the lines making the help output
int cmdline_parser2(int argc, char **argv, struct gengetopt_args_info *args_info, int override, int initialize, int check_required)
The command line parser (version with additional parameters - deprecated)
int cmdline_parser_required(struct gengetopt_args_info *args_info, const char *prog_name)
Checks that all the required options were specified.
void cmdline_parser_print_version(void)
Print the version.
struct cmdline_parser_params * cmdline_parser_params_create(void)
Allocates dynamically a cmdline_parser_params structure and initializes all its fields to their defau...
const char * gengetopt_args_info_usage
the usage string of the program
int cmdline_parser_ext(int argc, char **argv, struct gengetopt_args_info *args_info, struct cmdline_parser_params *params)
The command line parser (version with additional parameters)
void cmdline_parser_init(struct gengetopt_args_info *args_info)
Initializes the passed gengetopt_args_info structure's fields (also set default values for options th...
const char * gengetopt_args_info_description
the description string of the program
void cmdline_parser_print_help(void)
Print the help.
int cmdline_parser_config_file(const char *filename, struct gengetopt_args_info *args_info, struct cmdline_parser_params *params)
The config file parser.
void cmdline_parser_free(struct gengetopt_args_info *args_info)
Deallocates the string fields of the gengetopt_args_info structure (but does not deallocate the struc...
void cmdline_parser_params_init(struct cmdline_parser_params *params)
Initializes all the fields a cmdline_parser_params structure to their default values.
int cmdline_parser_configfile(const char *filename, struct gengetopt_args_info *args_info, int override, int initialize, int check_required)
The config file parser (deprecated version)
The additional parameters to pass to parser functions.
int print_errors
whether getopt_long should print an error message for a bad option (default 1)
int check_required
whether to check that all required options were provided (default 1)
int check_ambiguity
whether to check for options already specified in the option structure gengetopt_args_info (default 0...
int initialize
whether to initialize the option structure gengetopt_args_info (default 1)
Where the command line options are stored.
unsigned int vacancyInnerRadius_given
Whether vacancyInnerRadius was given.
unsigned int output_given
Whether output was given.
const char * ellipsoid_help
Build an Ellipsoid instead of a rod.
char ** molFraction_orig
Builds a multi-component random alloy nanoparticle.
unsigned int latticeConstant_given
Whether latticeConstant was given.
double vacancyPercent_arg
Percentage of atoms to remove from within vacancy range.
const char * radius_help
Nanoparticle radius in Angstroms help description.
char * output_orig
output file name original value given at command line.
const char * output_help
output file name help description.
double vacancyOuterRadius_arg
Radius arround core-shell where vacancies should be located.
const char * molFraction_help
Builds a multi-component random alloy nanoparticle.
unsigned inputs_num
unamed options number
char * vacancyInnerRadius_orig
Radius arround core-shell where vacancies should be located.
const char * vacancyInnerRadius_help
Radius arround core-shell where vacancies should be located.
const char * latticeConstant_help
Lattice spacing in Angstroms for cubic lattice.
unsigned int molFraction_given
Whether molFraction was given.
int ellipsoid_flag
Build an Ellipsoid instead of a rod.
const char * vacancyPercent_help
Percentage of atoms to remove from within vacancy range help description.
double length_arg
maximum length (default='100').
const char * help_help
Print help and exit help description.
double * molFraction_arg
Builds a multi-component random alloy nanoparticle.
char * vacancyPercent_orig
Percentage of atoms to remove from within vacancy range original value given at command line.
char * output_arg
output file name.
char ** inputs
unamed options (options without names)
double * shellRadius_arg
Radius containing within it only molecules of a specific component.
unsigned int molFraction_min
Builds a multi-component random alloy nanoparticle.
unsigned int shellRadius_given
Whether shellRadius was given.
const char * vacancyOuterRadius_help
Radius arround core-shell where vacancies should be located.
char * latticeConstant_orig
Lattice spacing in Angstroms for cubic lattice.
unsigned int length_given
Whether length was given.
unsigned int molFraction_max
Builds a multi-component random alloy nanoparticle.
char * length_orig
maximum length original value given at command line.
double radius_arg
Nanoparticle radius in Angstroms.
unsigned int help_given
Whether help was given.
const char * shellRadius_help
Radius containing within it only molecules of a specific component.
unsigned int ellipsoid_given
Whether ellipsoid was given.
char * vacancyOuterRadius_orig
Radius arround core-shell where vacancies should be located.
unsigned int radius_given
Whether radius was given.
double vacancyInnerRadius_arg
Radius arround core-shell where vacancies should be located.
char * radius_orig
Nanoparticle radius in Angstroms original value given at command line.
unsigned int version_given
Whether version was given.
const char * length_help
maximum length help description.
unsigned int shellRadius_min
Radius containing within it only molecules of a specific component.
const char * version_help
Print version and exit help description.
unsigned int vacancyPercent_given
Whether vacancyPercent was given.
double latticeConstant_arg
Lattice spacing in Angstroms for cubic lattice.
char ** shellRadius_orig
Radius containing within it only molecules of a specific component.
unsigned int shellRadius_max
Radius containing within it only molecules of a specific component.
unsigned int vacancyOuterRadius_given
Whether vacancyOuterRadius was given.