private void ReportProgress() { if (_externalProgress != null) { _externalProgress.Report(new CodingProgressInfo(_processedInSize, _processedOutSize)); } }
public override void Code(Stream inStream, Stream outStream, long inSize = -1, long outSize = -1, ICodingProgress progress = null) { long processedSize = 0; for (; ;) { var nRead = inStream.Read(_buffer.Value, 0, _buffer.Value.Length); if (nRead == 0) { break; } outStream.Write(_buffer.Value, 0, nRead); processedSize += nRead; if (progress != null) { progress.Report(new CodingProgressInfo(processedSize, processedSize)); } } }
public override void Code(Stream inStream, Stream outStream, long inSize, long outSize, ICodingProgress progress = null) { var inBuf = new byte[DefaultBlockSize]; var outBuf = new byte[inBuf.Length]; _bucket = new int[inBuf.Length]; long processedSize = 0; for (; ;) { var nRead = inStream.Read(inBuf, 0, inBuf.Length); if (nRead == 0) { break; } processedSize += nRead; var primaryIndex = this.EncodeBlock(inBuf, outBuf, nRead); outStream.Write(outBuf, 0, nRead); if (progress != null) { progress.Report(new CodingProgressInfo(processedSize, processedSize)); } } }