NCBI C++ ToolKit
|
Search Toolkit Book for CBGZFStream
#include <sra/readers/bam/bgzf.hpp>
Public Member Functions | |
CBGZFStream () | |
CBGZFStream (CBGZFFile &file) | |
~CBGZFStream () | |
void | Close () |
void | Open (CBGZFFile &file) |
CBGZFBlock::TDataSize | GetBlockDataSize () const |
CBGZFBlock::TFileBlockPos | GetBlockFilePos () const |
CBGZFBlock::TFileBlockPos | GetNextBlockFilePos () const |
bool | HaveBytesInBlock () const |
CBGZFPos | GetPos () const |
CBGZFPos | GetNextBlockPos () const |
CBGZFPos | GetSeekPos () const |
CBGZFPos | GetEndPos () const |
void | Seek (CBGZFPos pos, CBGZFPos end_pos=CBGZFPos::GetInvalid()) |
size_t | GetNextAvailableBytes () |
bool | HaveNextAvailableBytes () |
bool | HaveNextDataBlock () |
size_t | Read (char *buf, size_t count) |
const char * | Read (size_t count) |
Private Member Functions | |
bool | x_NextBlock () |
const char * | x_Read (CBGZFPos::TFileBlockPos file_pos, size_t size, char *buffer) |
bool | x_ReadBlock (CBGZFPos::TFileBlockPos file_pos) |
Private Attributes | |
CRef< CBGZFFile > | m_File |
CPagedFile::TPage | m_Page |
CBGZFFile::TBlock | m_Block |
CBGZFPos::TByteOffset | m_ReadPos |
CSimpleBufferT< char > | m_InReadBuffer |
CSimpleBufferT< char > | m_OutReadBuffer |
CBGZFPos | m_EndPos |
|
explicit |
void CBGZFStream::Close | ( | void | ) |
Definition at line 438 of file bgzf.cpp.
References m_Block, m_File, m_Page, CCacheWithLock< Key, Value, Less >::CLock::Reset(), CBinaryRangeCacheWithLock< Position, Value >::CLock::Reset(), and CRef< C, Locker >::Reset().
Referenced by Open().
|
inline |
Definition at line 377 of file bgzf.hpp.
References m_Block.
Referenced by GetNextAvailableBytes(), HaveBytesInBlock(), and Seek().
|
inline |
|
inline |
size_t CBGZFStream::GetNextAvailableBytes | ( | ) |
Definition at line 653 of file bgzf.cpp.
References GetBlockDataSize(), m_ReadPos, and x_NextBlock().
Referenced by Read().
|
inline |
Definition at line 385 of file bgzf.hpp.
References m_Block.
Referenced by GetNextBlockPos(), HaveNextDataBlock(), and x_NextBlock().
|
inline |
Definition at line 398 of file bgzf.hpp.
References GetNextBlockFilePos().
Referenced by GetSeekPos().
|
inline |
Definition at line 394 of file bgzf.hpp.
References GetBlockFilePos(), and m_ReadPos.
Referenced by GetSeekPos(), HaveNextAvailableBytes(), and Seek().
|
inline |
Definition at line 402 of file bgzf.hpp.
References GetNextBlockPos(), GetPos(), and HaveBytesInBlock().
Referenced by CBamHeader::Read().
|
inline |
Definition at line 389 of file bgzf.hpp.
References GetBlockDataSize(), and m_ReadPos.
Referenced by GetSeekPos(), HaveNextAvailableBytes(), HaveNextDataBlock(), and Seek().
|
inline |
Definition at line 421 of file bgzf.hpp.
References GetPos(), HaveBytesInBlock(), HaveNextDataBlock(), and m_EndPos.
Referenced by CBamRawAlignIterator::x_NextAnnot().
bool CBGZFStream::HaveNextDataBlock | ( | ) |
Definition at line 663 of file bgzf.cpp.
References _ASSERT, GetNextBlockFilePos(), HaveBytesInBlock(), m_EndPos, and x_NextBlock().
Referenced by HaveNextAvailableBytes().
void CBGZFStream::Open | ( | CBGZFFile & | file | ) |
Definition at line 446 of file bgzf.cpp.
References Close(), file, CBGZFPos::GetInvalid(), m_EndPos, m_File, and CRef< C, Locker >::Reset().
Referenced by CBGZFStream().
size_t CBGZFStream::Read | ( | char * | buf, |
size_t | count | ||
) |
const char * CBGZFStream::Read | ( | size_t | count | ) |
Definition at line 690 of file bgzf.cpp.
References _ASSERT, cnt, count, CSimpleBufferT< T, ResizeStrategy >::data(), GetNextAvailableBytes(), CBGZFBlock::kMaxDataSize, m_Block, m_OutReadBuffer, m_ReadPos, min(), and s_Reserve().
void CBGZFStream::Seek | ( | CBGZFPos | pos, |
CBGZFPos | end_pos = CBGZFPos::GetInvalid() |
||
) |
Definition at line 462 of file bgzf.cpp.
References CBGZFFile::GetBlock(), GetBlockDataSize(), CBGZFPos::GetByteOffset(), CBGZFPos::GetFileBlockPos(), GetPos(), HaveBytesInBlock(), m_Block, m_EndPos, m_File, m_InReadBuffer, m_Page, m_ReadPos, and NCBI_THROW_FMT.
Referenced by CBamRawAlignIterator::x_UpdateRange().
|
private |
Definition at line 454 of file bgzf.cpp.
References CBGZFFile::GetBlock(), GetNextBlockFilePos(), m_Block, m_File, m_InReadBuffer, m_Page, and m_ReadPos.
Referenced by GetNextAvailableBytes(), and HaveNextDataBlock().
|
private |
|
private |
|
private |
Definition at line 450 of file bgzf.hpp.
Referenced by Close(), GetBlockDataSize(), GetBlockFilePos(), GetNextBlockFilePos(), Read(), Seek(), and x_NextBlock().
|
private |
Definition at line 454 of file bgzf.hpp.
Referenced by GetEndPos(), HaveNextAvailableBytes(), HaveNextDataBlock(), Open(), and Seek().
|
private |
Definition at line 452 of file bgzf.hpp.
Referenced by Seek(), and x_NextBlock().
|
private |
|
private |
Definition at line 449 of file bgzf.hpp.
Referenced by Close(), Seek(), and x_NextBlock().
|
private |
Definition at line 451 of file bgzf.hpp.
Referenced by GetNextAvailableBytes(), GetPos(), HaveBytesInBlock(), Read(), Seek(), and x_NextBlock().