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