internal Coder EncodeStart(PpmdProperties properties) { Allocator = properties.Allocator; Coder = new Coder(); Coder.RangeEncoderInitialize(); StartModel(properties.ModelOrder, properties.ModelRestorationMethod); return(Coder); }
public ZipWriter(Stream destination, CompressionInfo compressionInfo, string zipComment) : base(ArchiveType.Zip) { this.ppmdProperties = new PpmdProperties(); this.entries = new List <ZipCentralDirectoryEntry>(); this.zipComment = zipComment ?? string.Empty; this.zipCompressionInfo = new ZipCompressionInfo(compressionInfo); base.InitalizeStream(destination, false); }
internal Coder DecodeStart(Stream source, PpmdProperties properties) { Allocator = properties.Allocator; Coder = new Coder(); Coder.RangeDecoderInitialize(source); StartModel(properties.ModelOrder, properties.ModelRestorationMethod); minimumContext = maximumContext; numberStatistics = minimumContext.NumberStatistics; return(Coder); }
/// <summary> /// Encode (ie. compress) a given source stream, writing the encoded result to the target stream. /// </summary> public void Encode(Stream target, Stream source, PpmdProperties properties) { if (target == null) { throw new ArgumentNullException("target"); } if (source == null) { throw new ArgumentNullException("source"); } EncodeStart(properties); EncodeBlock(target, source, true); }
public void Encode(Stream target, Stream source, PpmdProperties properties) { if (target is null) { throw new ArgumentNullException(nameof(target)); } if (source is null) { throw new ArgumentNullException(nameof(source)); } EncodeStart(properties); EncodeBlock(target, source, true); }
private readonly PpmdProperties ppmdProperties; // Caching properties to speed up PPMd. #endif public ZipWriter(Stream destination, CompressionInfo compressionInfo, string zipComment, Encoding encoding = null) : base(ArchiveType.Zip) { this.zipComment = zipComment ?? string.Empty; this.encoding = encoding ?? ArchiveEncoding.Default; switch (compressionInfo.Type) { case CompressionType.None: { compression = ZipCompressionMethod.None; } break; case CompressionType.Deflate: { compression = ZipCompressionMethod.Deflate; deflateCompressionLevel = compressionInfo.DeflateCompressionLevel; } break; case CompressionType.BZip2: { compression = ZipCompressionMethod.BZip2; } break; #if LZMA case CompressionType.LZMA: { compression = ZipCompressionMethod.LZMA; } break; #endif #if PPMd case CompressionType.PPMd: { ppmdProperties = new PpmdProperties(); compression = ZipCompressionMethod.PPMd; } break; #endif default: throw new InvalidFormatException("Invalid compression method: " + compressionInfo.Type); } InitalizeStream(destination, false); }
public void Decode(Stream target, Stream source, PpmdProperties properties) { if (target is null) { throw new ArgumentNullException(nameof(target)); } if (source is null) { throw new ArgumentNullException(nameof(source)); } DecodeStart(source, properties); byte[] buffer = new byte[65536]; int read; while ((read = DecodeBlock(source, buffer, 0, buffer.Length)) != 0) { target.Write(buffer, 0, read); } }
internal Coder DecodeStart(Stream source, PpmdProperties properties) { Allocator = properties.Allocator; Coder = new Coder(); Coder.RangeDecoderInitialize(source); StartModel(properties.ModelOrder, properties.ModelRestorationMethod); minimumContext = maximumContext; numberStatistics = minimumContext.NumberStatistics; return Coder; }
/// <summary> /// Dencode (ie. decompress) a given source stream, writing the decoded result to the target stream. /// </summary> public void Decode(Stream target, Stream source, PpmdProperties properties) { if (target == null) throw new ArgumentNullException("target"); if (source == null) throw new ArgumentNullException("source"); DecodeStart(source, properties); byte[] buffer = new byte[65536]; int read; while ((read = DecodeBlock(source, buffer, 0, buffer.Length)) != 0) target.Write(buffer, 0, read); return; }
internal Coder EncodeStart(PpmdProperties properties) { Allocator = properties.Allocator; Coder = new Coder(); Coder.RangeEncoderInitialize(); StartModel(properties.ModelOrder, properties.ModelRestorationMethod); return Coder; }
/// <summary> /// Encode (ie. compress) a given source stream, writing the encoded result to the target stream. /// </summary> public void Encode(Stream target, Stream source, PpmdProperties properties) { if (target == null) throw new ArgumentNullException("target"); if (source == null) throw new ArgumentNullException("source"); EncodeStart(properties); EncodeBlock(target, source, true); }