]> git.donarmstrong.com Git - mothur.git/blob - libshuffcommand.h
cleaned up code2
[mothur.git] / libshuffcommand.h
1 #ifndef LIBSHUFFCOMMAND_H
2 #define LIBSHUFFCOMMAND_H
3
4 /*
5  *  libshuffcommand.h
6  *  Mothur
7  *
8  *  Created by Sarah Westcott on 3/9/09.
9  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
10  *
11  */
12
13 #include "command.hpp"
14 #include "fullmatrix.h"
15 #include "libshuff.h"
16 #include "groupmap.h"
17
18
19 class LibShuffCommand : public Command {
20         
21 public:
22         LibShuffCommand(string);
23         LibShuffCommand();      
24         ~LibShuffCommand(){};
25         
26         vector<string> setParameters();
27         string getCommandName()                 { return "libshuff";                            }
28         string getCommandCategory()             { return "Hypothesis Testing";          }
29         string getOutputFileNameTag(string, string);
30         string getHelpString(); 
31         string getCitation() { return "Singleton DR, Furlong MA, Rathbun SL, Whitman WB (2001). Quantitative comparisons of 16S rRNA gene sequence libraries from environmental samples. Appl Environ Microbiol 67: 4374-6. \nSchloss PD, Larget BR, Handelsman J (2004). Integration of microbial ecology and statistics: a test to compare gene libraries. Appl Environ Microbiol 70: 5485-92. \nhttp://www.mothur.org/wiki/Libshuff"; }
32         string getDescription()         { return "a generic test that describes whether two or more communities have the same structure using the Cramer-von Mises test statistic"; }
33
34         int execute();
35         void help() { m->mothurOut(getHelpString()); }  
36         
37 private:
38         vector<string> groupNames;
39         
40         void setGroups();
41         int printCoverageFile();
42         int printSummaryFile();
43         
44         GroupMap* groupMap;
45         FullMatrix* matrix;
46         Libshuff* form;
47         float cutOff, step;
48         int numGroups, numComp, iters;
49         string coverageFile, summaryFile, phylipfile, groupfile;
50         vector<vector<int> > pValueCounts;
51         vector<vector<double> > savedDXYValues;
52         vector<vector<vector<double> > > savedMinValues;
53
54         bool abort, sim;
55         string outputFile, groups, userform, savegroups, outputDir;
56         vector<string> Groups, outputNames; //holds groups to be used
57 };
58
59 #endif