Update mussa to build on ubuntu 10.04 with qt 4.6.2 +boost 1.40.0.1
[mussa.git] / alg / conserved_path.hpp
index 05d23c91f5205c171156ed27b2328509f1092aeb..7ff26613ab23ae2ea5ce16998348a022dfaaeccc 100644 (file)
@@ -29,17 +29,19 @@ struct ConservedPath
 
   friend bool operator==(const ConservedPath& a, const ConservedPath &b);
   friend bool operator!=(const ConservedPath& a, const ConservedPath &b);
+  friend bool operator<(const ConservedPath& a, const ConservedPath &b);
   friend std::ostream& operator<<(std::ostream&, const ConservedPath&);
 
   //! return true if all elements of the path are "next to" our current path.
   /*! Next to is defined as being window index + 1
    *  that definition may not properly track reverse compliment
+   *  \throws conserved_path_size_mismatch
    */
   bool nextTo(const ConservedPath& next) const;
   //! indicate which elements of the path are reversed
   std::vector<bool> reverseComplimented() const;
   //! return the list of indexes normalized (to the left)
-  std::vector<path_element> normalizedIndexes() const;
+  path_type normalizedIndexes() const;
   //! extend our current path
   //! (aka increment our window size  by growth)
   ConservedPath& extend(int growth=1);
@@ -49,6 +51,6 @@ struct ConservedPath
   //! either number of conserved bases or average entropy
   double score;
   //! offsets into each of our sequences representing the start of our window
-  std::vector<path_element> track_indexes;
+  path_type track_indexes;
 };
 #endif