1 #ifndef CMDLINE_PARSER_H
2 #define CMDLINE_PARSER_H
7 NOTE NOTE NOTE: cmd_getOptionValueString() and
8 cmd_getArgument() return malloc'ed memory (and abort the program if
9 out of memory). You must free it.
13 enum optiontype {OPTTYPE_FLAG, OPTTYPE_INT, OPTTYPE_UINT, OPTTYPE_STRING};
15 struct cmdlineParserCtl;
17 typedef struct cmdlineParserCtl * cmdlineParser;
20 cmd_processOptions(cmdlineParser const cpP,
22 const char ** const argv,
23 const char ** const errorP);
26 cmd_createOptionParser(void);
29 cmd_destroyOptionParser(cmdlineParser const cpP);
32 cmd_defineOption(cmdlineParser const cpP,
33 const char * const name,
34 enum optiontype const type);
37 cmd_optionIsPresent(cmdlineParser const cpP,
38 const char * const name);
41 cmd_getOptionValueUint(cmdlineParser const cpP,
42 const char * const name);
45 cmd_getOptionValueInt(cmdlineParser const cpP,
46 const char * const name);
49 cmd_getOptionValueString(cmdlineParser const cpP,
50 const char * const name);
53 cmd_argumentCount(cmdlineParser const cpP);
56 cmd_getArgument(cmdlineParser const cpP,
57 unsigned int const argNumber);