1// IMatchFinder.cs 2 3using System; 4 5namespace SevenZip.Compression.LZ 6{ 7 interface IInWindowStream 8 { 9 void SetStream(System.IO.Stream inStream); 10 void Init(); 11 void ReleaseStream(); 12 Byte GetIndexByte(Int32 index); 13 UInt32 GetMatchLen(Int32 index, UInt32 distance, UInt32 limit); 14 UInt32 GetNumAvailableBytes(); 15 } 16 17 interface IMatchFinder : IInWindowStream 18 { 19 void Create(UInt32 historySize, UInt32 keepAddBufferBefore, 20 UInt32 matchMaxLen, UInt32 keepAddBufferAfter); 21 UInt32 GetMatches(UInt32[] distances); 22 void Skip(UInt32 num); 23 } 24} 25