]> git.donarmstrong.com Git - mothur.git/blob - venncommand.h
Revert to previous commit
[mothur.git] / venncommand.h
1 #ifndef VENNCOMMAND_H
2 #define VENNCOMMAND_H
3 /*
4  *  venncommand.h
5  *  Mothur
6  *
7  *  Created by Sarah Westcott on 3/30/09.
8  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
9  *
10  */
11  
12 #include "command.hpp"
13 #include "inputdata.h"
14 #include "sharedlistvector.h"
15 #include "venn.h"
16 #include "validcalculator.h"
17
18 class VennCommand : public Command {
19
20 public:
21         VennCommand(string);
22         VennCommand();
23         ~VennCommand() {}
24         
25         vector<string> setParameters();
26         string getCommandName()                 { return "venn";                                        }
27         string getCommandCategory()             { return "OTU-Based Approaches";        }
28         string getHelpString(); 
29         string getCitation() { return "http://www.mothur.org/wiki/Venn"; }
30         string getDescription()         { return "generates a Venn diagram from data provided in a shared file"; }
31
32         int execute(); 
33         void help() { m->mothurOut(getHelpString()); }  
34         
35 private:
36         InputData* input;
37         SharedListVector* SharedList;
38         Venn* venn;
39         vector<Calculator*> vennCalculators;    
40         vector<SharedRAbundVector*> lookup;
41         set< set<int> > combosOfFour;
42         SAbundVector* sabund;
43         int abund, fontsize;
44         
45         bool abort, allLines, nseqs, perm;
46         set<string> labels; //holds labels to be used
47         string format, groups, calc, label, outputDir, sharedfile, listfile, inputfile;
48         vector<string> Estimators, Groups, outputNames;
49         
50         set< set<int> > findCombinations(int);
51         int getCombos(set<int>, set< set<int> >&);
52
53
54 };
55
56
57
58 #endif