00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _GLASS_EXCEPTION_HH_
00022 #define _GLASS_EXCEPTION_HH_
00023
00024 #include "types.h"
00025
00026 namespace libglass {
00027
00028 class LIBGLASS_API Exception {
00029 protected:
00030 string message;
00031 public:
00035 Exception() : message("Unspecified message") {}
00036
00041 Exception(const string &message) : message(message) {}
00042
00047 Exception(const char *message) : message(message) {}
00048
00052 virtual ~Exception() {};
00053
00059 virtual string getMessage(void) { return message; }
00060 };
00061
00062 class EmptyException : public Exception {
00063 public:
00064 EmptyException() : Exception("Empty queue") {}
00065 };
00066
00067 }
00068
00069
00070
00071
00072 #endif // _GLASS_EXCEPTION_HH_