41 #ifndef Core_Exceptions_Exception_h
42 #define Core_Exceptions_Exception_h
46 #include <sci_defs/error_defs.h>
49 #ifdef WIN32 //VS2010 doesn't understand this yet. VS2012 ought to.
52 #define NOEXCEPT noexcept(true)
61 virtual const char* message()
const=0;
62 virtual const char* type()
const=0;
67 const char*
what()
const throw()
72 static void sci_throw(
const Exception& exc);
73 static bool alwaysFalse();
85 #define SCI_THROW(exc) do {SCIRun::Exception::sci_throw(exc);throw exc;} while(SCIRun::Exception::alwaysFalse())
87 #define SCI_THROW(exc) BOOST_THROW_EXCEPTION(exc)
const char * stackTrace() const
Definition: Exception.h:63
#define SCISHARE
Definition: share.h:39
#define NOEXCEPT
Definition: Exception.h:52
std::string getStackTrace(void *context)
Definition: Exception.cc:195
const char * what() const
Definition: Exception.h:67
Definition: Exception.h:56
const char * stacktrace_
Definition: Exception.h:75