| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| #ifndef CMD_LINE_PARSER_INCLUDED |
| #define CMD_LINE_PARSER_INCLUDED |
| #include <stdarg.h> |
| #include <string.h> |
|
|
|
|
| #ifdef _WIN32 |
| int strcasecmp(char* c1,char* c2); |
| #endif |
|
|
| class cmdLineReadable{ |
| public: |
| bool set; |
| char* name; |
| cmdLineReadable(const char* name); |
| virtual ~cmdLineReadable(void); |
| virtual int read(char** argv,int argc); |
| virtual void writeValue(char* str); |
| }; |
|
|
| class cmdLineInt : public cmdLineReadable { |
| public: |
| int value; |
| cmdLineInt(const char* name); |
| cmdLineInt(const char* name,const int& v); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
| template<int Dim> |
| class cmdLineIntArray : public cmdLineReadable { |
| public: |
| int values[Dim]; |
| cmdLineIntArray(const char* name); |
| cmdLineIntArray(const char* name,const int v[Dim]); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
|
|
| class cmdLineFloat : public cmdLineReadable { |
| public: |
| float value; |
| cmdLineFloat(const char* name); |
| cmdLineFloat(const char* name,const float& f); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
| template<int Dim> |
| class cmdLineFloatArray : public cmdLineReadable { |
| public: |
| float values[Dim]; |
| cmdLineFloatArray(const char* name); |
| cmdLineFloatArray(const char* name,const float f[Dim]); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
| class cmdLineString : public cmdLineReadable { |
| public: |
| char* value; |
| cmdLineString(const char* name); |
| ~cmdLineString(); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
| class cmdLineStrings : public cmdLineReadable { |
| int Dim; |
| public: |
| char** values; |
| cmdLineStrings(const char* name,int Dim); |
| ~cmdLineStrings(void); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
| template<int Dim> |
| class cmdLineStringArray : public cmdLineReadable { |
| public: |
| char* values[Dim]; |
| cmdLineStringArray(const char* name); |
| ~cmdLineStringArray(); |
| int read(char** argv,int argc); |
| void writeValue(char* str); |
| }; |
|
|
| |
| |
| void cmdLineParse(int argc, char **argv,int num,cmdLineReadable** r,int dumpError=1); |
|
|
| char* GetFileExtension(char* fileName); |
| char* GetLocalFileName(char* fileName); |
| char** ReadWords(const char* fileName,int& cnt); |
|
|
| #include "CmdLineParser.inl" |
| #endif |
|
|