MeVisLabToolboxReference
|
00001 //---------------------------------------------------------------------------------- 00002 // **InsertLicense** code 00003 //---------------------------------------------------------------------------------- 00005 00010 //---------------------------------------------------------------------------------- 00011 00012 #ifndef CLASS_DCMTREE_EXCEPTION 00013 #define CLASS_DCMTREE_EXCEPTION 00014 00015 // Include basics and also string. 00016 #include "DCMTree_Lib.h" 00017 #include "DCMTree_Defines.h" 00018 00019 namespace DCMTree 00020 { 00022 class DCMTREE_EXPORT Exception 00023 { 00024 public: 00026 Exception (const std::string &method); 00027 00032 Exception (const std::string &method,const std::string &description); 00033 00035 Exception (const Exception &other); 00036 00041 Exception (const Exception &cause,const std::string &method); 00042 00048 Exception (const Exception &cause,const std::string &method,const std::string &description); 00049 00051 virtual ~Exception(); 00052 00057 //Exception &operator=(const Exception &other); 00058 00062 const std::string &method() const; 00063 00067 const std::string &description() const; 00068 00072 const ExceptionPtr &cause() const; 00073 00077 std::string toString() const; 00078 00079 private: 00080 std::string _method; 00081 std::string _description; 00082 ExceptionPtr _cause; 00083 }; 00084 } 00085 00086 #endif 00087 00088