public static LZ4Stream CreateCompressor(Stream innerStream, LZ4StreamMode streamMode, LZ4FrameBlockMode blockMode = LZ4FrameBlockMode.Linked, LZ4FrameBlockSize blockSize = LZ4FrameBlockSize.Max64KB, LZ4FrameChecksumMode checksumMode = LZ4FrameChecksumMode.Content, long?maxFrameSize = null, bool leaveInnerStreamOpen = false) { var s = LZ4Loader.CreateCompressor()(innerStream, streamMode, blockMode, blockSize, checksumMode, maxFrameSize, leaveInnerStreamOpen); var r = new LZ4Stream(); r._innerStream = s; return(r); }
public static LZ4Stream CreateDecompressor(Stream innerStream, LZ4StreamMode streamMode, bool leaveInnerStreamOpen = false) { var s = LZ4Loader.CreateDecompressor()(innerStream, streamMode, leaveInnerStreamOpen); var r = new LZ4Stream(); r._innerStream = s; r.HookInternalEvent(); return(r); }
/// <summary>Initializes a new instance of the <see cref="LZ4Stream" /> class.</summary> /// <param name="innerStream">The inner stream.</param> /// <param name="compressionMode">The compression mode.</param> /// <param name="highCompression">if set to <c>true</c> [high compression].</param> /// <param name="blockSize">Size of the block.</param> public LZ4Stream( Stream innerStream, LZ4StreamMode compressionMode, bool highCompression = false, int blockSize = 1024*1024) { _innerStream = innerStream; _compressionMode = compressionMode; _highCompression = highCompression; _blockSize = Math.Max(16, blockSize); }
/// <summary>Initializes a new instance of the <see cref="LZ4Stream" /> class.</summary> /// <param name="innerStream">The inner stream.</param> /// <param name="compressionMode">The compression mode.</param> /// <param name="compressionFlags">The compression flags.</param> /// <param name="blockSize">Size of the block.</param> public LZ4Stream( Stream innerStream, LZ4StreamMode compressionMode, LZ4StreamFlags compressionFlags = LZ4StreamFlags.Default, int blockSize = 1024 *1024) { _innerStream = innerStream; _compressionMode = compressionMode; _highCompression = (compressionFlags & LZ4StreamFlags.HighCompression) != 0; _interactiveRead = (compressionFlags & LZ4StreamFlags.InteractiveRead) != 0; _isolateInnerStream = (compressionFlags & LZ4StreamFlags.IsolateInnerStream) != 0; _blockSize = Math.Max(16, blockSize); }
/// <summary>Initializes a new instance of the <see cref="LZ4Stream" /> class.</summary> /// <param name="innerStream">The inner stream.</param> /// <param name="compressionMode">The compression mode.</param> /// <param name="highCompression">if set to <c>true</c> high compression is used.</param> /// <param name="blockSize">Size of the block.</param> /// <param name="interactiveRead">if set to <c>true</c> interactive read mode is used. /// It means that <see cref="Read"/> method tries to return data as soon as possible. /// Please note, that this should be default behaviour but has been made optional for /// backward compatibility. This constructor will be changed in next major release.</param> public LZ4Stream( Stream innerStream, LZ4StreamMode compressionMode, bool highCompression = false, int blockSize = 1024 *1024, bool interactiveRead = false) { _innerStream = innerStream; _compressionMode = compressionMode; _highCompression = highCompression; _interactiveRead = interactiveRead; _blockSize = Math.Max(16, blockSize); }
public LZ4Stream( Stream innerStream, LZ4StreamMode compressionMode, bool highCompression, int blockSize = 1024*1024, bool interactiveRead = false) { _innerStream = innerStream; _compressionMode = compressionMode; _highCompression = highCompression; _interactiveRead = interactiveRead; _isolateInnerStream = false; _blockSize = Math.Max(16, blockSize); }
/// <summary>Initializes a new instance of the <see cref="LZ4Stream" /> class.</summary> /// <param name="innerStream">The inner stream.</param> /// <param name="compressionMode">The compression mode.</param> /// <param name="compressionFlags">The compression flags.</param> /// <param name="blockSize">Size of the block.</param> public LZ4Stream( Stream innerStream, LZ4StreamMode compressionMode, LZ4StreamFlags compressionFlags = LZ4StreamFlags.Default, int blockSize = 1024*1024) { _innerStream = innerStream; _compressionMode = compressionMode; _highCompression = (compressionFlags & LZ4StreamFlags.HighCompression) != 0; _interactiveRead = (compressionFlags & LZ4StreamFlags.InteractiveRead) != 0; _isolateInnerStream = (compressionFlags & LZ4StreamFlags.IsolateInnerStream) != 0; _blockSize = Math.Max(16, blockSize); }