00001
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef LOG4SENDPP_EXCEPTION_H
00031 #define LOG4SENDPP_EXCEPTION_H
00032
00033 #include <log4sendpp/log4sendpp.h>
00034
00035 #ifdef LOG4SENDPP_USE_STD_EXCEPTION
00036 #include <exception>
00037 #endif
00038
00039
00040 LOG4SENDPP_NS_START
00041
00042
00046 class LOG4SENDPP_API_DECL0 Exception
00047 #ifdef LOG4SENDPP_USE_STD_EXCEPTION
00048 : public LOG4SENDPP_STD_NS::exception
00049 #endif
00050 {
00051 public:
00052
00058 Exception (unsigned srcline, const char* srcfile, const LOG4SENDPP_STD_NS::string &message);
00059
00063 virtual ~Exception() throw();
00064
00068 virtual LOG4SENDPP_STD_NS::string getMessage() const;
00069
00073 unsigned getSrcLine() const;
00074
00078 LOG4SENDPP_STD_NS::string getSrcFile() const;
00079
00080 #ifdef LOG4SENDPP_USE_STD_EXCEPTION
00081
00087 virtual const char *what() const throw();
00088 #endif
00089
00090 private:
00091
00092 LOG4SENDPP_STD_NS::string message;
00093 unsigned srcline;
00094 LOG4SENDPP_STD_NS::string srcfile;
00095 #ifdef LOG4SENDPP_USE_STD_EXCEPTION
00096 mutable LOG4SENDPP_STD_NS::string what_helper;
00097 #endif
00098 };
00099
00100
00101 LOG4SENDPP_NS_END
00102
00103
00104 #endif // LOG4SENDPP_EXCEPTION_H
00105