]> git.donarmstrong.com Git - mothur.git/blob - collectcommand.h
changes while testing
[mothur.git] / collectcommand.h
1 #ifndef COLLECTCOMMAND_H
2 #define COLLECTCOMMAND_H
3 /*
4  *  collectcommand.h
5  *  Dotur
6  *
7  *  Created by Sarah Westcott on 1/2/09.
8  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
9  *
10  */
11
12 #include "command.hpp"
13 #include "ordervector.hpp"
14 #include "inputdata.h"
15 #include "collect.h"
16 #include "display.h"
17 #include "validcalculator.h"
18
19 /*The collect() command:
20         The collect command generates a collector's curve from the given file.  
21         The collect command outputs a file for each estimator you choose to use.  The collect command parameters are label, freq, single, abund.  
22         No parameters are required.  
23         The collect command should be in the following format: collect(label=yourLabel, freq=yourFreq, single=yourEstimators, abund=yourAbund). 
24         example collect(label=unique-.01-.03, freq=10, single=collect-chao-ace-jack).  
25         The default values for  freq is 100, for abund is 10, and single are collect-chao-ace-jack-bootstrap-shannon-npshannon-simpson.  
26         The valid single estimators are: collect-chao-ace-jack-bootstrap-shannon-npshannon-simpson. 
27         The label parameter is used to analyze specific labels in your input. */
28
29
30 class CollectCommand : public Command {
31         
32 public:
33         CollectCommand(string); 
34         CollectCommand();
35         ~CollectCommand(){}
36         
37         vector<string> setParameters();
38         string getCommandName()                 { return "collect.single";                      }
39         string getCommandCategory()             { return "OTU-Based Approaches";        }
40         string getCitation() { return "Schloss PD, Handelsman J (2006). Introducing SONS, A tool that compares the membership of microbial communities. Appl Environ Microbiol 72: 6773-9. \nhttp://www.mothur.org/wiki/Collect.single"; }
41         
42         string getHelpString(); 
43     string getOutputPattern(string);    
44         string getDescription()         { return "generates collector's curves using calculators, that describe the richness, diversity, and other features of individual samples"; }
45         
46         int execute(); 
47         void help() { m->mothurOut(getHelpString()); }  
48         
49         
50 private:
51         OrderVector* order;
52         InputData* input;
53         Collect* cCurve;
54         vector<Display*> cDisplays;
55         int abund, size;
56         float freq;
57         vector<string> outputNames;
58
59         bool abort, allLines;
60         set<string> labels; //holds labels to be used
61         string label, calc, outputDir, sharedfile, listfile, rabundfile, sabundfile, format, inputfile;
62         vector<string>  Estimators;
63         vector<string> inputFileNames;
64         vector<string> groups;
65         
66         vector<string> parseSharedFile(string);
67
68
69 };
70
71 #endif