Mercurial > repos > aaronquinlan > multi_intersect
comparison BEDTools-Version-2.14.3/src/multiBamCov/multiBamCov.h @ 0:dfcd8b6c1bda
Uploaded
author | aaronquinlan |
---|---|
date | Thu, 03 Nov 2011 10:25:04 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:dfcd8b6c1bda |
---|---|
1 /***************************************************************************** | |
2 multiBamCov.h | |
3 | |
4 (c) 2009 - Aaron Quinlan | |
5 Hall Laboratory | |
6 Department of Biochemistry and Molecular Genetics | |
7 University of Virginia | |
8 aaronquinlan@gmail.com | |
9 | |
10 Licenced under the GNU General Public License 2.0 license. | |
11 ******************************************************************************/ | |
12 #ifndef MULTICOVBAM_H | |
13 #define MULTICOVBAM_H | |
14 | |
15 #include "bedFile.h" | |
16 #include "api/BamMultiReader.h" | |
17 using namespace BamTools; | |
18 | |
19 | |
20 #include <vector> | |
21 #include <iostream> | |
22 #include <fstream> | |
23 #include <stdlib.h> | |
24 using namespace std; | |
25 | |
26 | |
27 | |
28 class MultiCovBam { | |
29 | |
30 public: | |
31 | |
32 // constructor | |
33 MultiCovBam(const vector<string> &bam_files, const string bed_file, | |
34 int minQual, bool properOnly, | |
35 bool keepDuplicates, bool keepFailedQC); | |
36 | |
37 // destructor | |
38 ~MultiCovBam(void); | |
39 | |
40 void CollectCoverage(); | |
41 | |
42 private: | |
43 | |
44 //------------------------------------------------ | |
45 // private attributes | |
46 //------------------------------------------------ | |
47 vector<string> _bam_files; | |
48 string _bed_file; | |
49 BedFile *_bed; | |
50 | |
51 // attributes to control what is counted | |
52 int _minQual; | |
53 bool _properOnly; | |
54 bool _keepDuplicates; | |
55 bool _keepFailedQC; | |
56 | |
57 | |
58 map<string, int> bamFileMap; | |
59 | |
60 void LoadBamFileMap(void); | |
61 void ReportCounts(const vector<int> &counts); | |
62 }; | |
63 | |
64 #endif /* MULTIBAMCOV_H */ |