00001 
00002 
00003 #ifndef REDNAV_REDNAV_EXCEPTION_HPP
00004 #define REDNAV_REDNAV_EXCEPTION_HPP
00005 
00006 #include "kernel/jafarException.hpp"
00007 
00008 namespace jafar {
00009 
00010   namespace rednav {
00011 
00017     class RednavException : public ::jafar::kernel::Exception {
00018 
00019     public:
00020 
00024       enum ExceptionId {
00025         
00026       };
00027 
00037       RednavException(ExceptionId id_, 
00038                             const std::string& message_, 
00039                             const std::string& file_, int line_) throw();
00040 
00041       virtual ~RednavException() 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 // REDNAV_REDNAV_EXCEPTION_HPP