]> git.donarmstrong.com Git - mothur.git/blob - getlineagecommand.h
Merge remote-tracking branch 'origin'
[mothur.git] / getlineagecommand.h
1 #ifndef GETLINEAGECOMMAND_H
2 #define GETLINEAGECOMMAND_H
3
4 /*
5  *  getlineagecommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 9/24/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12  
13 #include "command.hpp"
14
15 class GetLineageCommand : public Command {
16         
17         public:
18         
19                 GetLineageCommand(string);
20                 GetLineageCommand();
21                 ~GetLineageCommand(){}
22         
23                 vector<string> setParameters();
24                 string getCommandName()                 { return "get.lineage";                         }
25                 string getCommandCategory()             { return "Phylotype Analysis";          }
26                 
27         string getHelpString(); 
28     string getOutputPattern(string);    
29                 string getCitation() { return "http://www.mothur.org/wiki/Get.lineage"; }
30                 string getDescription()         { return "gets sequences from a list, fasta, name, group, alignreport or taxonomy file from a given taxonomy or set of taxonomies"; }
31
32         
33                 int execute(); 
34                 void help() { m->mothurOut(getHelpString()); }  
35         
36         
37         private:
38                 set<string> names;
39                 vector<string> outputNames, listOfTaxons;
40                 string fastafile, namefile, groupfile, alignfile, countfile, listfile, taxfile, outputDir, taxons;
41                 bool abort, dups;
42                 
43                 int readFasta();
44                 int readName();
45         int readCount();
46                 int readGroup();
47                 int readAlign();
48                 int readList();
49                 int readTax();  
50                 vector< map<string, float> > getTaxons(string);
51 };
52
53 #endif
54