00001
00005 #ifndef P_EXCEPT_HH
00006 #define P_EXCEPT_HH
00007
00008 #include <stdexcept>
00009 #include <blort/Recognizer3D/PNamespace.hh>
00010
00011 #define __HERE__ __FILE__, __FUNCTION__, __LINE__
00012
00013 namespace P
00014 {
00015
00026 class Except : public exception
00027 {
00028 string _what;
00029 public:
00030 Except(const char *file, const char *function, int line,
00031 const char *format, ...) throw();
00032 virtual ~Except() throw() {}
00033 virtual const char* what() const throw() {return _what.c_str();}
00034 void Set(const string &s) {_what = s;}
00035 };
00036
00037 }
00038
00039 #endif
00040