pub trait BinningIndex {
    // Required methods
    fn min_shift(&self) -> u8;
    fn depth(&self) -> u8;
    fn header(&self) -> Option<&Header>;
    fn reference_sequences(
        &self
    ) -> Box<dyn Iterator<Item = &dyn ReferenceSequence> + '_>;
    fn unplaced_unmapped_record_count(&self) -> Option<u64>;
    fn query(
        &self,
        reference_sequence_id: usize,
        interval: Interval
    ) -> Result<Vec<Chunk>>;
    fn last_first_record_start_position(&self) -> Option<VirtualPosition>;
}
Expand description

A binning index.

Required Methods§

source

fn min_shift(&self) -> u8

Returns the number of bits for the minimum interval.

source

fn depth(&self) -> u8

Returns the depth of the binning index.

source

fn header(&self) -> Option<&Header>

Returns the tabix header.

source

fn reference_sequences( &self ) -> Box<dyn Iterator<Item = &dyn ReferenceSequence> + '_>

Returns an iterator over reference sequences.

source

fn unplaced_unmapped_record_count(&self) -> Option<u64>

Returns the number of unplaced, unmapped records in the associated file.

source

fn query( &self, reference_sequence_id: usize, interval: Interval ) -> Result<Vec<Chunk>>

Returns the chunks that overlap with the given region.

source

fn last_first_record_start_position(&self) -> Option<VirtualPosition>

Returns the last first record start position.

This is the closest position to the unplaced, unmapped records, if any, that is available in an index.

Implementations on Foreign Types§

source§

impl<I> BinningIndex for Box<I>
where I: BinningIndex + ?Sized,

Implementors§

source§

impl<I> BinningIndex for Index<I>
where I: Index,