noodles_cram/
codecs.rs

1//! CRAM block content codecs.
2
3pub mod aac;
4pub(crate) mod bzip2;
5pub(crate) mod fqzcomp;
6pub(crate) mod gzip;
7pub(crate) mod lzma;
8pub(crate) mod name_tokenizer;
9pub mod rans_4x8;
10pub mod rans_nx16;
11
12/// A CRAM block content encoder.
13#[derive(Clone, Debug)]
14pub enum Encoder {
15    /// gzip
16    Gzip(flate2::Compression),
17    /// bzip2
18    Bzip2(::bzip2::Compression),
19    /// xz
20    Lzma(u32),
21    /// rANS 4x8
22    Rans4x8(rans_4x8::Order),
23    /// rANS Nx16
24    RansNx16(rans_nx16::Flags),
25    /// adaptive arithmetic coder
26    AdaptiveArithmeticCoding(aac::Flags),
27    /// name tokenizer
28    NameTokenizer,
29    /// fqzcomp
30    Fqzcomp,
31}