From a990de90fe41456a23e58bd087d2f107d321f3a1 Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Fri, 19 Jul 2024 16:37:58 +0400 Subject: Deleted vendor folder --- vendor/tiff/src/encoder/compression/mod.rs | 60 ------------------------------ 1 file changed, 60 deletions(-) delete mode 100644 vendor/tiff/src/encoder/compression/mod.rs (limited to 'vendor/tiff/src/encoder/compression/mod.rs') diff --git a/vendor/tiff/src/encoder/compression/mod.rs b/vendor/tiff/src/encoder/compression/mod.rs deleted file mode 100644 index 04baef3..0000000 --- a/vendor/tiff/src/encoder/compression/mod.rs +++ /dev/null @@ -1,60 +0,0 @@ -use crate::tags::CompressionMethod; -use std::io::{self, Write}; - -mod deflate; -mod lzw; -mod packbits; -mod uncompressed; - -pub use self::deflate::{Deflate, DeflateLevel}; -pub use self::lzw::Lzw; -pub use self::packbits::Packbits; -pub use self::uncompressed::Uncompressed; - -/// An algorithm used for compression -pub trait CompressionAlgorithm { - /// The algorithm writes data directly into the writer. - /// It returns the total number of bytes written. - fn write_to(&mut self, writer: &mut W, bytes: &[u8]) -> Result; -} - -/// An algorithm used for compression with associated enums and optional configurations. -pub trait Compression: CompressionAlgorithm { - /// The corresponding tag to the algorithm. - const COMPRESSION_METHOD: CompressionMethod; - - /// Method to optain a type that can store each variant of comression algorithm. - fn get_algorithm(&self) -> Compressor; -} - -/// An enum to store each compression algorithm. -pub enum Compressor { - Uncompressed(Uncompressed), - Lzw(Lzw), - Deflate(Deflate), - Packbits(Packbits), -} - -impl Default for Compressor { - /// The default compression strategy does not apply any compression. - fn default() -> Self { - Compressor::Uncompressed(Uncompressed::default()) - } -} - -impl CompressionAlgorithm for Compressor { - fn write_to(&mut self, writer: &mut W, bytes: &[u8]) -> Result { - match self { - Compressor::Uncompressed(algorithm) => algorithm.write_to(writer, bytes), - Compressor::Lzw(algorithm) => algorithm.write_to(writer, bytes), - Compressor::Deflate(algorithm) => algorithm.write_to(writer, bytes), - Compressor::Packbits(algorithm) => algorithm.write_to(writer, bytes), - } - } -} - -#[cfg(test)] -mod tests { - pub const TEST_DATA: &'static [u8] = - b"This is a string for checking various compression algorithms."; -} -- cgit v1.2.3