]> git.donarmstrong.com Git - mothur.git/blobdiff - mothur.h
added modify names parameter to set.dir
[mothur.git] / mothur.h
index 57b409e51605df2d0dbab805e3d8b1b7060e7b3e..98b34c31c58c88b614412be4e9ba6874ec1cbe36 100644 (file)
--- a/mothur.h
+++ b/mothur.h
@@ -54,7 +54,7 @@
 #endif
 /***********************************************************************/
 
-#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
        #include <sys/wait.h>
        #include <sys/time.h>
        #include <sys/resource.h>
@@ -88,6 +88,7 @@ using namespace std;
 
 
 typedef unsigned long ull;
+typedef unsigned short intDist;
 
 struct IntNode {
        int lvalue;
@@ -119,7 +120,13 @@ struct diffPair {
                reverseProb = rp;
        }
 };
-
+/***********************************************************************/
+struct PDistCell{
+       ull index;
+       float dist;
+       PDistCell() :  index(0), dist(0) {};
+       PDistCell(ull c, float d) :  index(c), dist(d) {}
+};
 /************************************************************/
 struct clusterNode {
        int numSeq;
@@ -131,9 +138,9 @@ struct clusterNode {
 struct seqDist {
        int seq1;
        int seq2;
-       float dist;
+       double dist;
        seqDist() {}
-       seqDist(int s1, int s2, float d) : seq1(s1), seq2(s2), dist(d) {}
+       seqDist(int s1, int s2, double d) : seq1(s1), seq2(s2), dist(d) {}
        ~seqDist() {}
 };
 /************************************************************/
@@ -158,21 +165,26 @@ struct spearmanRank {
        
        spearmanRank(string n, float s) : name(n), score(s) {}
 };
+//***********************************************************************
+inline bool compareIndexes(PDistCell left, PDistCell right){
+       return (left.index > right.index);      
+}
 //********************************************************************************************************************
-//sorts highest to lowest
 inline bool compareSpearman(spearmanRank left, spearmanRank right){
-       return (left.score > right.score);      
+       return (left.score < right.score);      
 } 
 //********************************************************************************************************************
 //sorts highest to lowest
 inline bool compareSeqPriorityNodes(seqPriorityNode left, seqPriorityNode right){
-       return (left.numIdentical > right.numIdentical);        
-} 
-//********************************************************************************************************************
-//sorts lowest to highest
-inline bool compareSpearmanReverse(spearmanRank left, spearmanRank right){
-       return (left.score < right.score);      
+       if (left.numIdentical > right.numIdentical) {
+        return true;
+    }else if (left.numIdentical == right.numIdentical) {
+        if (left.seq > right.seq) { return true; }
+        else { return false; }
+    }
+    return false;      
 } 
 /************************************************************/
 //sorts lowest to highest
 inline bool compareDistLinePairs(distlinePair left, distlinePair right){