provide python interpreter for mussa qui via a seperate thread
[mussa.git] / alg / nway_paths.hpp
index 3259116675aed4fff16796fd10d781a51f14073f..8725432a7880f78f95d0777651183fc59b4b4e34 100644 (file)
@@ -14,6 +14,7 @@
 //                         ----------  mussa_nway.hh  -----------
 //                        ----------------------------------------
 #include <QObject>
+#include <QString>
 
 #include <boost/filesystem/path.hpp>
 
@@ -31,9 +32,11 @@ class NwayPaths : public QObject
 
 signals:
   //! emit to indicate how much progress we've made
-  void progress(const std::string& description, int cur, int max);
+  void progress(const QString& description, int cur, int max);
 
 public:
+    typedef std::list<ConservedPath> ConservedPaths;
+    
     NwayPaths();
     NwayPaths(const NwayPaths&);
 
@@ -43,6 +46,8 @@ public:
     void setup_ent(double new_entropy_thres, std::vector<Sequence> some_Seqs);
     //! clear out our path
     void clear();
+    //! get the "soft" threshold (between the hard threshold and window size)
+    int get_soft_threshold() const;
     //! set the score that a match must exceed inorder to be recorded as a path
     void set_soft_threshold(int soft_thres);
     //! return minimum threshold for this analysis
@@ -76,17 +81,17 @@ public:
 
     // The following iterator functions are mostly for the python interface
     // they'll have problems when being called from within a const object
-    std::list<ConservedPath>::iterator pbegin() { return pathz.begin() ; }
-    std::list<ConservedPath>::iterator pend() { return pathz.end() ; }
+    ConservedPaths::iterator pbegin() { return pathz.begin() ; }
+    ConservedPaths::iterator pend() { return pathz.end() ; }
     size_t path_size() const { return refined_pathz.size(); }
-    std::list<ConservedPath>::iterator rpbegin() { return refined_pathz.begin() ; }
-    std::list<ConservedPath>::iterator rpend() { return refined_pathz.end() ; }
+    ConservedPaths::iterator rpbegin() { return refined_pathz.begin() ; }
+    ConservedPaths::iterator rpend() { return refined_pathz.end() ; }
     size_t refined_path_size() const { return refined_pathz.size(); }
 
     // these probably shouldn't be public, but lets start 
     // simple
-    std::list<ConservedPath> pathz;
-    std::list<ConservedPath > refined_pathz;
+    ConservedPaths pathz;
+    ConservedPaths refined_pathz;
 
 protected:
     int threshold;