Annotation of elwix/tools/oldlzma/SRC/7zip/Compress/LZ/IMatchFinder.h, revision 1.1
1.1 ! misho 1: // MatchFinders/IMatchFinder.h
! 2:
! 3: #ifndef __IMATCHFINDER_H
! 4: #define __IMATCHFINDER_H
! 5:
! 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
! 11: {
! 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;
! 19: };
! 20:
! 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
! 26: {
! 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;
! 31: };
! 32:
! 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
! 38: {
! 39: STDMETHOD(BeforeChangingBufferPos)() PURE;
! 40: STDMETHOD(AfterChangingBufferPos)() PURE;
! 41: };
! 42:
! 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
! 48: {
! 49: STDMETHOD(SetCallback)(IMatchFinderCallback *callback) PURE;
! 50: };
! 51:
! 52: /*
! 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
! 58: {
! 59: STDMETHOD(InitMatchFinder)(IMatchFinder *matchFinder) PURE;
! 60: };
! 61: */
! 62:
! 63: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>