]> git.donarmstrong.com Git - mothur.git/blob - clusterdoturcommand.h
changing command name classify.shared to classifyrf.shared
[mothur.git] / clusterdoturcommand.h
1 #ifndef CLUSTERDOTURCOMMAND_H
2 #define CLUSTERDOTURCOMMAND_H
3
4 /*
5  *  clusterdoturcommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 10/27/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13 #include "command.hpp"
14 #include "nameassignment.hpp"
15 #include "rabundvector.hpp"
16 #include "sabundvector.hpp"
17 #include "listvector.hpp"
18
19
20 class ClusterDoturCommand : public Command {
21         
22 public:
23         ClusterDoturCommand(string);
24         ClusterDoturCommand();
25         ~ClusterDoturCommand(){}
26         
27         vector<string> setParameters();
28         string getCommandName()                 { return "cluster.classic";             }
29         string getCommandCategory()             { return "Clustering";                  }
30     
31         string getHelpString(); 
32     string getOutputPattern(string);            
33         string getCitation() { return "Schloss PD, Westcott SL (2011). Assessing and improving methods used in OTU-based approaches for 16S rRNA gene sequence analysis. Appl Environ Microbiol 77:3219.\nSchloss PD, Handelsman J (2005). Introducing DOTUR, a computer program for defining operational taxonomic units and estimating species richness. Appl Environ Microbiol 71: 1501-6.\nhttp://www.mothur.org/wiki/Cluster.classic\n";}
34         string getDescription()         { return "cluster your sequences into OTUs using DOTUR’s method"; }
35         
36         int execute(); 
37         void help() { m->mothurOut(getHelpString()); }  
38         
39 private:
40         bool abort, hard, sim;
41         string method, fileroot, tag, outputDir, phylipfile, namefile, countfile;
42         double cutoff;
43         int precision, length;
44         ofstream sabundFile, rabundFile, listFile;
45         NameAssignment* nameMap;
46         ListVector* list;
47         RAbundVector* rabund;
48         RAbundVector oldRAbund;
49         ListVector oldList;
50         
51         void printData(string label);
52         vector<string> outputNames;
53 };
54
55 #endif
56