00001
00002
00003 #ifndef MODELER_MODELER_EXCEPTION_HPP
00004 #define MODELER_MODELER_EXCEPTION_HPP
00005
00006 #include "kernel/jafarException.hpp"
00007
00008 namespace jafar {
00009
00010 namespace modeler {
00011
00017 class ModelerException : public ::jafar::kernel::Exception {
00018
00019 public:
00020
00024 enum ExceptionId {
00025
00026 WRONG_SIZE,
00027 WRONG_TYPE,
00028 FILE_READING_ERROR,
00029 EMPTY_MESH,
00030 NO_FEATURES_FOUND,
00031 NO_CAMERA,
00032 EXISTING_ID,
00033 NO_MATCH_FOUND,
00034 CAMERA_UNSET
00035 };
00036
00046 ModelerException(ExceptionId id_,
00047 const std::string& message_,
00048 const std::string& file_, int line_) throw();
00049
00050 virtual ~ModelerException() throw();
00051
00052 ExceptionId getExceptionId() const throw();
00053
00054 protected:
00055
00056 ExceptionId id;
00057
00058 static std::string exceptionIdToString(ExceptionId id_) throw();
00059
00060 };
00061
00062 }
00063 }
00064
00065 #endif // MODELER_MODELER_EXCEPTION_HPP
00066