|
6
|
1 // ***************************************************************************
|
|
|
2 // BamWriter.cpp (c) 2009 Michael Str�mberg, Derek Barnett
|
|
|
3 // Marth Lab, Department of Biology, Boston College
|
|
|
4 // All rights reserved.
|
|
|
5 // ---------------------------------------------------------------------------
|
|
|
6 // Last modified: 22 November 2010 (DB)
|
|
|
7 // ---------------------------------------------------------------------------
|
|
|
8 // Provides the basic functionality for producing BAM files
|
|
|
9 // ***************************************************************************
|
|
|
10
|
|
|
11 #include <BamWriter.h>
|
|
|
12 #include <BamWriter_p.h>
|
|
|
13 using namespace BamTools;
|
|
|
14 using namespace BamTools::Internal;
|
|
|
15
|
|
|
16 #include <iostream>
|
|
|
17 using namespace std;
|
|
|
18
|
|
|
19 // constructor
|
|
|
20 BamWriter::BamWriter(void) {
|
|
|
21 d = new BamWriterPrivate;
|
|
|
22 }
|
|
|
23
|
|
|
24 // destructor
|
|
|
25 BamWriter::~BamWriter(void) {
|
|
|
26 delete d;
|
|
|
27 d = 0;
|
|
|
28 }
|
|
|
29
|
|
|
30 // closes the alignment archive
|
|
|
31 void BamWriter::Close(void) {
|
|
|
32 d->Close();
|
|
|
33 }
|
|
|
34
|
|
|
35 // opens the alignment archive
|
|
|
36 bool BamWriter::Open(const string& filename,
|
|
|
37 const string& samHeader,
|
|
|
38 const RefVector& referenceSequences,
|
|
|
39 bool isWriteUncompressed)
|
|
|
40 {
|
|
|
41 return d->Open(filename, samHeader, referenceSequences, isWriteUncompressed);
|
|
|
42 }
|
|
|
43
|
|
|
44 // saves the alignment to the alignment archive
|
|
|
45 void BamWriter::SaveAlignment(const BamAlignment& al) {
|
|
|
46 d->SaveAlignment(al);
|
|
|
47 }
|