ArgsParser.h

00001 #ifndef gridripper_util_ArgsParser_h
00002 #define gridripper_util_ArgsParser_h
00003 
00004 #include <gridripper/config.h>
00005 #include <gridripper/lang/IllegalArgumentException.h>
00006 #include <gridripper/lang/StreamTokenizer.h>
00007 
00008 namespace gridripper { namespace util {
00009 
00010 class ParameterPreprocessor;
00011 
00012 using namespace std;
00013 
00021 class ArgsParser
00022 {
00023 private:
00024     StreamTokenizer st;
00025 
00026     const ParameterPreprocessor* preprocessor;
00027 
00028     string currentName;
00029 
00030     string currentValue;
00031 
00032 public:
00038     ArgsParser(const string& args, const ParameterPreprocessor* pp);
00039 
00045     bool next();
00046 
00051     const string& name() {
00052         return currentName;
00053     }
00054 
00059     string stringValue() {
00060         return currentValue;
00061     }
00062 
00067     int intValue() throw(IllegalArgumentException&);
00068 
00073     GReal_t realValue() throw(IllegalArgumentException&);
00074 };
00075 
00076 } } // namespace gridripper::util
00077 
00078 #endif /* gridripper_util_ArgsParser_h */

Generated on Wed Jun 17 18:46:47 2009 for GridRipper by  doxygen 1.5.6