1370b324cSopenharmony_ci// IMatchFinder.cs 2370b324cSopenharmony_ci 3370b324cSopenharmony_ciusing System; 4370b324cSopenharmony_ci 5370b324cSopenharmony_cinamespace SevenZip.Compression.LZ 6370b324cSopenharmony_ci{ 7370b324cSopenharmony_ci interface IInWindowStream 8370b324cSopenharmony_ci { 9370b324cSopenharmony_ci void SetStream(System.IO.Stream inStream); 10370b324cSopenharmony_ci void Init(); 11370b324cSopenharmony_ci void ReleaseStream(); 12370b324cSopenharmony_ci Byte GetIndexByte(Int32 index); 13370b324cSopenharmony_ci UInt32 GetMatchLen(Int32 index, UInt32 distance, UInt32 limit); 14370b324cSopenharmony_ci UInt32 GetNumAvailableBytes(); 15370b324cSopenharmony_ci } 16370b324cSopenharmony_ci 17370b324cSopenharmony_ci interface IMatchFinder : IInWindowStream 18370b324cSopenharmony_ci { 19370b324cSopenharmony_ci void Create(UInt32 historySize, UInt32 keepAddBufferBefore, 20370b324cSopenharmony_ci UInt32 matchMaxLen, UInt32 keepAddBufferAfter); 21370b324cSopenharmony_ci UInt32 GetMatches(UInt32[] distances); 22370b324cSopenharmony_ci void Skip(UInt32 num); 23370b324cSopenharmony_ci } 24370b324cSopenharmony_ci} 25