]> git.donarmstrong.com Git - mothur.git/blob - indicatorcommand.h
added design parameter to the indicator command
[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 "globaldata.hpp"
17 #include "sharedrabundvector.h"
18 #include "sharedrabundfloatvector.h"
19 #include "inputdata.h"
20
21 class IndicatorCommand : public Command {
22 public:
23         IndicatorCommand(string);
24         IndicatorCommand();
25         ~IndicatorCommand();
26         vector<string> getRequiredParameters();
27         vector<string> getValidParameters();
28         vector<string> getRequiredFiles();
29         map<string, vector<string> > getOutputFiles() { return outputTypes; }
30         int execute();
31         void help();
32         
33 private:
34         GlobalData* globaldata;
35         ReadTree* read;
36         TreeMap* treeMap;
37         GroupMap* designMap;
38         string treefile, sharedfile, relabundfile, groups, label, inputFileName, outputDir, designfile;
39         bool abort;
40         vector<string> outputNames, Groups;
41         map<string, vector<string> > outputTypes;
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