// Marth Lab, Department of Biology, Boston College
// All rights reserved.
// ---------------------------------------------------------------------------
-// Last modified: 21 March 2011 (DB)
+// Last modified: 5 April 2011 (DB)
// ---------------------------------------------------------------------------
// Provides the basic functionality for reading BAM files
// ***************************************************************************
}
bool BamReaderPrivate::LocateIndex(const BamIndex::IndexType& preferredType) {
- return m_randomAccessController.LocateIndex(m_filename, preferredType);
+ return m_randomAccessController.LocateIndex(this, preferredType);
}
// opens BAM file (and index)
}
bool BamReaderPrivate::OpenIndex(const std::string& indexFilename) {
- return m_randomAccessController.OpenIndex(indexFilename);
+ return m_randomAccessController.OpenIndex(indexFilename, this);
}
// returns BAM file pointer to beginning of alignment data
return m_stream.Seek(m_alignmentsBeginOffset);
}
+bool BamReaderPrivate::Seek(const int64_t& position) {
+ return m_stream.Seek(position);
+}
+
void BamReaderPrivate::SetIndex(BamIndex* index) {
m_randomAccessController.SetIndex(index);
}
return m_randomAccessController.SetRegion(this, region, m_references.size());
}
-// returns handle to internal BgzfStream
-BgzfStream* BamReaderPrivate::Stream(void) {
- return &m_stream;
+int64_t BamReaderPrivate::Tell(void) const {
+ return m_stream.Tell();
}