]> git.donarmstrong.com Git - mothur.git/blob - qualityscores.h
added make.fastq command
[mothur.git] / qualityscores.h
1 #ifndef QUALITYSCORES
2 #define QUALITYSCORES
3
4 /*
5  *  qualityscores.h
6  *  Mothur
7  *
8  *  Created by Pat Schloss on 7/12/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13
14 #include "mothur.h"
15 #include "mothurout.h"
16 #include "sequence.hpp"
17
18 /**************************************************************************************************/
19
20 class QualityScores {
21 public:
22         QualityScores();
23         QualityScores(ifstream&);
24         string getName();
25         vector<int> getQualityScores() { return qScores; }
26         void printQScores(ofstream&);
27         void trimQScores(int, int);
28         void flipQScores();
29         bool stripQualThreshold(Sequence&, double);
30         bool stripQualRollingAverage(Sequence&, double);
31         bool stripQualWindowAverage(Sequence&, int, int, double);
32         bool cullQualAverage(Sequence&, double);
33         void updateQScoreErrorMap(map<char, vector<int> >&, string, int, int, int);
34         void updateForwardMap(vector<vector<int> >&, int, int, int);
35         void updateReverseMap(vector<vector<int> >&, int, int, int);
36         
37 private:
38         
39         double calculateAverage();
40         MothurOut* m;
41         vector<int> qScores;
42         
43         string seqName;
44         int seqLength;
45 };
46         
47 /**************************************************************************************************/
48
49 #endif