]> git.donarmstrong.com Git - mothur.git/blob - trimseqscommand.h
800ec3d047fac0221edde0dec47fb130058519ad
[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();
21         ~TrimSeqsCommand();
22         int execute();
23         
24 private:
25         void getOligos();
26         bool stripBarcode(Sequence&, string&);
27         bool stripForward(Sequence&);
28         bool stripReverse(Sequence&);
29         bool cullLength(Sequence&);
30         bool cullHomoP(Sequence&);
31         bool cullAmbigs(Sequence&);
32         
33         GlobalData* globaldata;
34
35         bool oligos, flip;
36         int numFPrimers, numRPrimers, maxAmbig, maxHomoP, minLength, maxLength;
37         vector<string> forPrimer, revPrimer;
38         map<string, string> barcodes;
39 };
40
41 #endif