I wish I'd stop cutting-n-pasting the name of the class from the .cpp
[mussa.git] / alg / mussa.hpp
index 83e08cba7f7e42e8a32c9d092d2a516020d6a700..6a0ca4eeca4743df44d7af040233d788c40ed147 100644 (file)
@@ -59,10 +59,18 @@ public:
     
     //! save all of mussa
     void save(boost::filesystem::path save_path="");
+    //! save all of mussa
+    void save(const std::string& save_path) {
+      save(boost::filesystem::path(save_path));
+    }
     //! save the nway comparison
     void save_muway(boost::filesystem::path save_path);
     //! load a saved analysis directory
     void load(boost::filesystem::path ana_path);
+    //! load a saved analysis 
+    void load(const std::string& ana_path) { 
+       load(boost::filesystem::path(ana_path)); 
+    }
     // ! return path to the where the analysis is stored
     boost::filesystem::path get_analysis_path() const;
     //! set analysis path
@@ -72,8 +80,16 @@ public:
     void clear();
 
     //! set parameters from a file - 'mupa' ~ mussa parameters
-    void load_mupa_file(std::string para_file_path) { load_mupa_file(boost::filesystem::path(para_file_path));}
+    void load_mupa_file(const std::string& para_file_path) {
+      load_mupa_file(boost::filesystem::path(para_file_path));
+    }
     void load_mupa_file(boost::filesystem::path para_file_path);
+    //! load mussa parameters from a stream, specifing output location
+    void load_mupa_stream(
+           std::istream & para_file, 
+           boost::filesystem::path& file_path_base
+         );
+    
 
     // set parameters individually (eg from user input into gui classes)
     //! set analysis name
@@ -105,6 +121,16 @@ public:
     //! must be in range [threshold..window size]
     void set_soft_threshold(int sft_thres);
     int get_soft_threshold() const;
+
+    //! should we append the window size to the analysis name
+    void set_append_window(bool v);
+    //! should we append the window size to the analysis name
+    bool get_append_window();
+
+    //! should we append the threshold to the analysis name
+    void set_append_threshold(bool v);
+    //! should we append the threshold to the analysis name
+    bool get_append_threshold();
  
     void set_analysis_mode(enum analysis_modes new_ana_mode);
     enum analysis_modes get_analysis_mode() const;
@@ -134,7 +160,7 @@ public:
      */
     void analyze();
     /*! Run the nway filtering algorithm, 
-     *  this might be used when changing the soft threshhold?
+     *  automatically called when the soft threshhold has changed?
      */
     void nway();