18 #ifndef ESYSEXCEPTION_H
19 #define ESYSEXCEPTION_H
99 const std::
string &
toString() const;
118 const std::
string&
reason() const;
127 void setReason(const std::
string &new_reason);
138 virtual const
char*
what() const
THROW(NO_ARG);
175 std::ostream &operator<<(std::ostream &output,
EsysException &inException);
void updateMessage()
update m_exceptionMessage after a reason update.
Definition: EsysException.h:202
const std::string & reason() const
Return a reference to the string that contains the exception reason.
Definition: EsysException.h:180
A base class for exception classes used within Esys system.
Definition: EsysException.h:31
std::exception Parent
Definition: EsysException.h:36
#define NO_ARG
Definition: esysUtils/src/system_dep.h:65
static const std::string exceptionNameValue
Definition: EsysException.h:162
std::string m_reason
Definition: EsysException.h:152
virtual ~EsysException()
Destructor.
Definition: EsysException.cpp:70
#define ESYSUTILS_DLL_API
Definition: esysUtils/src/system_dep.h:40
const std::string & toString() const
Return the exception message in the form <Exception Name>: <Exception Message>.
Definition: EsysException.h:186
virtual const char * what() const
Return a description of the exception in the same format as the toString method.
Definition: EsysException.h:197
#define THROW(ARG)
Definition: esysUtils/src/system_dep.h:62
EsysException()
Default Constructor. Creates an exception with no message.
Definition: EsysException.cpp:29
virtual const std::string & exceptionName() const
Return the name of the exception. This is expected to be overloaded in derived classes with the deriv...
Definition: EsysException.cpp:73
void setReason(const std::string &new_reason)
set the string for the reason for the exception. This allows ousiders to modify m_reason, but the practice is discouraged. If string insertions are required, use string methods.
Definition: EsysException.h:191
std::string m_exceptionMessage
Definition: EsysException.h:156