X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=mgclustercommand.h;h=3865bb20811a0ac29e29e0fec02392268ea0a657;hp=9aa86d4441e5c5f1202a6d552fef31162337c00d;hb=d1c97b8c04bb75faca1e76ffad60b37a4d789d3d;hpb=c82900be3ceed3d9bc491bdc98b1819ef85c1af7 diff --git a/mgclustercommand.h b/mgclustercommand.h index 9aa86d4..3865bb2 100644 --- a/mgclustercommand.h +++ b/mgclustercommand.h @@ -12,11 +12,12 @@ #include "command.hpp" #include "readblast.h" -#include "sparsematrix.hpp" #include "nameassignment.hpp" -#include "globaldata.hpp" #include "cluster.hpp" #include "hcluster.h" +#include "rabundvector.hpp" +#include "sabundvector.hpp" +#include "counttable.h" /**********************************************************************/ @@ -24,32 +25,46 @@ class MGClusterCommand : public Command { public: MGClusterCommand(string); - ~MGClusterCommand(); - int execute(); - void help(); + MGClusterCommand(); + ~MGClusterCommand(){} + + vector setParameters(); + string getCommandName() { return "mgcluster"; } + string getCommandCategory() { return "Clustering"; } + + string getHelpString(); + string getOutputPattern(string); + string getCitation() { return "Schloss PD, Handelsman J (2008). A statistical toolbox for metagenomics. BMC Bioinformatics 9: 34. \nhttp://www.mothur.org/wiki/Mgcluster"; } + string getDescription() { return "cluster your sequences into OTUs using a blast file"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } + private: - GlobalData* globaldata; ReadBlast* read; NameAssignment* nameMap; Cluster* cluster; HCluster* hcluster; ListVector* list; + CountTable* ct; ListVector oldList; - vector overlapMatrix; - DistNode next; - + RAbundVector rav; + vector overlapMatrix; + vector outputNames; - string blastfile, method, namefile, overlapFile, distFile; + string blastfile, method, namefile, countfile, overlapFile, distFile, outputDir; ofstream sabundFile, rabundFile, listFile; - float cutoff, penalty; + double cutoff; + float penalty, adjust; int precision, length, precisionLength; - bool abort, minWanted, hclusterWanted, exitedBreak, merge; + bool abort, minWanted, hclusterWanted, merge, hard, cutoffSet; void printData(ListVector*); ListVector* mergeOPFs(map, float); void sortHclusterFiles(string, string); - vector getSeqs(ifstream&); + vector getSeqs(ifstream&); + void createRabund(CountTable*&, ListVector*&, RAbundVector*&); };