--- trunk/src/applications/dynamicProps/DynamicPropsCmd.h 2008/01/23 21:21:50 1213 +++ trunk/src/applications/dynamicProps/DynamicPropsCmd.h 2014/06/01 19:28:44 2003 @@ -1,7 +1,10 @@ -/* DynamicPropsCmd.h */ +/** @file DynamicPropsCmd.h + * @brief The header file for the command line option parser + * generated by GNU Gengetopt version 2.22.4 + * http://www.gnu.org/software/gengetopt. + * DO NOT modify this file, since it can be overwritten + * @author GNU Gengetopt by Lorenzo Bettini */ -/* File autogenerated by gengetopt version 2.19.1 */ - #ifndef DYNAMICPROPSCMD_H #define DYNAMICPROPSCMD_H @@ -10,81 +13,217 @@ #include "config.h" #endif +#include /* for FILE */ + #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #ifndef CMDLINE_PARSER_PACKAGE +/** @brief the program name (used for printing errors) */ #define CMDLINE_PARSER_PACKAGE "DynamicProps" #endif +#ifndef CMDLINE_PARSER_PACKAGE_NAME +/** @brief the complete program name (used for help and version) */ +#define CMDLINE_PARSER_PACKAGE_NAME "DynamicProps" +#endif + #ifndef CMDLINE_PARSER_VERSION +/** @brief the program version */ #define CMDLINE_PARSER_VERSION "1.00" #endif +/** @brief Where the command line options are stored */ struct gengetopt_args_info { - const char *help_help; /* Print help and exit help description. */ - const char *version_help; /* Print version and exit help description. */ - char * input_arg; /* input dump file. */ - char * input_orig; /* input dump file original value given at command line. */ - const char *input_help; /* input dump file help description. */ - char * output_arg; /* output file name. */ - char * output_orig; /* output file name original value given at command line. */ - const char *output_help; /* output file name help description. */ - char * sele1_arg; /* select first stuntdouble set. */ - char * sele1_orig; /* select first stuntdouble set original value given at command line. */ - const char *sele1_help; /* select first stuntdouble set help description. */ - char * sele2_arg; /* select second stuntdouble set (if sele2 is not set, use script from sele1). */ - char * sele2_orig; /* select second stuntdouble set (if sele2 is not set, use script from sele1) original value given at command line. */ - const char *sele2_help; /* select second stuntdouble set (if sele2 is not set, use script from sele1) help description. */ - int order_arg; /* Lengendre Polynomial Order. */ - char * order_orig; /* Lengendre Polynomial Order original value given at command line. */ - const char *order_help; /* Lengendre Polynomial Order help description. */ - const char *rcorr_help; /* rmsd help description. */ - const char *vcorr_help; /* velocity correlation function help description. */ - const char *dcorr_help; /* dipole correlation function help description. */ - const char *lcorr_help; /* Lengendre correlation function help description. */ - const char *r_rcorr_help; /* Radial rmsd help description. */ - const char *thetacorr_help; /* Angular rmsd help description. */ - const char *drcorr_help; /* Directional rmsd for particles with unit vectors help description. */ + const char *help_help; /**< @brief Print help and exit help description. */ + const char *version_help; /**< @brief Print version and exit help description. */ + char * input_arg; /**< @brief input dump file. */ + char * input_orig; /**< @brief input dump file original value given at command line. */ + const char *input_help; /**< @brief input dump file help description. */ + char * output_arg; /**< @brief output file name. */ + char * output_orig; /**< @brief output file name original value given at command line. */ + const char *output_help; /**< @brief output file name help description. */ + char * sele1_arg; /**< @brief select first stuntdouble set. */ + char * sele1_orig; /**< @brief select first stuntdouble set original value given at command line. */ + const char *sele1_help; /**< @brief select first stuntdouble set help description. */ + char * sele2_arg; /**< @brief select second stuntdouble set (if sele2 is not set, use script from sele1). */ + char * sele2_orig; /**< @brief select second stuntdouble set (if sele2 is not set, use script from sele1) original value given at command line. */ + const char *sele2_help; /**< @brief select second stuntdouble set (if sele2 is not set, use script from sele1) help description. */ + int order_arg; /**< @brief Lengendre Polynomial Order. */ + char * order_orig; /**< @brief Lengendre Polynomial Order original value given at command line. */ + const char *order_help; /**< @brief Lengendre Polynomial Order help description. */ + int nzbins_arg; /**< @brief Number of Z bins (default='100'). */ + char * nzbins_orig; /**< @brief Number of Z bins original value given at command line. */ + const char *nzbins_help; /**< @brief Number of Z bins help description. */ + char * memory_arg; /**< @brief Available memory (defaults to 2G) (default='2G'). */ + char * memory_orig; /**< @brief Available memory (defaults to 2G) original value given at command line. */ + const char *memory_help; /**< @brief Available memory (defaults to 2G) help description. */ + const char *selecorr_help; /**< @brief selection correlation function help description. */ + const char *rcorr_help; /**< @brief rmsd help description. */ + const char *vcorr_help; /**< @brief velocity correlation function help description. */ + const char *dcorr_help; /**< @brief dipole correlation function help description. */ + const char *lcorr_help; /**< @brief Lengendre correlation function help description. */ + const char *lcorrZ_help; /**< @brief Lengendre correlation function binned by Z help description. */ + const char *cohZ_help; /**< @brief Lengendre correlation function for OH bond vectors binned by Z help description. */ + const char *sdcorr_help; /**< @brief System dipole correlation function help description. */ + const char *r_rcorr_help; /**< @brief Radial rmsd help description. */ + const char *thetacorr_help; /**< @brief Angular rmsd help description. */ + const char *drcorr_help; /**< @brief Directional rmsd for particles with unit vectors help description. */ + const char *helfandEcorr_help; /**< @brief Helfand moment for thermal conductvity help description. */ + const char *momentum_help; /**< @brief Helfand momentum for viscosity help description. */ + const char *stresscorr_help; /**< @brief Stress tensor correlation function help description. */ + const char *bondcorr_help; /**< @brief Bond extension correlation function help description. */ + const char *freqfluccorr_help; /**< @brief Frequency Fluctuation correlation function help description. */ - int help_given ; /* Whether help was given. */ - int version_given ; /* Whether version was given. */ - int input_given ; /* Whether input was given. */ - int output_given ; /* Whether output was given. */ - int sele1_given ; /* Whether sele1 was given. */ - int sele2_given ; /* Whether sele2 was given. */ - int order_given ; /* Whether order was given. */ - int rcorr_given ; /* Whether rcorr was given. */ - int vcorr_given ; /* Whether vcorr was given. */ - int dcorr_given ; /* Whether dcorr was given. */ - int lcorr_given ; /* Whether lcorr was given. */ - int r_rcorr_given ; /* Whether r_rcorr was given. */ - int thetacorr_given ; /* Whether thetacorr was given. */ - int drcorr_given ; /* Whether drcorr was given. */ + unsigned int help_given ; /**< @brief Whether help was given. */ + unsigned int version_given ; /**< @brief Whether version was given. */ + unsigned int input_given ; /**< @brief Whether input was given. */ + unsigned int output_given ; /**< @brief Whether output was given. */ + unsigned int sele1_given ; /**< @brief Whether sele1 was given. */ + unsigned int sele2_given ; /**< @brief Whether sele2 was given. */ + unsigned int order_given ; /**< @brief Whether order was given. */ + unsigned int nzbins_given ; /**< @brief Whether nzbins was given. */ + unsigned int memory_given ; /**< @brief Whether memory was given. */ + unsigned int selecorr_given ; /**< @brief Whether selecorr was given. */ + unsigned int rcorr_given ; /**< @brief Whether rcorr was given. */ + unsigned int vcorr_given ; /**< @brief Whether vcorr was given. */ + unsigned int dcorr_given ; /**< @brief Whether dcorr was given. */ + unsigned int lcorr_given ; /**< @brief Whether lcorr was given. */ + unsigned int lcorrZ_given ; /**< @brief Whether lcorrZ was given. */ + unsigned int cohZ_given ; /**< @brief Whether cohZ was given. */ + unsigned int sdcorr_given ; /**< @brief Whether sdcorr was given. */ + unsigned int r_rcorr_given ; /**< @brief Whether r_rcorr was given. */ + unsigned int thetacorr_given ; /**< @brief Whether thetacorr was given. */ + unsigned int drcorr_given ; /**< @brief Whether drcorr was given. */ + unsigned int helfandEcorr_given ; /**< @brief Whether helfandEcorr was given. */ + unsigned int momentum_given ; /**< @brief Whether momentum was given. */ + unsigned int stresscorr_given ; /**< @brief Whether stresscorr was given. */ + unsigned int bondcorr_given ; /**< @brief Whether bondcorr was given. */ + unsigned int freqfluccorr_given ; /**< @brief Whether freqfluccorr was given. */ - int dynamicProps_group_counter; /* counter for group dynamicProps */ + char **inputs ; /**< @brief unamed options (options without names) */ + unsigned inputs_num ; /**< @brief unamed options number */ + int dynamicProps_group_counter; /**< @brief Counter for group dynamicProps */ } ; +/** @brief The additional parameters to pass to parser functions */ +struct cmdline_parser_params +{ + int override; /**< @brief whether to override possibly already present options (default 0) */ + int initialize; /**< @brief whether to initialize the option structure gengetopt_args_info (default 1) */ + int check_required; /**< @brief whether to check that all required options were provided (default 1) */ + int check_ambiguity; /**< @brief whether to check for options already specified in the option structure gengetopt_args_info (default 0) */ + int print_errors; /**< @brief whether getopt_long should print an error message for a bad option (default 1) */ +} ; + +/** @brief the purpose string of the program */ extern const char *gengetopt_args_info_purpose; +/** @brief the usage string of the program */ extern const char *gengetopt_args_info_usage; +/** @brief all the lines making the help output */ extern const char *gengetopt_args_info_help[]; -int cmdline_parser (int argc, char * const *argv, +/** + * The command line parser + * @param argc the number of command line options + * @param argv the command line options + * @param args_info the structure where option information will be stored + * @return 0 if everything went fine, NON 0 if an error took place + */ +int cmdline_parser (int argc, char **argv, struct gengetopt_args_info *args_info); -int cmdline_parser2 (int argc, char * const *argv, + +/** + * The command line parser (version with additional parameters - deprecated) + * @param argc the number of command line options + * @param argv the command line options + * @param args_info the structure where option information will be stored + * @param override whether to override possibly already present options + * @param initialize whether to initialize the option structure my_args_info + * @param check_required whether to check that all required options were provided + * @return 0 if everything went fine, NON 0 if an error took place + * @deprecated use cmdline_parser_ext() instead + */ +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) + * @param argc the number of command line options + * @param argv the command line options + * @param args_info the structure where option information will be stored + * @param params additional parameters for the parser + * @return 0 if everything went fine, NON 0 if an error took place + */ +int cmdline_parser_ext (int argc, char **argv, + struct gengetopt_args_info *args_info, + struct cmdline_parser_params *params); + +/** + * Save the contents of the option struct into an already open FILE stream. + * @param outfile the stream where to dump options + * @param args_info the option struct to dump + * @return 0 if everything went fine, NON 0 if an error took place + */ +int cmdline_parser_dump(FILE *outfile, + struct gengetopt_args_info *args_info); + +/** + * Save the contents of the option struct into a (text) file. + * This file can be read by the config file parser (if generated by gengetopt) + * @param filename the file where to save + * @param args_info the option struct to save + * @return 0 if everything went fine, NON 0 if an error took place + */ int cmdline_parser_file_save(const char *filename, struct gengetopt_args_info *args_info); +/** + * Print the help + */ void cmdline_parser_print_help(void); +/** + * Print the version + */ void cmdline_parser_print_version(void); +/** + * Initializes all the fields a cmdline_parser_params structure + * to their default values + * @param params the structure to initialize + */ +void cmdline_parser_params_init(struct cmdline_parser_params *params); + +/** + * Allocates dynamically a cmdline_parser_params structure and initializes + * all its fields to their default values + * @return the created and initialized cmdline_parser_params structure + */ +struct cmdline_parser_params *cmdline_parser_params_create(void); + +/** + * Initializes the passed gengetopt_args_info structure's fields + * (also set default values for options that have a default) + * @param args_info the structure to initialize + */ void cmdline_parser_init (struct gengetopt_args_info *args_info); +/** + * Deallocates the string fields of the gengetopt_args_info structure + * (but does not deallocate the structure itself) + * @param args_info the structure to deallocate + */ void cmdline_parser_free (struct gengetopt_args_info *args_info); +/** + * Checks that all the required options were specified + * @param args_info the structure to check + * @param prog_name the name of the program that will be used to print + * possible errors + * @return + */ int cmdline_parser_required (struct gengetopt_args_info *args_info, const char *prog_name);