Struct rust_htslib::bcf::buffer::RecordBuffer
source · pub struct RecordBuffer { /* private fields */ }
Expand description
A buffer for BCF records. This allows access regions in a sorted BCF file while iterating over it in a single pass. The buffer is implemented as a ringbuffer, such that extension or movement to the right has linear complexity. The buffer does not use any indexed random access. Hence, for getting a region at the very end of the BCF, you will have to wait until all records before have been read.
Implementations§
source§impl RecordBuffer
impl RecordBuffer
sourcepub fn fetch(
&mut self,
chrom: &[u8],
start: u64,
end: u64
) -> Result<(usize, usize)>
pub fn fetch( &mut self, chrom: &[u8], start: u64, end: u64 ) -> Result<(usize, usize)>
Fill the buffer with variants in the given window. The start coordinate has to be right of
the start coordinate of any previous fill
operation.
Coordinates are 0-based, and end is exclusive.
Returns tuple with numbers of added and deleted records compared to previous fetch.
sourcepub fn iter_mut(&mut self) -> IterMut<'_, Record>
pub fn iter_mut(&mut self) -> IterMut<'_, Record>
Iterate over mutable references to records that have been fetched with fetch
.