master
  1/*** Autogenerated by WIDL 10.4 from include/filter.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __filter_h__
 17#define __filter_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IFilter_FWD_DEFINED__
 22#define __IFilter_FWD_DEFINED__
 23typedef interface IFilter IFilter;
 24#ifdef __cplusplus
 25interface IFilter;
 26#endif /* __cplusplus */
 27#endif
 28
 29/* Headers for imported files */
 30
 31#include <unknwn.h>
 32#include <objidl.h>
 33#include <propidl.h>
 34
 35#ifdef __cplusplus
 36extern "C" {
 37#endif
 38
 39#ifndef __IFilter_FWD_DEFINED__
 40#define __IFilter_FWD_DEFINED__
 41typedef interface IFilter IFilter;
 42#ifdef __cplusplus
 43interface IFilter;
 44#endif /* __cplusplus */
 45#endif
 46
 47#include <winapifamily.h>
 48
 49#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 50#ifndef _TAGFULLPROPSPEC_DEFINED_
 51#define _TAGFULLPROPSPEC_DEFINED_
 52typedef struct tagFULLPROPSPEC {
 53    GUID guidPropSet;
 54    PROPSPEC psProperty;
 55} FULLPROPSPEC;
 56#endif
 57#ifndef _tagIFILTER_INIT_DEFINED
 58#define _tagIFILTER_INIT_DEFINED
 59typedef enum tagIFILTER_INIT {
 60    IFILTER_INIT_CANON_PARAGRAPHS = 0x1,
 61    IFILTER_INIT_HARD_LINE_BREAKS = 0x2,
 62    IFILTER_INIT_CANON_HYPHENS = 0x4,
 63    IFILTER_INIT_CANON_SPACES = 0x8,
 64    IFILTER_INIT_APPLY_INDEX_ATTRIBUTES = 0x10,
 65    IFILTER_INIT_APPLY_OTHER_ATTRIBUTES = 0x20,
 66    IFILTER_INIT_INDEXING_ONLY = 0x40,
 67    IFILTER_INIT_SEARCH_LINKS = 0x80,
 68    IFILTER_INIT_APPLY_CRAWL_ATTRIBUTES = 0x100,
 69    IFILTER_INIT_FILTER_OWNED_VALUE_OK = 0x200,
 70    IFILTER_INIT_FILTER_AGGRESSIVE_BREAK = 0x400,
 71    IFILTER_INIT_DISABLE_EMBEDDED = 0x800,
 72    IFILTER_INIT_EMIT_FORMATTING = 0x1000
 73} IFILTER_INIT;
 74#define _IFILTER_INIT_DEFINED
 75#endif
 76#ifndef _tagIFILTER_FLAGS_DEFINED
 77#define _tagIFILTER_FLAGS_DEFINED
 78typedef enum tagIFILTER_FLAGS {
 79    IFILTER_FLAGS_OLE_PROPERTIES = 1
 80} IFILTER_FLAGS;
 81#define _IFILTER_FLAGS_DEFINED
 82#endif
 83#ifndef _tagCHUNKSTATE_DEFINED
 84#define _tagCHUNKSTATE_DEFINED
 85typedef enum tagCHUNKSTATE {
 86    CHUNK_TEXT = 0x1,
 87    CHUNK_VALUE = 0x2,
 88    CHUNK_FILTER_OWNED_VALUE = 0x4
 89} CHUNKSTATE;
 90#define _CHUNKSTATE_DEFINED
 91#endif
 92#ifndef _tagCHUNK_BREAKTYPE_DEFINED
 93#define _tagCHUNK_BREAKTYPE_DEFINED
 94typedef enum tagCHUNK_BREAKTYPE {
 95    CHUNK_NO_BREAK = 0,
 96    CHUNK_EOW = 1,
 97    CHUNK_EOS = 2,
 98    CHUNK_EOP = 3,
 99    CHUNK_EOC = 4
100} CHUNK_BREAKTYPE;
101#define _CHUNK_BREAKTYPE_DEFINED
102#endif
103#ifndef _tagFILTERREGION_DEFINED
104#define _tagFILTERREGION_DEFINED
105typedef struct tagFILTERREGION {
106    ULONG idChunk;
107    ULONG cwcStart;
108    ULONG cwcExtent;
109} FILTERREGION;
110#define _FILTERREGION_DEFINED
111#endif
112#ifndef _tagSTAT_CHUNK_DEFINED
113#define _tagSTAT_CHUNK_DEFINED
114typedef struct tagSTAT_CHUNK {
115    ULONG idChunk;
116    CHUNK_BREAKTYPE breakType;
117    CHUNKSTATE flags;
118    LCID locale;
119    FULLPROPSPEC attribute;
120    ULONG idChunkSource;
121    ULONG cwcStartSource;
122    ULONG cwcLenSource;
123} STAT_CHUNK;
124#define _STAT_CHUNK_DEFINED
125#endif
126/*****************************************************************************
127 * IFilter interface
128 */
129#ifndef __IFilter_INTERFACE_DEFINED__
130#define __IFilter_INTERFACE_DEFINED__
131
132DEFINE_GUID(IID_IFilter, 0x89bcb740, 0x6119, 0x101a, 0xbc,0xb7, 0x00,0xdd,0x01,0x06,0x55,0xaf);
133#if defined(__cplusplus) && !defined(CINTERFACE)
134MIDL_INTERFACE("89bcb740-6119-101a-bcb7-00dd010655af")
135IFilter : public IUnknown
136{
137    virtual SCODE STDMETHODCALLTYPE Init(
138        ULONG grfFlags,
139        ULONG cAttributes,
140        const FULLPROPSPEC *aAttributes,
141        ULONG *pFlags) = 0;
142
143    virtual SCODE STDMETHODCALLTYPE GetChunk(
144        STAT_CHUNK *pStat) = 0;
145
146    virtual SCODE STDMETHODCALLTYPE GetText(
147        ULONG *pcwcBuffer,
148        WCHAR *awcBuffer) = 0;
149
150    virtual SCODE STDMETHODCALLTYPE GetValue(
151        PROPVARIANT **ppPropValue) = 0;
152
153    virtual SCODE STDMETHODCALLTYPE BindRegion(
154        FILTERREGION origPos,
155        REFIID riid,
156        void **ppunk) = 0;
157
158};
159#ifdef __CRT_UUID_DECL
160__CRT_UUID_DECL(IFilter, 0x89bcb740, 0x6119, 0x101a, 0xbc,0xb7, 0x00,0xdd,0x01,0x06,0x55,0xaf)
161#endif
162#else
163typedef struct IFilterVtbl {
164    BEGIN_INTERFACE
165
166    /*** IUnknown methods ***/
167    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
168        IFilter *This,
169        REFIID riid,
170        void **ppvObject);
171
172    ULONG (STDMETHODCALLTYPE *AddRef)(
173        IFilter *This);
174
175    ULONG (STDMETHODCALLTYPE *Release)(
176        IFilter *This);
177
178    /*** IFilter methods ***/
179    SCODE (STDMETHODCALLTYPE *Init)(
180        IFilter *This,
181        ULONG grfFlags,
182        ULONG cAttributes,
183        const FULLPROPSPEC *aAttributes,
184        ULONG *pFlags);
185
186    SCODE (STDMETHODCALLTYPE *GetChunk)(
187        IFilter *This,
188        STAT_CHUNK *pStat);
189
190    SCODE (STDMETHODCALLTYPE *GetText)(
191        IFilter *This,
192        ULONG *pcwcBuffer,
193        WCHAR *awcBuffer);
194
195    SCODE (STDMETHODCALLTYPE *GetValue)(
196        IFilter *This,
197        PROPVARIANT **ppPropValue);
198
199    SCODE (STDMETHODCALLTYPE *BindRegion)(
200        IFilter *This,
201        FILTERREGION origPos,
202        REFIID riid,
203        void **ppunk);
204
205    END_INTERFACE
206} IFilterVtbl;
207
208interface IFilter {
209    CONST_VTBL IFilterVtbl* lpVtbl;
210};
211
212#ifdef COBJMACROS
213#ifndef WIDL_C_INLINE_WRAPPERS
214/*** IUnknown methods ***/
215#define IFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
216#define IFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
217#define IFilter_Release(This) (This)->lpVtbl->Release(This)
218/*** IFilter methods ***/
219#define IFilter_Init(This,grfFlags,cAttributes,aAttributes,pFlags) (This)->lpVtbl->Init(This,grfFlags,cAttributes,aAttributes,pFlags)
220#define IFilter_GetChunk(This,pStat) (This)->lpVtbl->GetChunk(This,pStat)
221#define IFilter_GetText(This,pcwcBuffer,awcBuffer) (This)->lpVtbl->GetText(This,pcwcBuffer,awcBuffer)
222#define IFilter_GetValue(This,ppPropValue) (This)->lpVtbl->GetValue(This,ppPropValue)
223#define IFilter_BindRegion(This,origPos,riid,ppunk) (This)->lpVtbl->BindRegion(This,origPos,riid,ppunk)
224#else
225/*** IUnknown methods ***/
226static inline HRESULT IFilter_QueryInterface(IFilter* This,REFIID riid,void **ppvObject) {
227    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
228}
229static inline ULONG IFilter_AddRef(IFilter* This) {
230    return This->lpVtbl->AddRef(This);
231}
232static inline ULONG IFilter_Release(IFilter* This) {
233    return This->lpVtbl->Release(This);
234}
235/*** IFilter methods ***/
236static inline SCODE IFilter_Init(IFilter* This,ULONG grfFlags,ULONG cAttributes,const FULLPROPSPEC *aAttributes,ULONG *pFlags) {
237    return This->lpVtbl->Init(This,grfFlags,cAttributes,aAttributes,pFlags);
238}
239static inline SCODE IFilter_GetChunk(IFilter* This,STAT_CHUNK *pStat) {
240    return This->lpVtbl->GetChunk(This,pStat);
241}
242static inline SCODE IFilter_GetText(IFilter* This,ULONG *pcwcBuffer,WCHAR *awcBuffer) {
243    return This->lpVtbl->GetText(This,pcwcBuffer,awcBuffer);
244}
245static inline SCODE IFilter_GetValue(IFilter* This,PROPVARIANT **ppPropValue) {
246    return This->lpVtbl->GetValue(This,ppPropValue);
247}
248static inline SCODE IFilter_BindRegion(IFilter* This,FILTERREGION origPos,REFIID riid,void **ppunk) {
249    return This->lpVtbl->BindRegion(This,origPos,riid,ppunk);
250}
251#endif
252#endif
253
254#endif
255
256
257#endif  /* __IFilter_INTERFACE_DEFINED__ */
258
259#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
260/* Begin additional prototypes for all interfaces */
261
262ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
263unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
264unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
265void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
266ULONG           __RPC_USER LPSAFEARRAY_UserSize     (ULONG *, ULONG, LPSAFEARRAY *);
267unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal  (ULONG *, unsigned char *, LPSAFEARRAY *);
268unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *);
269void            __RPC_USER LPSAFEARRAY_UserFree     (ULONG *, LPSAFEARRAY *);
270
271/* End additional prototypes */
272
273#ifdef __cplusplus
274}
275#endif
276
277#endif /* __filter_h__ */