#pragma once #include #include class ProtonException : public QException { public: ProtonException(const QString& message) : message(message) {} virtual ~ProtonException() {} void raise() const { throw *this; } ProtonException *clone() const { return new ProtonException(*this); } QString getMessage() const { return message; } private: QString message; };