ESDM
Middleware for Earth System Data
option.h
1 #ifndef _IOR_OPTION_H
2 #define _IOR_OPTION_H
3 
4 #include <stdint.h>
5 
6 /*
7  * Initial revision by JK
8  */
9 
10 typedef enum {
11  OPTION_FLAG,
12  OPTION_OPTIONAL_ARGUMENT,
13  OPTION_REQUIRED_ARGUMENT
14 } option_value_type;
15 
16 typedef struct {
17  char shortVar;
18  char *longVar;
19  char *help;
20  option_value_type arg;
21  char type; // data type, H = hidden string
22  void *variable;
23 } option_help;
24 
25 #define LAST_OPTION \
26  { 0, 0, 0, (option_value_type)0, 0, NULL }
27 
28 int64_t string_to_bytes(char *size_str);
29 
30 void option_print_help(option_help *args, int is_plugin);
31 
32 void option_print_current(option_help *args);
33 
34 //@return the number of parsed arguments
35 int option_parse(int argc, char **argv, option_help *args, int *print_help);
36 
37 #endif
Definition: option.h:16