Run dos2unix on bayou and remove white space at the end of lines.
[coreboot.git] / payloads / bayou / util / pbuilder / lzma / C / 7zip / Compress / LZ / IMatchFinder.h
1 // MatchFinders/IMatchFinder.h
2
3 #ifndef __IMATCHFINDER_H
4 #define __IMATCHFINDER_H
5
6 struct IInWindowStream: public IUnknown
7 {
8   STDMETHOD(SetStream)(ISequentialInStream *inStream) PURE;
9   STDMETHOD_(void, ReleaseStream)() PURE;
10   STDMETHOD(Init)() PURE;
11   STDMETHOD_(Byte, GetIndexByte)(Int32 index) PURE;
12   STDMETHOD_(UInt32, GetMatchLen)(Int32 index, UInt32 distance, UInt32 limit) PURE;
13   STDMETHOD_(UInt32, GetNumAvailableBytes)() PURE;
14   STDMETHOD_(const Byte *, GetPointerToCurrentPos)() PURE;
15   STDMETHOD_(Int32, NeedChangeBufferPos)(UInt32 numCheckBytes) PURE;
16   STDMETHOD_(void, ChangeBufferPos)() PURE;
17 };
18
19 struct IMatchFinder: public IInWindowStream
20 {
21   STDMETHOD(Create)(UInt32 historySize, UInt32 keepAddBufferBefore,
22       UInt32 matchMaxLen, UInt32 keepAddBufferAfter) PURE;
23   STDMETHOD(GetMatches)(UInt32 *distances) PURE;
24   STDMETHOD(Skip)(UInt32 num) PURE;
25 };
26
27 struct IMatchFinderSetNumPasses
28 {
29   //virtual ~IMatchFinderSetNumPasses(){}
30   virtual void SetNumPasses(UInt32 numPasses) PURE;
31 };
32
33 #endif