]> ruin.nu Git - germs.git/blobdiff - src/genealgorithms.h
DOC: more doxygen documentation
[germs.git] / src / genealgorithms.h
index 1d74e7130862188d4ff8e0ad57bf8a656e7d6023..59e8f9caee921c452553829d3b1e66bedf32250b 100644 (file)
 class GeneOrder;
 struct Component;
 
-
+/**
+ * Simple interval struct, holds the indexes + information if the interval is
+ * oriented or not.
+ */
 struct Interval{
        Interval(size_t f,size_t s,bool o = false):first(f),second(s),oriented(o){}
        bool operator==(const Interval& i){
                return first == i.first && second == i.second && oriented == i.oriented;
        }
+       //!The start index for this elementary interval
        size_t first;
+       //!The end interval for this elementary interval
        size_t second;
        bool oriented;
 };
@@ -44,6 +49,8 @@ struct Interval{
 std::pair<int,int> longestSequences(const GeneOrder& go);
 
 /**
+ * Uses the Robinson-Schensted algorithm on the gene order. Gives the longest
+ * increasing and decreasing subsequences.
  */
 std::vector<std::vector<int> > robinsonSchensted(const GeneOrder& go);
 
@@ -68,7 +75,9 @@ std::vector<Component> findComponents(const GeneOrder& go);
 std::vector<Interval> findIntervals(const GeneOrder& go);
 
 /**
- * Creates a list with the intervals at each point.
+ * Creates a list with the intervals at each point. The first and second members
+ * of the returned Intervals are elementary intervals that start, or end, at the
+ * specific point.
  */
 std::vector<Interval> findIntervalsAtPoints(const std::vector<Interval>& intervals);