00001
00002
00003 #ifndef BUNDLER_BUNDLER_EXCEPTION_HPP
00004 #define BUNDLER_BUNDLER_EXCEPTION_HPP
00005
00006 #include "kernel/jafarException.hpp"
00007
00008 namespace jafar {
00009
00010 namespace bundler {
00011
00017 class BundlerException : public ::jafar::kernel::Exception {
00018
00019 public:
00020
00024 enum ExceptionId {
00025 VIEWSMANAGER_UNKNOWN_CAMERA_TYPE,
00026 VIEWSMANAGER_POS_NOT_FOUND,
00027 ADAPTER_INVALID_CONSTRAINT,
00028 FILESYSTEM_ERROR,
00029 POS_ALEREADY_EXISTS,
00030 NO_PIXEL_DATA,
00031 NO_PROJECTION_DATA,
00032 NO_DATA_SAVED,
00033 BAD_SIZES,
00034 NO_ID_GIVEN,
00035 NO_CONTAINER_GIVEN
00036 };
00037
00047 BundlerException(ExceptionId id_,
00048 const std::string& message_,
00049 const std::string& file_, int line_) throw();
00050
00051 virtual ~BundlerException() throw();
00052
00053 ExceptionId getExceptionId() const throw();
00054
00055 protected:
00056
00057 ExceptionId id;
00058
00059 static std::string exceptionIdToString(ExceptionId id_) throw();
00060
00061 };
00062
00063 }
00064 }
00065
00066 #endif // BUNDLER_BUNDLER_EXCEPTION_HPP
00067