IOR
option.h
Go to the documentation of this file.
1 #ifndef _IOR_OPTION_H
2 #define _IOR_OPTION_H
3 
4 #include <stdint.h>
5 
6 /*
7  * Initial version by JK
8  */
9 
10 typedef enum{
15 
16 typedef struct{
17  char shortVar;
18  char * longVar;
19  char * help;
20 
22  char type; // data type, H = hidden string
23  void * variable;
24 } option_help;
25 
27 
28 typedef struct{
29  char * prefix; // may be NULL to include it in the standard name
31  aiori_mod_opt_t * defaults; // these default values are taken from the command line
33 
34 typedef struct{
38 
39 #define LAST_OPTION {0, 0, 0, (option_value_type) 0, 0, NULL}
40 
41 int64_t string_to_bytes(char *size_str);
43 //@return the number of parsed arguments
44 int option_parse(int argc, char ** argv, options_all_t * args);
45 int option_parse_str(char*val, options_all_t * opt_all);
47 
48 /* Parse a single line */
49 int option_parse_key_value(char * key, char * value, options_all_t * opt_all);
50 
51 #endif
option_module * modules
Definition: option.h:36
int option_parse_str(char *val, options_all_t *opt_all)
Definition: option.c:392
option_value_type
Definition: option.h:10
int64_t string_to_bytes(char *size_str)
Definition: option.c:30
void * variable
Definition: option.h:23
option_help * option_merge(option_help *a, option_help *b)
Definition: option.c:12
aiori_mod_opt_t * defaults
Definition: option.h:31
char * longVar
Definition: option.h:18
int option_parse(int argc, char **argv, options_all_t *args)
Definition: option.c:414
char shortVar
Definition: option.h:17
option_value_type arg
Definition: option.h:21
int option_parse_key_value(char *key, char *value, options_all_t *opt_all)
Definition: option.c:402
char * help
Definition: option.h:19
option_help * options
Definition: option.h:30
char * prefix
Definition: option.h:29
int module_count
Definition: option.h:35
char type
Definition: option.h:22
void option_print_current(option_help *args)
Definition: option.c:242