]> git.donarmstrong.com Git - mothur.git/blob - indicatorcommand.h
9c8c6d437470588be099c656d89942ab8d78cc61
[mothur.git] / indicatorcommand.h
1 #ifndef INDICATORCOMMAND_H
2 #define INDICATORCOMMAND_H
3
4 /*
5  *  indicatorcommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 11/12/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13 #include "command.hpp"
14 #include "readtree.h"
15 #include "treemap.h"
16 #include "sharedrabundvector.h"
17 #include "sharedrabundfloatvector.h"
18 #include "inputdata.h"
19
20 class IndicatorCommand : public Command {
21 public:
22         IndicatorCommand(string);
23         IndicatorCommand();
24         ~IndicatorCommand(){}
25         
26         vector<string> setParameters();
27         string getCommandName()                 { return "indicator";                           }
28         string getCommandCategory()             { return "Hypothesis Testing";          }
29         string getHelpString(); 
30         string getCitation() { return "http://www.mothur.org/wiki/Indicator"; }
31         
32         int execute();
33         void help() { m->mothurOut(getHelpString()); }  
34         
35 private:
36         ReadTree* read;
37         TreeMap* treeMap;
38         GroupMap* designMap;
39         string treefile, sharedfile, relabundfile, groups, label, inputFileName, outputDir, designfile;
40         bool abort;
41         vector<string> outputNames, Groups;
42         vector<SharedRAbundVector*> lookup;
43         vector<SharedRAbundFloatVector*> lookupFloat;
44         
45         int getShared();
46         int getSharedFloat();
47         int GetIndicatorSpecies(Tree*&);
48         set<string> getDescendantList(Tree*&, int, map<int, set<string> >, map<int, set<int> >&);
49         vector<float> getValues(vector< vector<SharedRAbundVector*> >&);
50         vector<float> getValues(vector< vector<SharedRAbundFloatVector*> >&);
51         map<int, float> getDistToRoot(Tree*&);
52         
53 };
54
55
56 #endif
57