]> git.donarmstrong.com Git - mothur.git/blob - trimseqscommand.h
03ee1f5745222a1e3fb154c22b4099d26e77d029
[mothur.git] / trimseqscommand.h
1 #ifndef TRIMSEQSCOMMAND_H
2 #define TRIMSEQSCOMMAND_H
3
4 /*
5  *  trimseqscommand.h
6  *  Mothur
7  *
8  *  Created by Pat Schloss on 6/6/09.
9  *  Copyright 2009 Patrick D. Schloss. All rights reserved.
10  *
11  */
12
13 #include "mothur.h"
14 #include "command.hpp"
15 #include "globaldata.hpp"
16 #include "sequence.hpp"
17
18 class TrimSeqsCommand : public Command {
19 public:
20         TrimSeqsCommand(string);
21         ~TrimSeqsCommand();
22         int execute();
23         void help();
24         
25 private:
26         void getOligos();
27         bool stripBarcode(Sequence&, string&);
28         bool stripForward(Sequence&);
29         bool stripReverse(Sequence&);
30         bool cullLength(Sequence&);
31         bool cullHomoP(Sequence&);
32         bool cullAmbigs(Sequence&);
33         
34         GlobalData* globaldata;
35         OptionParser* parser;
36         map<string, string> parameters;
37         map<string, string>::iterator it;
38         bool abort;
39         string fastafile;
40         bool oligos, flip;
41         int numFPrimers, numRPrimers, maxAmbig, maxHomoP, minLength, maxLength;
42         vector<string> forPrimer, revPrimer;
43         map<string, string> barcodes;
44 };
45
46 #endif