17 #ifndef OPTIONPARSER_H_
18 #define OPTIONPARSER_H_
42 template<
typename TYPE>
43 int getArg(
string key,
int argc,
char *argv[],
TYPE &ret,
int i) {
45 int rv=getArgString(key, argc, argv, args, i);
60 int getArgString(
string key,
int argc,
char *argv[],
string &ret,
int i) {
65 while (argv[i][startIndex]==
'-') startIndex++;
66 if ((startIndex!=0) & (strncmp(key.c_str(), string(&argv[i][startIndex]).substr(0,key.length()).c_str(), key.length())==0)) {
70 string arg(&argv[i][startIndex]);
71 if ((key.length()==arg.length()) & (i+1<argc)) {
72 if (argv[i+1][0]!=
'-')
75 istringstream input(arg);
76 input.ignore(arg.length(),
'=');
77 unsigned int length=input.tellg();
78 if (--length==key.length())
88 #endif // OPTIONPARSER_H_