Mac binaries
[jabaws.git] / website / archive / binaries / mac / src / muscle / maketree.cpp
diff --git a/website/archive/binaries/mac/src/muscle/maketree.cpp b/website/archive/binaries/mac/src/muscle/maketree.cpp
new file mode 100644 (file)
index 0000000..6411dd1
--- /dev/null
@@ -0,0 +1,38 @@
+#include "muscle.h"\r
+#include "msa.h"\r
+#include "textfile.h"\r
+#include "tree.h"\r
+\r
+void DoMakeTree()\r
+       {\r
+       if (g_pstrInFileName == 0 || g_pstrOutFileName == 0)\r
+               Quit("-maketree requires -in <msa> and -out <treefile>");\r
+\r
+       SetStartTime();\r
+\r
+       SetSeqWeightMethod(g_SeqWeight1);\r
+\r
+       TextFile MSAFile(g_pstrInFileName);\r
+\r
+       MSA msa;\r
+       msa.FromFile(MSAFile);\r
+\r
+       unsigned uSeqCount = msa.GetSeqCount();\r
+       MSA::SetIdCount(uSeqCount);\r
+\r
+// Initialize sequence ids.\r
+// From this point on, ids must somehow propogate from here.\r
+       for (unsigned uSeqIndex = 0; uSeqIndex < uSeqCount; ++uSeqIndex)\r
+               msa.SetSeqId(uSeqIndex, uSeqIndex);\r
+       SetMuscleInputMSA(msa);\r
+\r
+       Progress("%u sequences", uSeqCount);\r
+\r
+       Tree tree;\r
+       TreeFromMSA(msa, tree, g_Cluster2, g_Distance2, g_Root2);\r
+\r
+       TextFile TreeFile(g_pstrOutFileName, true);\r
+       tree.ToFile(TreeFile);\r
+\r
+       Progress("Tree created");\r
+       }\r