BCM WL 6.30.102.9 (r366174)
[tomato.git] / release / src-rt / linux / linux-2.6 / scripts / squashfs / lzma / C / 7zip / Compress / LZ / IMatchFinder.h
blob1d9c88f23b1032c8033e7de568b2d1aefc256f19
1 // MatchFinders/IMatchFinder.h
3 #ifndef __IMATCHFINDER_H
4 #define __IMATCHFINDER_H
6 // {23170F69-40C1-278A-0000-000200010000}
7 DEFINE_GUID(IID_IInWindowStream,
8 0x23170F69, 0x40C1, 0x278A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00);
9 MIDL_INTERFACE("23170F69-40C1-278A-0000-000200010000")
10 IInWindowStream: public IUnknown
12 STDMETHOD(Init)(ISequentialInStream *inStream) PURE;
13 STDMETHOD_(void, ReleaseStream)() PURE;
14 STDMETHOD(MovePos)() PURE;
15 STDMETHOD_(Byte, GetIndexByte)(Int32 index) PURE;
16 STDMETHOD_(UInt32, GetMatchLen)(Int32 index, UInt32 distance, UInt32 limit) PURE;
17 STDMETHOD_(UInt32, GetNumAvailableBytes)() PURE;
18 STDMETHOD_(const Byte *, GetPointerToCurrentPos)() PURE;
21 // {23170F69-40C1-278A-0000-000200020000}
22 DEFINE_GUID(IID_IMatchFinder,
23 0x23170F69, 0x40C1, 0x278A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00);
24 MIDL_INTERFACE("23170F69-40C1-278A-0000-000200020000")
25 IMatchFinder: public IInWindowStream
27 STDMETHOD(Create)(UInt32 historySize, UInt32 keepAddBufferBefore,
28 UInt32 matchMaxLen, UInt32 keepAddBufferAfter) PURE;
29 STDMETHOD_(UInt32, GetLongestMatch)(UInt32 *distances) PURE;
30 STDMETHOD_(void, DummyLongestMatch)() PURE;
33 // {23170F69-40C1-278A-0000-000200020100}
34 DEFINE_GUID(IID_IMatchFinderCallback,
35 0x23170F69, 0x40C1, 0x278A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x01, 0x00);
36 MIDL_INTERFACE("23170F69-40C1-278A-0000-000200020100")
37 IMatchFinderCallback: public IUnknown
39 STDMETHOD(BeforeChangingBufferPos)() PURE;
40 STDMETHOD(AfterChangingBufferPos)() PURE;
43 // {23170F69-40C1-278A-0000-000200020200}
44 DEFINE_GUID(IID_IMatchFinderSetCallback,
45 0x23170F69, 0x40C1, 0x278A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00);
46 MIDL_INTERFACE("23170F69-40C1-278A-0000-000200020200")
47 IMatchFinderSetCallback: public IUnknown
49 STDMETHOD(SetCallback)(IMatchFinderCallback *callback) PURE;
53 // {23170F69-40C1-278A-0000-000200030000}
54 DEFINE_GUID(IID_IInitMatchFinder,
55 0x23170F69, 0x40C1, 0x278A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00);
56 MIDL_INTERFACE("23170F69-40C1-278A-0000-000200030000")
57 IMatchFinderInit: public IUnknown
59 STDMETHOD(InitMatchFinder)(IMatchFinder *matchFinder) PURE;
63 #endif