]> git.donarmstrong.com Git - mothur.git/blob - binsequencecommand.h
changed added group output to indicator command. a few changes to work with the guy
[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 #include "counttable.h"
20
21 class BinSeqCommand : public Command {
22         
23 public:
24         BinSeqCommand(string);  
25         BinSeqCommand();
26         ~BinSeqCommand();
27         
28         vector<string> setParameters();
29         string getCommandName()                 { return "bin.seqs";                    }
30         string getCommandCategory()             { return "Sequence Processing"; }
31         string getOutputFileNameTag(string, string);
32         string getHelpString(); 
33         string getCitation() { return "http://www.mothur.org/wiki/Bin.seqs"; }
34         string getDescription()         { return "maps sequences to otus"; }
35         
36         int execute(); 
37         void help() { m->mothurOut(getHelpString()); }          
38         
39 private:
40         CountTable ct;
41         ListVector* list;
42         InputData* input;
43         FastaMap* fasta;
44         GroupMap* groupMap;
45         bool abort, allLines;
46         set<string> labels; //holds labels to be used
47         string filename, fastafile, listfile, namesfile, groupfile, countfile, label, outputDir;
48         ofstream out;
49         ifstream in, inNames;
50         vector<string> outputNames;
51         
52         void readNamesFile();
53         int process(ListVector*);
54 };
55
56 #endif