Update mussa to build on ubuntu 10.04 with qt 4.6.2 +boost 1.40.0.1
[mussa.git] / mussa_exceptions.hpp
index 9adb5299f58dee677f2633f03488e163e69f91fb..e85b2d98687e5a50304b09cc654c2f8349f1b0f9 100644 (file)
@@ -31,6 +31,13 @@ public:
     mussa_error(msg) {};
 };
 
+//! error doing a key lookup in the annotations class
+class annotations_key_error : public mussa_error {
+public:
+  explicit annotations_key_error(const std::string& msg) : 
+    mussa_error(msg) {};
+};
+
 //! Error loading sequence
 class sequence_load_error : public mussa_load_error
 {
@@ -55,6 +62,37 @@ public:
     sequence_load_error(msg) {};
 };
 
+// Empty unrecognized characters
+class sequence_invalid_load_error : public sequence_load_error 
+{
+public:
+  explicit sequence_invalid_load_error(const std::string& msg) :
+    sequence_load_error(msg) {};
+};
+
+//! Incomprehensible comparison
+class sequence_invalid_comparison : public mussa_error
+{
+public:
+  explicit sequence_invalid_comparison(const std::string& msg) :
+    mussa_error(msg) {};
+};
+
+//! Invalid strand identifier
+class sequence_invalid_strand : public mussa_error
+{
+public:
+  explicit sequence_invalid_strand(const std::string& msg) :
+    mussa_error(msg) {};
+};
+
+//! Error loading sequence annotation
+class annotation_load_error : public sequence_load_error
+{
+public:
+  explicit annotation_load_error(const std::string& msg) :
+    sequence_load_error(msg) {};
+};
 
 //! failure running analysis
 class mussa_analysis_error : public mussa_error
@@ -64,12 +102,31 @@ public:
     mussa_error(msg) {};
 };
 
+//! failure running seqcomp
+class seqcomp_error : public mussa_analysis_error
+{
+public:
+  explicit seqcomp_error(const std::string& msg) : 
+    mussa_analysis_error(msg) {};
+};
+
+//! couldn't normalize a motif
+/*
 class motif_normalize_error : public mussa_error
 {
 public:
   explicit motif_normalize_error(const std::string& msg) : 
     mussa_error(msg) {};
 };
+*/
+
+//! something went wrong loading a motif  
+class motif_load_error : public mussa_load_error
+{
+public:
+  explicit motif_load_error(const std::string& msg) :
+    mussa_load_error(msg) {};
+};
 
 //! ConservedPath::nextTo had two paths that weren't the same size
 class conserved_path_size_mismatch : public mussa_error