7 int main(int argc, char* argv[]) {
10 cout << "USAGE: " << argv[0] << " <input BAM file> <output BAM file>" << endl;
14 // localize our arguments
15 const char* inputFilename = argv[1];
16 const char* outputFilename = argv[2];
18 // open our BAM reader
20 reader.Open(inputFilename);
22 // retrieve the SAM header text
23 string samHeader = reader.GetHeaderText();
25 // retrieve the reference sequence vector
26 RefVector referenceSequences = reader.GetReferenceData();
28 // open the BAM writer
30 writer.Open(outputFilename, samHeader, referenceSequences);
32 // copy all of the reads from the input file to the output file
34 while(reader.GetNextAlignment(al)) writer.SaveAlignment(al);