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