Trait divans::interface::Compressor [−][src]
pub trait Compressor { fn encode(
&mut self,
input: &[u8],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansResult; fn encode_commands<SliceType: SliceWrapper<u8> + Default>(
&mut self,
input: &[Command<SliceType>],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult; fn flush(
&mut self,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult; }
Required Methods
fn encode(
&mut self,
input: &[u8],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansResult
&mut self,
input: &[u8],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansResult
fn encode_commands<SliceType: SliceWrapper<u8> + Default>(
&mut self,
input: &[Command<SliceType>],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult
&mut self,
input: &[Command<SliceType>],
input_offset: &mut usize,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult
fn flush(
&mut self,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult
&mut self,
output: &mut [u8],
output_offset: &mut usize
) -> DivansOutputResult
Implementors
impl<RingBuffer: SliceWrapperMut<u8> + SliceWrapper<u8> + Default> Compressor for DivansRecodeState<RingBuffer>
impl<SelectedCDF: CDF16, ChosenEncoder: ArithmeticEncoderOrDecoder + NewWithAllocator<AllocU8>, AllocU8: Allocator<u8>, AllocU16: Allocator<u16>, AllocU32: Allocator<u32>, AllocI32: Allocator<i32>, AllocU64: Allocator<u64>, AllocCommand: Allocator<Command>, AllocCDF16: Allocator<SelectedCDF>, AllocF64: Allocator<floatX>, AllocFV: Allocator<Mem256f>, AllocPDF: Allocator<PDF>, AllocStaticCommand: Allocator<StaticCommand>, AllocHL: Allocator<HistogramLiteral>, AllocHC: Allocator<HistogramCommand>, AllocHD: Allocator<HistogramDistance>, AllocHP: Allocator<HistogramPair>, AllocCT: Allocator<ContextType>, AllocHT: Allocator<HuffmanTree>, AllocZN: Allocator<ZopfliNode>> Compressor for BrotliDivansHybridCompressor<SelectedCDF, ChosenEncoder, AllocU8, AllocU16, AllocU32, AllocI32, AllocU64, AllocCommand, AllocCDF16, AllocF64, AllocFV, AllocPDF, AllocStaticCommand, AllocHL, AllocHC, AllocHD, AllocHP, AllocCT, AllocHT, AllocZN>
impl<DefaultEncoder: ArithmeticEncoderOrDecoder + NewWithAllocator<AllocU8>, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocCDF16: Allocator<DefaultCDF16>> Compressor for DivansCompressor<DefaultEncoder, AllocU8, AllocU32, AllocCDF16>