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