pub struct EbwtParams {Show 25 fields
pub len: u64,
pub bwt_len: u64,
pub sz: u64,
pub bwt_sz: u64,
pub line_rate: i32,
pub orig_off_rate: i32,
pub off_rate: i32,
pub off_mask: u64,
pub ftab_chars: i32,
pub eftab_len: u32,
pub eftab_sz: u32,
pub ftab_len: u64,
pub ftab_sz: u64,
pub offs_len: u64,
pub offs_sz: u64,
pub line_sz: u32,
pub side_sz: u32,
pub side_bwt_sz: u32,
pub side_bwt_len: u32,
pub num_sides: u64,
pub num_lines: u64,
pub ebwt_tot_len: u64,
pub ebwt_tot_sz: u64,
pub color: bool,
pub entire_reverse: bool,
}Expand description
Parameters describing an FM-index structure
This corresponds to the EbwtParams class in the original C++ code.
All fields match the C++ implementation for binary compatibility.
Fields§
§len: u64Length of reference sequence
bwt_len: u64BWT length (len + 1 for terminating symbol)
sz: u64Size in 32-bit words (len+3)/4
bwt_sz: u64BWT size in 32-bit words (len/4 + 1)
line_rate: i32Log2 of line size (for side calculation)
orig_off_rate: i32Original offset rate (from constructor)
off_rate: i32Suffix array sample rate (log2)
off_mask: u64Mask for offset calculations
ftab_chars: i32Number of characters in ftab
eftab_len: u32Extended ftab length (ftabChars*2)
eftab_sz: u32Extended ftab size in bytes
ftab_len: u64Ftab length (1 << (ftabChars*2)) + 1
ftab_sz: u64Ftab size in bytes
offs_len: u64Offsets array length
offs_sz: u64Offsets array size in bytes
line_sz: u32Line size (1 << lineRate)
side_sz: u32Size of each side in bytes
side_bwt_sz: u32Size of BWT portion in each side
side_bwt_len: u32Length of BWT portion in each side
num_sides: u64Number of sides in the index
num_lines: u64Number of lines
ebwt_tot_len: u64Total ebwt length
ebwt_tot_sz: u64Total ebwt size in bytes
color: boolColorspace mode (not used in DNA mode)
entire_reverse: boolEntire reverse mode
Implementations§
Source§impl EbwtParams
impl EbwtParams
Sourcepub fn with_options(
ref_len: u64,
line_rate: i32,
off_rate: i32,
ftab_chars: i32,
color: bool,
entire_reverse: bool,
) -> Self
pub fn with_options( ref_len: u64, line_rate: i32, off_rate: i32, ftab_chars: i32, color: bool, entire_reverse: bool, ) -> Self
Create parameters with specific options (matches C++ EbwtParams::init)
Sourcepub fn set_off_rate(&mut self, off_rate: i32)
pub fn set_off_rate(&mut self, off_rate: i32)
Set a new suffix-array sampling rate (matches C++ setOffRate)
Sourcepub fn pos_to_side(&self, pos: u64) -> u64
pub fn pos_to_side(&self, pos: u64) -> u64
Calculate which side a BWT position is on
Sourcepub fn total_size(&self) -> u64
pub fn total_size(&self) -> u64
Get total size in bytes
Trait Implementations§
Source§impl Clone for EbwtParams
impl Clone for EbwtParams
Source§fn clone(&self) -> EbwtParams
fn clone(&self) -> EbwtParams
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more