]> git.donarmstrong.com Git - mothur.git/blob - consensusseqscommand.h
555b62c63f263526917a388a6e03b62359cc1db3
[mothur.git] / consensusseqscommand.h
1 #ifndef CONSENSUSSEQSCOMMAND_H
2 #define CONSENSUSSEQSCOMMAND_H
3
4 /*
5  *  consensusseqscommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 11/23/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13
14 #include "command.hpp"
15 #include "listvector.hpp"
16
17 class ConsensusSeqsCommand : public Command {
18 public:
19         ConsensusSeqsCommand(string);
20         ConsensusSeqsCommand();
21         ~ConsensusSeqsCommand();
22         vector<string> getRequiredParameters();
23         vector<string> getValidParameters();
24         vector<string> getRequiredFiles();
25         map<string, vector<string> > getOutputFiles() { return outputTypes; }
26         int execute();
27         void help();
28         
29 private:
30         
31         bool abort, allLines;
32         string fastafile, listfile, namefile, label, outputDir;
33         set<string> labels;
34         vector<string> outputNames;
35         map<string, vector<string> > outputTypes;
36         map<string, string> fastaMap;
37         map<string, string> nameMap;
38         map<string, string> nameFileMap;
39         
40         int readFasta();
41         int readNames();
42         int processList(ListVector*&);
43         string getConsSeq(string, ofstream&, string&, int);
44         char getBase(vector<int>);
45 };
46
47 #endif
48
49
50
51