]> git.donarmstrong.com Git - mothur.git/blob - classifytreecommand.h
major change to the tree class to use the count table class instead of tree map....
[mothur.git] / classifytreecommand.h
1 #ifndef Mothur_classifytreecommand_h
2 #define Mothur_classifytreecommand_h
3
4 //
5 //  classifytreecommand.h
6 //  Mothur
7 //
8 //  Created by Sarah Westcott on 2/20/12.
9 //  Copyright (c) 2012 Schloss Lab. All rights reserved.
10 //
11
12 #include "command.hpp"
13 #include "readtree.h"
14 #include "treemap.h"
15 #include "counttable.h"
16
17 class ClassifyTreeCommand : public Command {
18 public:
19         ClassifyTreeCommand(string);
20         ClassifyTreeCommand();
21         ~ClassifyTreeCommand(){}
22         
23         vector<string> setParameters();
24         string getCommandName()                 { return "classify.tree";                               }
25         string getCommandCategory()             { return "Phylotype Analysis";          }
26         string getOutputFileNameTag(string, string);
27         string getHelpString(); 
28         string getCitation() { return "http://www.mothur.org/wiki/Classify.tree"; }
29         string getDescription()         { return "Find the consensus taxonomy for the descendant of each tree node"; }
30     
31         int execute();
32         void help() { m->mothurOut(getHelpString()); }  
33         
34 private:
35         string treefile, taxonomyfile, groupfile, namefile, countfile, outputDir;
36         bool abort;
37         vector<string> outputNames;
38     int numUniquesInName, cutoff;
39     map<string, string> nameMap;
40     map<string, int> nameCount;
41     map<string, string> taxMap;
42     CountTable* ct;
43         
44         int getClassifications(Tree*&);
45         map<string, set<string> > getDescendantList(Tree*&, int, map<int, map<string, set<string> > >);
46     string getTaxonomy(set<string>, int&);
47         
48 };
49
50
51
52 #endif