]> git.donarmstrong.com Git - mothur.git/blobdiff - getoturepcommand.h
merged pat's trim seqs edits with sarah's major overhaul of global data; also added...
[mothur.git] / getoturepcommand.h
index d0343daa3cb647957e694cfa101ec5406edf3304..37c4194a8c16e0664d7cb834b4777c054b61268d 100644 (file)
@@ -8,15 +8,17 @@
  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
  *
  */
+ /* 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 "sparsematrix.hpp"
 #include "listvector.hpp"
 #include "inputdata.h"
-#include "readmatrix.hpp"
+#include "readotu.h"
 #include "fastamap.h"
-
+#include "groupmap.h"
 
 class GlobalData;
 
@@ -25,30 +27,32 @@ typedef list<PCell>::iterator MatData;
 class GetOTURepCommand : public Command {
        
 public:
-       GetOTURepCommand();     
+       GetOTURepCommand(string);       
        ~GetOTURepCommand();
-       int execute();  
+       int execute();
+       void help();    
        
 private:
        GlobalData* globaldata;
        SparseMatrix* matrix;
        ListVector* list;
-       ListVector* listOfNames;
-       ReadMatrix* read;
+       ReadOTUFile* read;
        InputData* input;
        FastaMap* fasta;
-       string filename, fastafile, namesfile;
+       GroupMap* groupMap;
+       string filename, fastafile, listfile, namesfile, groupfile, line, label;
        ofstream out;
        ifstream in, inNames;
+       bool groupError;
        
-        
+       bool abort, allLines;
+       set<int> lines; //hold lines to be used
+       set<string> labels; //holds labels to be used
        map<string, int> nameToIndex;  //maps sequence name to index in sparsematrix
-       map<int, string>::iterator it;
-       map<int, string>::iterator it2;
-       map<string, int>::iterator it3;
        
        void readNamesFile();
-       string FindRep(int); // returns name of "representative" sequence of given bin.
+       int process(ListVector*);
+       string FindRep(int, string&, ListVector*); // returns name of "representative" sequence of given bin. //and fill a string containing the groups in that bin if a groupfile is given
 
 };