Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="properties"></param>
        /// <param name="isLZMA2"></param>
        /// <param name="presetDictionary"></param>
        /// <param name="outputStream"></param>
        public LzmaStream(LzmaEncoderProperties properties, bool isLZMA2, Stream presetDictionary, Stream outputStream)
        {
            Properties     = new byte[5];
            this.isLZMA2   = isLZMA2;
            availableBytes = 0;
            endReached     = true;

            if (isLZMA2)
            {
                throw new NotImplementedException();
            }

            encoder = new Encoder();
            encoder.SetCoderProperties(properties.propIDs, properties.properties);
            MemoryStream propStream = new MemoryStream(5);

            encoder.WriteCoderProperties(propStream);
            Properties = propStream.ToArray();

            encoder.SetStreams(null, outputStream, -1, -1);
            if (presetDictionary != null)
            {
                encoder.Train(presetDictionary);
            }
        }
Example #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="properties"></param>
 /// <param name="isLZMA2"></param>
 /// <param name="outputStream"></param>
 public LzmaStream(LzmaEncoderProperties properties, bool isLZMA2, Stream outputStream)
     : this(properties, isLZMA2, null, outputStream)
 {
 }