]> git.donarmstrong.com Git - mothur.git/blob - binsequencecommand.h
Revert to previous commit
[mothur.git] / binsequencecommand.h
1 #ifndef BINSEQCOMMAND_H
2 #define BINSEQCOMMAND_H
3 /*
4  *  binsequencecommand.h
5  *  Mothur
6  *
7  *  Created by Sarah Westcott on 4/3/09.
8  *  Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
9  *
10  */
11
12 /* The bin.seqs command outputs a .fasta file for each distance you specify appending the OTU number to each name. */
13
14 #include "command.hpp"
15 #include "inputdata.h"
16 #include "listvector.hpp"
17 #include "fastamap.h"
18 #include "groupmap.h"
19
20 class BinSeqCommand : public Command {
21         
22 public:
23         BinSeqCommand(string);  
24         BinSeqCommand();
25         ~BinSeqCommand();
26         
27         vector<string> setParameters();
28         string getCommandName()                 { return "bin.seqs";                    }
29         string getCommandCategory()             { return "Sequence Processing"; }
30         string getHelpString(); 
31         string getCitation() { return "http://www.mothur.org/wiki/Bin.seqs"; }
32         string getDescription()         { return "maps sequences to otus"; }
33         
34         int execute(); 
35         void help() { m->mothurOut(getHelpString()); }          
36         
37 private:
38         
39         ListVector* list;
40         InputData* input;
41         FastaMap* fasta;
42         GroupMap* groupMap;
43         bool abort, allLines;
44         set<string> labels; //holds labels to be used
45         string filename, fastafile, listfile, namesfile, groupfile, label, outputDir;
46         ofstream out;
47         ifstream in, inNames;
48         vector<string> outputNames;
49         
50         void readNamesFile();
51         int process(ListVector*);
52 };
53
54 #endif