X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=getoturepcommand.h;h=41680008c7dc27b28eb7e9a50ea8e9e621bfeb72;hb=4c5e7a20a03ddc6feb49ff9d21fcb4c79bc5508d;hp=7890d93db045be399a2854d5d17b314fb748358d;hpb=74844a60d80c6dd06e3fb02ee9b928424f9019b0;p=mothur.git diff --git a/getoturepcommand.h b/getoturepcommand.h index 7890d93..4168000 100644 --- a/getoturepcommand.h +++ b/getoturepcommand.h @@ -12,10 +12,8 @@ /* The get.oturep command outputs a .fastarep file for each distance you specify, selecting one OTU representative for each bin. */ #include "command.hpp" -#include "globaldata.hpp" #include "listvector.hpp" #include "inputdata.h" -#include "readotu.h" #include "fastamap.h" #include "groupmap.h" #include "readmatrix.hpp" @@ -39,27 +37,38 @@ class GetOTURepCommand : public Command { public: GetOTURepCommand(string); - ~GetOTURepCommand(); - int execute(); - void help(); + GetOTURepCommand(); + ~GetOTURepCommand(){} + + vector setParameters(); + string getCommandName() { return "get.oturep"; } + string getCommandCategory() { return "OTU-Based Approaches"; } + string getHelpString(); + string getCitation() { return "http://www.mothur.org/wiki/Get.oturep"; } + string getDescription() { return "gets a representative sequence for each OTU"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } + + private: - GlobalData* globaldata; ListVector* list; - ReadOTUFile* read; InputData* input; FastaMap* fasta; GroupMap* groupMap; ReadMatrix* readMatrix; FormatMatrix* formatMatrix; NameAssignment* nameMap; - string filename, fastafile, listfile, namefile, groupfile, label, sorted, phylipfile, columnfile, distFile, format, outputDir; + string filename, fastafile, listfile, namefile, groupfile, label, sorted, phylipfile, columnfile, distFile, format, outputDir, groups; ofstream out; ifstream in, inNames, inRow; - bool abort, allLines, groupError, large; + bool abort, allLines, groupError, large, weighted; set labels; //holds labels to be used map nameToIndex; //maps sequence name to index in sparsematrix - vector outputNames; + map nameFileMap; + vector outputNames, Groups; + map outputNameFiles; float cutoff; int precision; vector seqVec; // contains maps with sequence index and distance @@ -67,12 +76,12 @@ private: vector rowPositions; void readNamesFile(); + void readNamesFile(bool); int process(ListVector*); SeqMap getMap(int); - string findRep(int, string&, ListVector*, int&); // returns the name of the "representative" sequence of given bin, - // fills a string containing the groups in that bin if a groupfile is given, - // and returns the number of sequences in the given bin - + string findRep(vector); // returns the name of the "representative" sequence of given bin or subset of a bin, for groups + int processNames(string, string); + int processFastaNames(string, string); }; #endif