[][src]Trait rust_htslib::bam::Read

pub trait Read: Sized {
    fn read(&mut self, record: &mut Record) -> Result<(), ReadError>;
fn records(&mut self) -> Records<Self>;
fn pileup(&mut self) -> Pileups<Self>;
fn htsfile(&self) -> *mut htsFile;
fn header(&self) -> &HeaderView; fn seek(&mut self, offset: i64) -> Result<(), SeekError> { ... }
fn tell(&self) -> i64 { ... }
fn set_threads(&mut self, n_threads: usize) -> Result<(), ThreadingError> { ... } }

A trait for a BAM reader with a read method.

Required methods

fn read(&mut self, record: &mut Record) -> Result<(), ReadError>

Read next BAM record into given record. Use this method in combination with a single allocated record to avoid the reallocations occurring with the iterator.

Arguments

  • record - the record to be filled

Important traits for Records<'a, R>
fn records(&mut self) -> Records<Self>

Iterator over the records of the seeked region. Note that, while being convenient, this is less efficient than pre-allocating a Record and reading into it with the read method, since every iteration involves the allocation of a new Record.

Important traits for Pileups<'a, R>
fn pileup(&mut self) -> Pileups<Self>

Iterator over pileups.

fn htsfile(&self) -> *mut htsFile

Return the htsFile struct

fn header(&self) -> &HeaderView

Return the header.

Loading content...

Provided methods

fn seek(&mut self, offset: i64) -> Result<(), SeekError>

Seek to the given virtual offset in the file

fn tell(&self) -> i64

Report the current virtual offset

fn set_threads(&mut self, n_threads: usize) -> Result<(), ThreadingError>

Activate multi-threaded BAM read support in htslib. This should permit faster reading of large BAM files.

Setting nthreads to 0 does not change the current state. Note that it is not possible to set the number of background threads below 1 once it has been set.

Arguments

  • n_threads - number of extra background writer threads to use, must be > 0.
Loading content...

Implementors

impl Read for IndexedReader[src]

Important traits for Records<'a, R>
fn records(&mut self) -> Records<Self>[src]

Iterator over the records of the fetched region. Note that, while being convenient, this is less efficient than pre-allocating a Record and reading into it with the read method, since every iteration involves the allocation of a new Record.

fn seek(&mut self, offset: i64) -> Result<(), SeekError>[src]

fn tell(&self) -> i64[src]

fn set_threads(&mut self, n_threads: usize) -> Result<(), ThreadingError>[src]

impl Read for Reader[src]

Important traits for Records<'a, R>
fn records(&mut self) -> Records<Self>[src]

Iterator over the records of the fetched region. Note that, while being convenient, this is less efficient than pre-allocating a Record and reading into it with the read method, since every iteration involves the allocation of a new Record.

fn seek(&mut self, offset: i64) -> Result<(), SeekError>[src]

fn tell(&self) -> i64[src]

fn set_threads(&mut self, n_threads: usize) -> Result<(), ThreadingError>[src]

Loading content...