#define _MUSSA_EXCEPTIONS_H_
#include <stdexcept>
+//! base mussa exception
+class mussa_error : public std::runtime_error
+{
+public:
+ explicit mussa_error(const std::string& msg): std::runtime_error(msg) {};
+};
+
//! Error processing commandline arguments
-class cmdline_error : public std::runtime_error
+class cmdline_error : public mussa_error
{
public:
- explicit cmdline_error(const std::string& msg): std::runtime_error(msg) {};
+ explicit cmdline_error(const std::string& msg): mussa_error(msg) {};
};
//! Error loading information
-class mussa_load_error : public std::runtime_error
+class mussa_load_error : public mussa_error
{
public:
explicit mussa_load_error(const std::string& msg) :
- std::runtime_error(msg) {};
+ mussa_error(msg) {};
};
//! failure running analysis
-class mussa_analysis_error : public std::runtime_error
+class mussa_analysis_error : public mussa_error
{
public:
explicit mussa_analysis_error(const std::string& msg) :
- std::runtime_error(msg) {};
+ mussa_error(msg) {};
};
-class motif_normalize_error : public std::runtime_error
+class motif_normalize_error : public mussa_error
{
public:
explicit motif_normalize_error(const std::string& msg) :
- std::runtime_error(msg) {};
+ mussa_error(msg) {};
};
#endif