00001
00002
00003
00004
00005
00006
00007
00008 #ifndef CFG_EXCEPTION_H
00009 #define CFG_EXCEPTION_H
00010
00011 namespace cfg {
00013 class Exception {
00014 public:
00015 typedef enum {
00016 kUnknown,
00017 kTypeMismatch,
00018 kConfigRO,
00019 kParamNotFound,
00020 kConfigNotFound
00021 } ECode_t;
00022
00023 Exception(ECode_t ec, const char* message, const char* file, int line);
00024
00025 void Print();
00026
00027 public:
00028 ECode_t fCode;
00029 const char* fMessage;
00030 const char* fFile;
00031 int fLine;
00032 };
00033 }
00034
00035 #endif // CFGEXCEPTION_H
00036