26 #ifndef __TERRALIB_COMMON_INTERNAL_EXCEPTION_H    27 #define __TERRALIB_COMMON_INTERNAL_EXCEPTION_H    87         virtual int code() 
const throw();
    94         virtual const char* what() 
const throw();
   101         virtual const char* getClassName() 
const throw();
   125 #define TE_DECLARE_EXCEPTION_CLASS(API_DECL, ClassName, BaseExceptionClass)                           \   126   class API_DECL ClassName : public virtual BaseExceptionClass                                        \   130       ClassName() throw() { }                                                                         \   132       explicit ClassName(const std::string& what, int code = te::common::UNKNOWN_EXCEPTION) throw();  \   134       explicit ClassName(const char* const what, int code = te::common::UNKNOWN_EXCEPTION) throw();   \   136       virtual ~ClassName() throw();                                                                   \   138       virtual const char* getClassName() const throw();                                               \   144 #define TE_DEFINE_EXCEPTION_CLASS(ClassName, BaseExceptionClass, ClassNameAsLiteral) \   145     ClassName::ClassName(const std::string& what, int code) throw()                  \   146       : BaseExceptionClass(what, code)                                               \   152     ClassName::ClassName(const char* const what, int code) throw()                   \   153       : BaseExceptionClass(what, code)                                               \   159     ClassName::~ClassName() throw()                                                  \   163     const char* ClassName::getClassName() const throw()                              \   165       return ClassNameAsLiteral;                                                     \   168 #endif  // __TERRALIB_COMMON_INTERNAL_EXCEPTION_H std::ostream & operator<<(const Exception &e, std::ostream &o)
It serializes the exception and sends it to the output stream. 
 
std::string m_msg
The internal exception message. 
 
Configuration flags for the TerraLib Common Runtime module. 
 
int m_code
The internal exception code. 
 
#define TECOMMONEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
This class is designed to declare objects to be thrown as exceptions by TerraLib. ...