/// <summary> /// constructor with mode specified /// </summary> /// <param name="mode">indicates which mode are used</param> public Decompressor(SlidingWindowSize mode) { this.mode = mode; if (mode == SlidingWindowSize.EightKB) { historyBuffer = new SlidingWindow(window8k); } else if (mode == SlidingWindowSize.SixtyFourKB) { historyBuffer = new SlidingWindow(window64k); } else { throw new ArgumentException( "mode should be EightKB or SixtyFourKB", "mode"); } decodeState = DecodeState.Init; }
/// <summary> /// constructor with specified sliding window size /// </summary> /// <param name="mode">the mode of compressor, specify the size of sliding window</param> public Compressor(SlidingWindowSize mode) { this.mode = mode; if (mode == SlidingWindowSize.EightKB) { slidingWindow = new SlidingWindow(window8k); } else if (mode == SlidingWindowSize.SixtyFourKB) { slidingWindow = new SlidingWindow(window64k); } else { throw new ArgumentException( "mode should be EightKB or SixtyFourKB", "mode"); } hashTable = new HashTable(slidingWindow); }