00001
00002
00003 #ifndef FUSION_FUSION_EXCEPTION_HPP
00004 #define FUSION_FUSION_EXCEPTION_HPP
00005
00006 #include "kernel/jafarException.hpp"
00007
00008 namespace jafar {
00009
00010 namespace fusion {
00011
00017 class FusionException : public ::jafar::kernel::Exception {
00018
00019 public:
00020
00024 enum ExceptionId {
00025
00026 };
00027
00037 FusionException(ExceptionId id_,
00038 const std::string& message_,
00039 const std::string& file_, int line_) throw();
00040
00041 virtual ~FusionException() throw();
00042
00043 ExceptionId getExceptionId() const throw();
00044
00045 protected:
00046
00047 ExceptionId id;
00048
00049 static std::string exceptionIdToString(ExceptionId id_) throw();
00050
00051 };
00052
00053 }
00054 }
00055
00056 #endif // FUSION_FUSION_EXCEPTION_HPP
00057