1 /*** Autogenerated by WIDL 1.6 from include/wsddisco.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 __wsddisco_h__
16 #define __wsddisco_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IWSDScopeMatchingRule_FWD_DEFINED__
21 #define __IWSDScopeMatchingRule_FWD_DEFINED__
22 typedef interface IWSDScopeMatchingRule IWSDScopeMatchingRule;
23 #endif
24 
25 #ifndef __IWSDiscoveryProviderNotify_FWD_DEFINED__
26 #define __IWSDiscoveryProviderNotify_FWD_DEFINED__
27 typedef interface IWSDiscoveryProviderNotify IWSDiscoveryProviderNotify;
28 #endif
29 
30 #ifndef __IWSDiscoveryProvider_FWD_DEFINED__
31 #define __IWSDiscoveryProvider_FWD_DEFINED__
32 typedef interface IWSDiscoveryProvider IWSDiscoveryProvider;
33 #endif
34 
35 #ifndef __IWSDiscoveredService_FWD_DEFINED__
36 #define __IWSDiscoveredService_FWD_DEFINED__
37 typedef interface IWSDiscoveredService IWSDiscoveredService;
38 #endif
39 
40 #ifndef __IWSDiscoveryPublisherNotify_FWD_DEFINED__
41 #define __IWSDiscoveryPublisherNotify_FWD_DEFINED__
42 typedef interface IWSDiscoveryPublisherNotify IWSDiscoveryPublisherNotify;
43 #endif
44 
45 #ifndef __IWSDiscoveryPublisher_FWD_DEFINED__
46 #define __IWSDiscoveryPublisher_FWD_DEFINED__
47 typedef interface IWSDiscoveryPublisher IWSDiscoveryPublisher;
48 #endif
49 
50 /* Headers for imported files */
51 
52 #include <objidl.h>
53 #include <wsdxmldom.h>
54 #include <wsdtypes.h>
55 
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59 
60 #include <winapifamily.h>
61 
62 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
63 
64 #ifndef __IWSDXMLContext_FWD_DEFINED__
65 #define __IWSDXMLContext_FWD_DEFINED__
66 typedef interface IWSDXMLContext IWSDXMLContext;
67 #endif
68 
69 #ifndef __IWSDiscoveryProvider_FWD_DEFINED__
70 #define __IWSDiscoveryProvider_FWD_DEFINED__
71 typedef interface IWSDiscoveryProvider IWSDiscoveryProvider;
72 #endif
73 
74 #ifndef __IWSDiscoveryProviderNotify_FWD_DEFINED__
75 #define __IWSDiscoveryProviderNotify_FWD_DEFINED__
76 typedef interface IWSDiscoveryProviderNotify IWSDiscoveryProviderNotify;
77 #endif
78 
79 #ifndef __IWSDiscoveredService_FWD_DEFINED__
80 #define __IWSDiscoveredService_FWD_DEFINED__
81 typedef interface IWSDiscoveredService IWSDiscoveredService;
82 #endif
83 
84 #ifndef __IWSDiscoveryPublisher_FWD_DEFINED__
85 #define __IWSDiscoveryPublisher_FWD_DEFINED__
86 typedef interface IWSDiscoveryPublisher IWSDiscoveryPublisher;
87 #endif
88 
89 #ifndef __IWSDiscoveryPublisherNotify_FWD_DEFINED__
90 #define __IWSDiscoveryPublisherNotify_FWD_DEFINED__
91 typedef interface IWSDiscoveryPublisherNotify IWSDiscoveryPublisherNotify;
92 #endif
93 
94 #ifndef __IWSDScopeMatchingRule_FWD_DEFINED__
95 #define __IWSDScopeMatchingRule_FWD_DEFINED__
96 typedef interface IWSDScopeMatchingRule IWSDScopeMatchingRule;
97 #endif
98 
99 /*****************************************************************************
100  * IWSDScopeMatchingRule interface
101  */
102 #ifndef __IWSDScopeMatchingRule_INTERFACE_DEFINED__
103 #define __IWSDScopeMatchingRule_INTERFACE_DEFINED__
104 
105 DEFINE_GUID(IID_IWSDScopeMatchingRule, 0xfcafe424, 0xfef5, 0x481a, 0xbd,0x9f, 0x33,0xce,0x05,0x74,0x25,0x6f);
106 #if defined(__cplusplus) && !defined(CINTERFACE)
107 MIDL_INTERFACE("fcafe424-fef5-481a-bd9f-33ce0574256f")
108 IWSDScopeMatchingRule : public IUnknown
109 {
110     virtual HRESULT STDMETHODCALLTYPE GetScopeRule(
111         LPCWSTR *ppszScopeMatchingRule) = 0;
112 
113     virtual HRESULT STDMETHODCALLTYPE MatchScopes(
114         LPCWSTR pszScope1,
115         LPCWSTR pszScope2,
116         WINBOOL *pfMatch) = 0;
117 
118 };
119 #ifdef __CRT_UUID_DECL
120 __CRT_UUID_DECL(IWSDScopeMatchingRule, 0xfcafe424, 0xfef5, 0x481a, 0xbd,0x9f, 0x33,0xce,0x05,0x74,0x25,0x6f)
121 #endif
122 #else
123 typedef struct IWSDScopeMatchingRuleVtbl {
124     BEGIN_INTERFACE
125 
126     /*** IUnknown methods ***/
127     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
128         IWSDScopeMatchingRule* This,
129         REFIID riid,
130         void **ppvObject);
131 
132     ULONG (STDMETHODCALLTYPE *AddRef)(
133         IWSDScopeMatchingRule* This);
134 
135     ULONG (STDMETHODCALLTYPE *Release)(
136         IWSDScopeMatchingRule* This);
137 
138     /*** IWSDScopeMatchingRule methods ***/
139     HRESULT (STDMETHODCALLTYPE *GetScopeRule)(
140         IWSDScopeMatchingRule* This,
141         LPCWSTR *ppszScopeMatchingRule);
142 
143     HRESULT (STDMETHODCALLTYPE *MatchScopes)(
144         IWSDScopeMatchingRule* This,
145         LPCWSTR pszScope1,
146         LPCWSTR pszScope2,
147         WINBOOL *pfMatch);
148 
149     END_INTERFACE
150 } IWSDScopeMatchingRuleVtbl;
151 interface IWSDScopeMatchingRule {
152     CONST_VTBL IWSDScopeMatchingRuleVtbl* lpVtbl;
153 };
154 
155 #ifdef COBJMACROS
156 #ifndef WIDL_C_INLINE_WRAPPERS
157 /*** IUnknown methods ***/
158 #define IWSDScopeMatchingRule_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
159 #define IWSDScopeMatchingRule_AddRef(This) (This)->lpVtbl->AddRef(This)
160 #define IWSDScopeMatchingRule_Release(This) (This)->lpVtbl->Release(This)
161 /*** IWSDScopeMatchingRule methods ***/
162 #define IWSDScopeMatchingRule_GetScopeRule(This,ppszScopeMatchingRule) (This)->lpVtbl->GetScopeRule(This,ppszScopeMatchingRule)
163 #define IWSDScopeMatchingRule_MatchScopes(This,pszScope1,pszScope2,pfMatch) (This)->lpVtbl->MatchScopes(This,pszScope1,pszScope2,pfMatch)
164 #else
165 /*** IUnknown methods ***/
166 static FORCEINLINE HRESULT IWSDScopeMatchingRule_QueryInterface(IWSDScopeMatchingRule* This,REFIID riid,void **ppvObject) {
167     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
168 }
169 static FORCEINLINE ULONG IWSDScopeMatchingRule_AddRef(IWSDScopeMatchingRule* This) {
170     return This->lpVtbl->AddRef(This);
171 }
172 static FORCEINLINE ULONG IWSDScopeMatchingRule_Release(IWSDScopeMatchingRule* This) {
173     return This->lpVtbl->Release(This);
174 }
175 /*** IWSDScopeMatchingRule methods ***/
176 static FORCEINLINE HRESULT IWSDScopeMatchingRule_GetScopeRule(IWSDScopeMatchingRule* This,LPCWSTR *ppszScopeMatchingRule) {
177     return This->lpVtbl->GetScopeRule(This,ppszScopeMatchingRule);
178 }
179 static FORCEINLINE HRESULT IWSDScopeMatchingRule_MatchScopes(IWSDScopeMatchingRule* This,LPCWSTR pszScope1,LPCWSTR pszScope2,WINBOOL *pfMatch) {
180     return This->lpVtbl->MatchScopes(This,pszScope1,pszScope2,pfMatch);
181 }
182 #endif
183 #endif
184 
185 #endif
186 
187 HRESULT STDMETHODCALLTYPE IWSDScopeMatchingRule_GetScopeRule_Proxy(
188     IWSDScopeMatchingRule* This,
189     LPCWSTR *ppszScopeMatchingRule);
190 void __RPC_STUB IWSDScopeMatchingRule_GetScopeRule_Stub(
191     IRpcStubBuffer* This,
192     IRpcChannelBuffer* pRpcChannelBuffer,
193     PRPC_MESSAGE pRpcMessage,
194     DWORD* pdwStubPhase);
195 HRESULT STDMETHODCALLTYPE IWSDScopeMatchingRule_MatchScopes_Proxy(
196     IWSDScopeMatchingRule* This,
197     LPCWSTR pszScope1,
198     LPCWSTR pszScope2,
199     WINBOOL *pfMatch);
200 void __RPC_STUB IWSDScopeMatchingRule_MatchScopes_Stub(
201     IRpcStubBuffer* This,
202     IRpcChannelBuffer* pRpcChannelBuffer,
203     PRPC_MESSAGE pRpcMessage,
204     DWORD* pdwStubPhase);
205 
206 #endif  /* __IWSDScopeMatchingRule_INTERFACE_DEFINED__ */
207 
208 /*****************************************************************************
209  * IWSDiscoveryProviderNotify interface
210  */
211 #ifndef __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__
212 #define __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__
213 
214 DEFINE_GUID(IID_IWSDiscoveryProviderNotify, 0x73ee3ced, 0xb6e6, 0x4329, 0xa5,0x46, 0x3e,0x8a,0xd4,0x65,0x63,0xd2);
215 #if defined(__cplusplus) && !defined(CINTERFACE)
216 MIDL_INTERFACE("73ee3ced-b6e6-4329-a546-3e8ad46563d2")
217 IWSDiscoveryProviderNotify : public IUnknown
218 {
219     virtual HRESULT STDMETHODCALLTYPE Add(
220         IWSDiscoveredService *pService) = 0;
221 
222     virtual HRESULT STDMETHODCALLTYPE Remove(
223         IWSDiscoveredService *pService) = 0;
224 
225     virtual HRESULT STDMETHODCALLTYPE SearchFailed(
226         HRESULT hr,
227         LPCWSTR pszTag) = 0;
228 
229     virtual HRESULT STDMETHODCALLTYPE SearchComplete(
230         LPCWSTR pszTag) = 0;
231 
232 };
233 #ifdef __CRT_UUID_DECL
234 __CRT_UUID_DECL(IWSDiscoveryProviderNotify, 0x73ee3ced, 0xb6e6, 0x4329, 0xa5,0x46, 0x3e,0x8a,0xd4,0x65,0x63,0xd2)
235 #endif
236 #else
237 typedef struct IWSDiscoveryProviderNotifyVtbl {
238     BEGIN_INTERFACE
239 
240     /*** IUnknown methods ***/
241     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
242         IWSDiscoveryProviderNotify* This,
243         REFIID riid,
244         void **ppvObject);
245 
246     ULONG (STDMETHODCALLTYPE *AddRef)(
247         IWSDiscoveryProviderNotify* This);
248 
249     ULONG (STDMETHODCALLTYPE *Release)(
250         IWSDiscoveryProviderNotify* This);
251 
252     /*** IWSDiscoveryProviderNotify methods ***/
253     HRESULT (STDMETHODCALLTYPE *Add)(
254         IWSDiscoveryProviderNotify* This,
255         IWSDiscoveredService *pService);
256 
257     HRESULT (STDMETHODCALLTYPE *Remove)(
258         IWSDiscoveryProviderNotify* This,
259         IWSDiscoveredService *pService);
260 
261     HRESULT (STDMETHODCALLTYPE *SearchFailed)(
262         IWSDiscoveryProviderNotify* This,
263         HRESULT hr,
264         LPCWSTR pszTag);
265 
266     HRESULT (STDMETHODCALLTYPE *SearchComplete)(
267         IWSDiscoveryProviderNotify* This,
268         LPCWSTR pszTag);
269 
270     END_INTERFACE
271 } IWSDiscoveryProviderNotifyVtbl;
272 interface IWSDiscoveryProviderNotify {
273     CONST_VTBL IWSDiscoveryProviderNotifyVtbl* lpVtbl;
274 };
275 
276 #ifdef COBJMACROS
277 #ifndef WIDL_C_INLINE_WRAPPERS
278 /*** IUnknown methods ***/
279 #define IWSDiscoveryProviderNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
280 #define IWSDiscoveryProviderNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
281 #define IWSDiscoveryProviderNotify_Release(This) (This)->lpVtbl->Release(This)
282 /*** IWSDiscoveryProviderNotify methods ***/
283 #define IWSDiscoveryProviderNotify_Add(This,pService) (This)->lpVtbl->Add(This,pService)
284 #define IWSDiscoveryProviderNotify_Remove(This,pService) (This)->lpVtbl->Remove(This,pService)
285 #define IWSDiscoveryProviderNotify_SearchFailed(This,hr,pszTag) (This)->lpVtbl->SearchFailed(This,hr,pszTag)
286 #define IWSDiscoveryProviderNotify_SearchComplete(This,pszTag) (This)->lpVtbl->SearchComplete(This,pszTag)
287 #else
288 /*** IUnknown methods ***/
289 static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_QueryInterface(IWSDiscoveryProviderNotify* This,REFIID riid,void **ppvObject) {
290     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
291 }
292 static FORCEINLINE ULONG IWSDiscoveryProviderNotify_AddRef(IWSDiscoveryProviderNotify* This) {
293     return This->lpVtbl->AddRef(This);
294 }
295 static FORCEINLINE ULONG IWSDiscoveryProviderNotify_Release(IWSDiscoveryProviderNotify* This) {
296     return This->lpVtbl->Release(This);
297 }
298 /*** IWSDiscoveryProviderNotify methods ***/
299 static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_Add(IWSDiscoveryProviderNotify* This,IWSDiscoveredService *pService) {
300     return This->lpVtbl->Add(This,pService);
301 }
302 static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_Remove(IWSDiscoveryProviderNotify* This,IWSDiscoveredService *pService) {
303     return This->lpVtbl->Remove(This,pService);
304 }
305 static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_SearchFailed(IWSDiscoveryProviderNotify* This,HRESULT hr,LPCWSTR pszTag) {
306     return This->lpVtbl->SearchFailed(This,hr,pszTag);
307 }
308 static FORCEINLINE HRESULT IWSDiscoveryProviderNotify_SearchComplete(IWSDiscoveryProviderNotify* This,LPCWSTR pszTag) {
309     return This->lpVtbl->SearchComplete(This,pszTag);
310 }
311 #endif
312 #endif
313 
314 #endif
315 
316 HRESULT STDMETHODCALLTYPE IWSDiscoveryProviderNotify_Add_Proxy(
317     IWSDiscoveryProviderNotify* This,
318     IWSDiscoveredService *pService);
319 void __RPC_STUB IWSDiscoveryProviderNotify_Add_Stub(
320     IRpcStubBuffer* This,
321     IRpcChannelBuffer* pRpcChannelBuffer,
322     PRPC_MESSAGE pRpcMessage,
323     DWORD* pdwStubPhase);
324 HRESULT STDMETHODCALLTYPE IWSDiscoveryProviderNotify_Remove_Proxy(
325     IWSDiscoveryProviderNotify* This,
326     IWSDiscoveredService *pService);
327 void __RPC_STUB IWSDiscoveryProviderNotify_Remove_Stub(
328     IRpcStubBuffer* This,
329     IRpcChannelBuffer* pRpcChannelBuffer,
330     PRPC_MESSAGE pRpcMessage,
331     DWORD* pdwStubPhase);
332 HRESULT STDMETHODCALLTYPE IWSDiscoveryProviderNotify_SearchFailed_Proxy(
333     IWSDiscoveryProviderNotify* This,
334     HRESULT hr,
335     LPCWSTR pszTag);
336 void __RPC_STUB IWSDiscoveryProviderNotify_SearchFailed_Stub(
337     IRpcStubBuffer* This,
338     IRpcChannelBuffer* pRpcChannelBuffer,
339     PRPC_MESSAGE pRpcMessage,
340     DWORD* pdwStubPhase);
341 HRESULT STDMETHODCALLTYPE IWSDiscoveryProviderNotify_SearchComplete_Proxy(
342     IWSDiscoveryProviderNotify* This,
343     LPCWSTR pszTag);
344 void __RPC_STUB IWSDiscoveryProviderNotify_SearchComplete_Stub(
345     IRpcStubBuffer* This,
346     IRpcChannelBuffer* pRpcChannelBuffer,
347     PRPC_MESSAGE pRpcMessage,
348     DWORD* pdwStubPhase);
349 
350 #endif  /* __IWSDiscoveryProviderNotify_INTERFACE_DEFINED__ */
351 
352 /*****************************************************************************
353  * IWSDiscoveryProvider interface
354  */
355 #ifndef __IWSDiscoveryProvider_INTERFACE_DEFINED__
356 #define __IWSDiscoveryProvider_INTERFACE_DEFINED__
357 
358 DEFINE_GUID(IID_IWSDiscoveryProvider, 0x8ffc8e55, 0xf0eb, 0x480f, 0x88,0xb7, 0xb4,0x35,0xdd,0x28,0x1d,0x45);
359 #if defined(__cplusplus) && !defined(CINTERFACE)
360 MIDL_INTERFACE("8ffc8e55-f0eb-480f-88b7-b435dd281d45")
361 IWSDiscoveryProvider : public IUnknown
362 {
363     virtual HRESULT STDMETHODCALLTYPE SetAddressFamily(
364         DWORD dwAddressFamily) = 0;
365 
366     virtual HRESULT STDMETHODCALLTYPE Attach(
367         IWSDiscoveryProviderNotify *pSink) = 0;
368 
369     virtual HRESULT STDMETHODCALLTYPE Detach(
370         ) = 0;
371 
372     virtual HRESULT STDMETHODCALLTYPE SearchById(
373         LPCWSTR pszId,
374         LPCWSTR pszTag) = 0;
375 
376     virtual HRESULT STDMETHODCALLTYPE SearchByAddress(
377         LPCWSTR pszAddress,
378         LPCWSTR pszTag) = 0;
379 
380     virtual HRESULT STDMETHODCALLTYPE SearchByType(
381         const WSD_NAME_LIST *pTypesList,
382         const WSD_URI_LIST *pScopesList,
383         LPCWSTR pszMatchBy,
384         LPCWSTR pszTag) = 0;
385 
386     virtual HRESULT STDMETHODCALLTYPE GetXMLContext(
387         IWSDXMLContext **ppContext) = 0;
388 
389 };
390 #ifdef __CRT_UUID_DECL
391 __CRT_UUID_DECL(IWSDiscoveryProvider, 0x8ffc8e55, 0xf0eb, 0x480f, 0x88,0xb7, 0xb4,0x35,0xdd,0x28,0x1d,0x45)
392 #endif
393 #else
394 typedef struct IWSDiscoveryProviderVtbl {
395     BEGIN_INTERFACE
396 
397     /*** IUnknown methods ***/
398     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
399         IWSDiscoveryProvider* This,
400         REFIID riid,
401         void **ppvObject);
402 
403     ULONG (STDMETHODCALLTYPE *AddRef)(
404         IWSDiscoveryProvider* This);
405 
406     ULONG (STDMETHODCALLTYPE *Release)(
407         IWSDiscoveryProvider* This);
408 
409     /*** IWSDiscoveryProvider methods ***/
410     HRESULT (STDMETHODCALLTYPE *SetAddressFamily)(
411         IWSDiscoveryProvider* This,
412         DWORD dwAddressFamily);
413 
414     HRESULT (STDMETHODCALLTYPE *Attach)(
415         IWSDiscoveryProvider* This,
416         IWSDiscoveryProviderNotify *pSink);
417 
418     HRESULT (STDMETHODCALLTYPE *Detach)(
419         IWSDiscoveryProvider* This);
420 
421     HRESULT (STDMETHODCALLTYPE *SearchById)(
422         IWSDiscoveryProvider* This,
423         LPCWSTR pszId,
424         LPCWSTR pszTag);
425 
426     HRESULT (STDMETHODCALLTYPE *SearchByAddress)(
427         IWSDiscoveryProvider* This,
428         LPCWSTR pszAddress,
429         LPCWSTR pszTag);
430 
431     HRESULT (STDMETHODCALLTYPE *SearchByType)(
432         IWSDiscoveryProvider* This,
433         const WSD_NAME_LIST *pTypesList,
434         const WSD_URI_LIST *pScopesList,
435         LPCWSTR pszMatchBy,
436         LPCWSTR pszTag);
437 
438     HRESULT (STDMETHODCALLTYPE *GetXMLContext)(
439         IWSDiscoveryProvider* This,
440         IWSDXMLContext **ppContext);
441 
442     END_INTERFACE
443 } IWSDiscoveryProviderVtbl;
444 interface IWSDiscoveryProvider {
445     CONST_VTBL IWSDiscoveryProviderVtbl* lpVtbl;
446 };
447 
448 #ifdef COBJMACROS
449 #ifndef WIDL_C_INLINE_WRAPPERS
450 /*** IUnknown methods ***/
451 #define IWSDiscoveryProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
452 #define IWSDiscoveryProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
453 #define IWSDiscoveryProvider_Release(This) (This)->lpVtbl->Release(This)
454 /*** IWSDiscoveryProvider methods ***/
455 #define IWSDiscoveryProvider_SetAddressFamily(This,dwAddressFamily) (This)->lpVtbl->SetAddressFamily(This,dwAddressFamily)
456 #define IWSDiscoveryProvider_Attach(This,pSink) (This)->lpVtbl->Attach(This,pSink)
457 #define IWSDiscoveryProvider_Detach(This) (This)->lpVtbl->Detach(This)
458 #define IWSDiscoveryProvider_SearchById(This,pszId,pszTag) (This)->lpVtbl->SearchById(This,pszId,pszTag)
459 #define IWSDiscoveryProvider_SearchByAddress(This,pszAddress,pszTag) (This)->lpVtbl->SearchByAddress(This,pszAddress,pszTag)
460 #define IWSDiscoveryProvider_SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag) (This)->lpVtbl->SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag)
461 #define IWSDiscoveryProvider_GetXMLContext(This,ppContext) (This)->lpVtbl->GetXMLContext(This,ppContext)
462 #else
463 /*** IUnknown methods ***/
464 static FORCEINLINE HRESULT IWSDiscoveryProvider_QueryInterface(IWSDiscoveryProvider* This,REFIID riid,void **ppvObject) {
465     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
466 }
467 static FORCEINLINE ULONG IWSDiscoveryProvider_AddRef(IWSDiscoveryProvider* This) {
468     return This->lpVtbl->AddRef(This);
469 }
470 static FORCEINLINE ULONG IWSDiscoveryProvider_Release(IWSDiscoveryProvider* This) {
471     return This->lpVtbl->Release(This);
472 }
473 /*** IWSDiscoveryProvider methods ***/
474 static FORCEINLINE HRESULT IWSDiscoveryProvider_SetAddressFamily(IWSDiscoveryProvider* This,DWORD dwAddressFamily) {
475     return This->lpVtbl->SetAddressFamily(This,dwAddressFamily);
476 }
477 static FORCEINLINE HRESULT IWSDiscoveryProvider_Attach(IWSDiscoveryProvider* This,IWSDiscoveryProviderNotify *pSink) {
478     return This->lpVtbl->Attach(This,pSink);
479 }
480 static FORCEINLINE HRESULT IWSDiscoveryProvider_Detach(IWSDiscoveryProvider* This) {
481     return This->lpVtbl->Detach(This);
482 }
483 static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchById(IWSDiscoveryProvider* This,LPCWSTR pszId,LPCWSTR pszTag) {
484     return This->lpVtbl->SearchById(This,pszId,pszTag);
485 }
486 static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchByAddress(IWSDiscoveryProvider* This,LPCWSTR pszAddress,LPCWSTR pszTag) {
487     return This->lpVtbl->SearchByAddress(This,pszAddress,pszTag);
488 }
489 static FORCEINLINE HRESULT IWSDiscoveryProvider_SearchByType(IWSDiscoveryProvider* This,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,LPCWSTR pszMatchBy,LPCWSTR pszTag) {
490     return This->lpVtbl->SearchByType(This,pTypesList,pScopesList,pszMatchBy,pszTag);
491 }
492 static FORCEINLINE HRESULT IWSDiscoveryProvider_GetXMLContext(IWSDiscoveryProvider* This,IWSDXMLContext **ppContext) {
493     return This->lpVtbl->GetXMLContext(This,ppContext);
494 }
495 #endif
496 #endif
497 
498 #endif
499 
500 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_SetAddressFamily_Proxy(
501     IWSDiscoveryProvider* This,
502     DWORD dwAddressFamily);
503 void __RPC_STUB IWSDiscoveryProvider_SetAddressFamily_Stub(
504     IRpcStubBuffer* This,
505     IRpcChannelBuffer* pRpcChannelBuffer,
506     PRPC_MESSAGE pRpcMessage,
507     DWORD* pdwStubPhase);
508 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_Attach_Proxy(
509     IWSDiscoveryProvider* This,
510     IWSDiscoveryProviderNotify *pSink);
511 void __RPC_STUB IWSDiscoveryProvider_Attach_Stub(
512     IRpcStubBuffer* This,
513     IRpcChannelBuffer* pRpcChannelBuffer,
514     PRPC_MESSAGE pRpcMessage,
515     DWORD* pdwStubPhase);
516 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_Detach_Proxy(
517     IWSDiscoveryProvider* This);
518 void __RPC_STUB IWSDiscoveryProvider_Detach_Stub(
519     IRpcStubBuffer* This,
520     IRpcChannelBuffer* pRpcChannelBuffer,
521     PRPC_MESSAGE pRpcMessage,
522     DWORD* pdwStubPhase);
523 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_SearchById_Proxy(
524     IWSDiscoveryProvider* This,
525     LPCWSTR pszId,
526     LPCWSTR pszTag);
527 void __RPC_STUB IWSDiscoveryProvider_SearchById_Stub(
528     IRpcStubBuffer* This,
529     IRpcChannelBuffer* pRpcChannelBuffer,
530     PRPC_MESSAGE pRpcMessage,
531     DWORD* pdwStubPhase);
532 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_SearchByAddress_Proxy(
533     IWSDiscoveryProvider* This,
534     LPCWSTR pszAddress,
535     LPCWSTR pszTag);
536 void __RPC_STUB IWSDiscoveryProvider_SearchByAddress_Stub(
537     IRpcStubBuffer* This,
538     IRpcChannelBuffer* pRpcChannelBuffer,
539     PRPC_MESSAGE pRpcMessage,
540     DWORD* pdwStubPhase);
541 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_SearchByType_Proxy(
542     IWSDiscoveryProvider* This,
543     const WSD_NAME_LIST *pTypesList,
544     const WSD_URI_LIST *pScopesList,
545     LPCWSTR pszMatchBy,
546     LPCWSTR pszTag);
547 void __RPC_STUB IWSDiscoveryProvider_SearchByType_Stub(
548     IRpcStubBuffer* This,
549     IRpcChannelBuffer* pRpcChannelBuffer,
550     PRPC_MESSAGE pRpcMessage,
551     DWORD* pdwStubPhase);
552 HRESULT STDMETHODCALLTYPE IWSDiscoveryProvider_GetXMLContext_Proxy(
553     IWSDiscoveryProvider* This,
554     IWSDXMLContext **ppContext);
555 void __RPC_STUB IWSDiscoveryProvider_GetXMLContext_Stub(
556     IRpcStubBuffer* This,
557     IRpcChannelBuffer* pRpcChannelBuffer,
558     PRPC_MESSAGE pRpcMessage,
559     DWORD* pdwStubPhase);
560 
561 #endif  /* __IWSDiscoveryProvider_INTERFACE_DEFINED__ */
562 
563 /*****************************************************************************
564  * IWSDiscoveredService interface
565  */
566 #ifndef __IWSDiscoveredService_INTERFACE_DEFINED__
567 #define __IWSDiscoveredService_INTERFACE_DEFINED__
568 
569 DEFINE_GUID(IID_IWSDiscoveredService, 0x4bad8a3b, 0xb374, 0x4420, 0x96,0x32, 0xaa,0xc9,0x45,0xb3,0x74,0xaa);
570 #if defined(__cplusplus) && !defined(CINTERFACE)
571 MIDL_INTERFACE("4bad8a3b-b374-4420-9632-aac945b374aa")
572 IWSDiscoveredService : public IUnknown
573 {
574     virtual HRESULT STDMETHODCALLTYPE GetEndpointReference(
575         WSD_ENDPOINT_REFERENCE **ppEndpointReference) = 0;
576 
577     virtual HRESULT STDMETHODCALLTYPE GetTypes(
578         WSD_NAME_LIST **ppTypesList) = 0;
579 
580     virtual HRESULT STDMETHODCALLTYPE GetScopes(
581         WSD_URI_LIST **ppScopesList) = 0;
582 
583     virtual HRESULT STDMETHODCALLTYPE GetXAddrs(
584         WSD_URI_LIST **ppXAddrsList) = 0;
585 
586     virtual HRESULT STDMETHODCALLTYPE GetMetadataVersion(
587         ULONGLONG *pullMetadataVersion) = 0;
588 
589     virtual HRESULT STDMETHODCALLTYPE GetExtendedDiscoXML(
590         WSDXML_ELEMENT **ppHeaderAny,
591         WSDXML_ELEMENT **ppBodyAny) = 0;
592 
593     virtual HRESULT STDMETHODCALLTYPE GetProbeResolveTag(
594         LPCWSTR *ppszTag) = 0;
595 
596     virtual HRESULT STDMETHODCALLTYPE GetRemoteTransportAddress(
597         LPCWSTR *ppszRemoteTransportAddress) = 0;
598 
599     virtual HRESULT STDMETHODCALLTYPE GetLocalTransportAddress(
600         LPCWSTR *ppszLocalTransportAddress) = 0;
601 
602     virtual HRESULT STDMETHODCALLTYPE GetLocalInterfaceGUID(
603         GUID *pGuid) = 0;
604 
605     virtual HRESULT STDMETHODCALLTYPE GetInstanceId(
606         ULONGLONG *pullInstanceId) = 0;
607 
608 };
609 #ifdef __CRT_UUID_DECL
610 __CRT_UUID_DECL(IWSDiscoveredService, 0x4bad8a3b, 0xb374, 0x4420, 0x96,0x32, 0xaa,0xc9,0x45,0xb3,0x74,0xaa)
611 #endif
612 #else
613 typedef struct IWSDiscoveredServiceVtbl {
614     BEGIN_INTERFACE
615 
616     /*** IUnknown methods ***/
617     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
618         IWSDiscoveredService* This,
619         REFIID riid,
620         void **ppvObject);
621 
622     ULONG (STDMETHODCALLTYPE *AddRef)(
623         IWSDiscoveredService* This);
624 
625     ULONG (STDMETHODCALLTYPE *Release)(
626         IWSDiscoveredService* This);
627 
628     /*** IWSDiscoveredService methods ***/
629     HRESULT (STDMETHODCALLTYPE *GetEndpointReference)(
630         IWSDiscoveredService* This,
631         WSD_ENDPOINT_REFERENCE **ppEndpointReference);
632 
633     HRESULT (STDMETHODCALLTYPE *GetTypes)(
634         IWSDiscoveredService* This,
635         WSD_NAME_LIST **ppTypesList);
636 
637     HRESULT (STDMETHODCALLTYPE *GetScopes)(
638         IWSDiscoveredService* This,
639         WSD_URI_LIST **ppScopesList);
640 
641     HRESULT (STDMETHODCALLTYPE *GetXAddrs)(
642         IWSDiscoveredService* This,
643         WSD_URI_LIST **ppXAddrsList);
644 
645     HRESULT (STDMETHODCALLTYPE *GetMetadataVersion)(
646         IWSDiscoveredService* This,
647         ULONGLONG *pullMetadataVersion);
648 
649     HRESULT (STDMETHODCALLTYPE *GetExtendedDiscoXML)(
650         IWSDiscoveredService* This,
651         WSDXML_ELEMENT **ppHeaderAny,
652         WSDXML_ELEMENT **ppBodyAny);
653 
654     HRESULT (STDMETHODCALLTYPE *GetProbeResolveTag)(
655         IWSDiscoveredService* This,
656         LPCWSTR *ppszTag);
657 
658     HRESULT (STDMETHODCALLTYPE *GetRemoteTransportAddress)(
659         IWSDiscoveredService* This,
660         LPCWSTR *ppszRemoteTransportAddress);
661 
662     HRESULT (STDMETHODCALLTYPE *GetLocalTransportAddress)(
663         IWSDiscoveredService* This,
664         LPCWSTR *ppszLocalTransportAddress);
665 
666     HRESULT (STDMETHODCALLTYPE *GetLocalInterfaceGUID)(
667         IWSDiscoveredService* This,
668         GUID *pGuid);
669 
670     HRESULT (STDMETHODCALLTYPE *GetInstanceId)(
671         IWSDiscoveredService* This,
672         ULONGLONG *pullInstanceId);
673 
674     END_INTERFACE
675 } IWSDiscoveredServiceVtbl;
676 interface IWSDiscoveredService {
677     CONST_VTBL IWSDiscoveredServiceVtbl* lpVtbl;
678 };
679 
680 #ifdef COBJMACROS
681 #ifndef WIDL_C_INLINE_WRAPPERS
682 /*** IUnknown methods ***/
683 #define IWSDiscoveredService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
684 #define IWSDiscoveredService_AddRef(This) (This)->lpVtbl->AddRef(This)
685 #define IWSDiscoveredService_Release(This) (This)->lpVtbl->Release(This)
686 /*** IWSDiscoveredService methods ***/
687 #define IWSDiscoveredService_GetEndpointReference(This,ppEndpointReference) (This)->lpVtbl->GetEndpointReference(This,ppEndpointReference)
688 #define IWSDiscoveredService_GetTypes(This,ppTypesList) (This)->lpVtbl->GetTypes(This,ppTypesList)
689 #define IWSDiscoveredService_GetScopes(This,ppScopesList) (This)->lpVtbl->GetScopes(This,ppScopesList)
690 #define IWSDiscoveredService_GetXAddrs(This,ppXAddrsList) (This)->lpVtbl->GetXAddrs(This,ppXAddrsList)
691 #define IWSDiscoveredService_GetMetadataVersion(This,pullMetadataVersion) (This)->lpVtbl->GetMetadataVersion(This,pullMetadataVersion)
692 #define IWSDiscoveredService_GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny) (This)->lpVtbl->GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny)
693 #define IWSDiscoveredService_GetProbeResolveTag(This,ppszTag) (This)->lpVtbl->GetProbeResolveTag(This,ppszTag)
694 #define IWSDiscoveredService_GetRemoteTransportAddress(This,ppszRemoteTransportAddress) (This)->lpVtbl->GetRemoteTransportAddress(This,ppszRemoteTransportAddress)
695 #define IWSDiscoveredService_GetLocalTransportAddress(This,ppszLocalTransportAddress) (This)->lpVtbl->GetLocalTransportAddress(This,ppszLocalTransportAddress)
696 #define IWSDiscoveredService_GetLocalInterfaceGUID(This,pGuid) (This)->lpVtbl->GetLocalInterfaceGUID(This,pGuid)
697 #define IWSDiscoveredService_GetInstanceId(This,pullInstanceId) (This)->lpVtbl->GetInstanceId(This,pullInstanceId)
698 #else
699 /*** IUnknown methods ***/
700 static FORCEINLINE HRESULT IWSDiscoveredService_QueryInterface(IWSDiscoveredService* This,REFIID riid,void **ppvObject) {
701     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
702 }
703 static FORCEINLINE ULONG IWSDiscoveredService_AddRef(IWSDiscoveredService* This) {
704     return This->lpVtbl->AddRef(This);
705 }
706 static FORCEINLINE ULONG IWSDiscoveredService_Release(IWSDiscoveredService* This) {
707     return This->lpVtbl->Release(This);
708 }
709 /*** IWSDiscoveredService methods ***/
710 static FORCEINLINE HRESULT IWSDiscoveredService_GetEndpointReference(IWSDiscoveredService* This,WSD_ENDPOINT_REFERENCE **ppEndpointReference) {
711     return This->lpVtbl->GetEndpointReference(This,ppEndpointReference);
712 }
713 static FORCEINLINE HRESULT IWSDiscoveredService_GetTypes(IWSDiscoveredService* This,WSD_NAME_LIST **ppTypesList) {
714     return This->lpVtbl->GetTypes(This,ppTypesList);
715 }
716 static FORCEINLINE HRESULT IWSDiscoveredService_GetScopes(IWSDiscoveredService* This,WSD_URI_LIST **ppScopesList) {
717     return This->lpVtbl->GetScopes(This,ppScopesList);
718 }
719 static FORCEINLINE HRESULT IWSDiscoveredService_GetXAddrs(IWSDiscoveredService* This,WSD_URI_LIST **ppXAddrsList) {
720     return This->lpVtbl->GetXAddrs(This,ppXAddrsList);
721 }
722 static FORCEINLINE HRESULT IWSDiscoveredService_GetMetadataVersion(IWSDiscoveredService* This,ULONGLONG *pullMetadataVersion) {
723     return This->lpVtbl->GetMetadataVersion(This,pullMetadataVersion);
724 }
725 static FORCEINLINE HRESULT IWSDiscoveredService_GetExtendedDiscoXML(IWSDiscoveredService* This,WSDXML_ELEMENT **ppHeaderAny,WSDXML_ELEMENT **ppBodyAny) {
726     return This->lpVtbl->GetExtendedDiscoXML(This,ppHeaderAny,ppBodyAny);
727 }
728 static FORCEINLINE HRESULT IWSDiscoveredService_GetProbeResolveTag(IWSDiscoveredService* This,LPCWSTR *ppszTag) {
729     return This->lpVtbl->GetProbeResolveTag(This,ppszTag);
730 }
731 static FORCEINLINE HRESULT IWSDiscoveredService_GetRemoteTransportAddress(IWSDiscoveredService* This,LPCWSTR *ppszRemoteTransportAddress) {
732     return This->lpVtbl->GetRemoteTransportAddress(This,ppszRemoteTransportAddress);
733 }
734 static FORCEINLINE HRESULT IWSDiscoveredService_GetLocalTransportAddress(IWSDiscoveredService* This,LPCWSTR *ppszLocalTransportAddress) {
735     return This->lpVtbl->GetLocalTransportAddress(This,ppszLocalTransportAddress);
736 }
737 static FORCEINLINE HRESULT IWSDiscoveredService_GetLocalInterfaceGUID(IWSDiscoveredService* This,GUID *pGuid) {
738     return This->lpVtbl->GetLocalInterfaceGUID(This,pGuid);
739 }
740 static FORCEINLINE HRESULT IWSDiscoveredService_GetInstanceId(IWSDiscoveredService* This,ULONGLONG *pullInstanceId) {
741     return This->lpVtbl->GetInstanceId(This,pullInstanceId);
742 }
743 #endif
744 #endif
745 
746 #endif
747 
748 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetEndpointReference_Proxy(
749     IWSDiscoveredService* This,
750     WSD_ENDPOINT_REFERENCE **ppEndpointReference);
751 void __RPC_STUB IWSDiscoveredService_GetEndpointReference_Stub(
752     IRpcStubBuffer* This,
753     IRpcChannelBuffer* pRpcChannelBuffer,
754     PRPC_MESSAGE pRpcMessage,
755     DWORD* pdwStubPhase);
756 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetTypes_Proxy(
757     IWSDiscoveredService* This,
758     WSD_NAME_LIST **ppTypesList);
759 void __RPC_STUB IWSDiscoveredService_GetTypes_Stub(
760     IRpcStubBuffer* This,
761     IRpcChannelBuffer* pRpcChannelBuffer,
762     PRPC_MESSAGE pRpcMessage,
763     DWORD* pdwStubPhase);
764 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetScopes_Proxy(
765     IWSDiscoveredService* This,
766     WSD_URI_LIST **ppScopesList);
767 void __RPC_STUB IWSDiscoveredService_GetScopes_Stub(
768     IRpcStubBuffer* This,
769     IRpcChannelBuffer* pRpcChannelBuffer,
770     PRPC_MESSAGE pRpcMessage,
771     DWORD* pdwStubPhase);
772 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetXAddrs_Proxy(
773     IWSDiscoveredService* This,
774     WSD_URI_LIST **ppXAddrsList);
775 void __RPC_STUB IWSDiscoveredService_GetXAddrs_Stub(
776     IRpcStubBuffer* This,
777     IRpcChannelBuffer* pRpcChannelBuffer,
778     PRPC_MESSAGE pRpcMessage,
779     DWORD* pdwStubPhase);
780 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetMetadataVersion_Proxy(
781     IWSDiscoveredService* This,
782     ULONGLONG *pullMetadataVersion);
783 void __RPC_STUB IWSDiscoveredService_GetMetadataVersion_Stub(
784     IRpcStubBuffer* This,
785     IRpcChannelBuffer* pRpcChannelBuffer,
786     PRPC_MESSAGE pRpcMessage,
787     DWORD* pdwStubPhase);
788 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetExtendedDiscoXML_Proxy(
789     IWSDiscoveredService* This,
790     WSDXML_ELEMENT **ppHeaderAny,
791     WSDXML_ELEMENT **ppBodyAny);
792 void __RPC_STUB IWSDiscoveredService_GetExtendedDiscoXML_Stub(
793     IRpcStubBuffer* This,
794     IRpcChannelBuffer* pRpcChannelBuffer,
795     PRPC_MESSAGE pRpcMessage,
796     DWORD* pdwStubPhase);
797 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetProbeResolveTag_Proxy(
798     IWSDiscoveredService* This,
799     LPCWSTR *ppszTag);
800 void __RPC_STUB IWSDiscoveredService_GetProbeResolveTag_Stub(
801     IRpcStubBuffer* This,
802     IRpcChannelBuffer* pRpcChannelBuffer,
803     PRPC_MESSAGE pRpcMessage,
804     DWORD* pdwStubPhase);
805 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetRemoteTransportAddress_Proxy(
806     IWSDiscoveredService* This,
807     LPCWSTR *ppszRemoteTransportAddress);
808 void __RPC_STUB IWSDiscoveredService_GetRemoteTransportAddress_Stub(
809     IRpcStubBuffer* This,
810     IRpcChannelBuffer* pRpcChannelBuffer,
811     PRPC_MESSAGE pRpcMessage,
812     DWORD* pdwStubPhase);
813 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetLocalTransportAddress_Proxy(
814     IWSDiscoveredService* This,
815     LPCWSTR *ppszLocalTransportAddress);
816 void __RPC_STUB IWSDiscoveredService_GetLocalTransportAddress_Stub(
817     IRpcStubBuffer* This,
818     IRpcChannelBuffer* pRpcChannelBuffer,
819     PRPC_MESSAGE pRpcMessage,
820     DWORD* pdwStubPhase);
821 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetLocalInterfaceGUID_Proxy(
822     IWSDiscoveredService* This,
823     GUID *pGuid);
824 void __RPC_STUB IWSDiscoveredService_GetLocalInterfaceGUID_Stub(
825     IRpcStubBuffer* This,
826     IRpcChannelBuffer* pRpcChannelBuffer,
827     PRPC_MESSAGE pRpcMessage,
828     DWORD* pdwStubPhase);
829 HRESULT STDMETHODCALLTYPE IWSDiscoveredService_GetInstanceId_Proxy(
830     IWSDiscoveredService* This,
831     ULONGLONG *pullInstanceId);
832 void __RPC_STUB IWSDiscoveredService_GetInstanceId_Stub(
833     IRpcStubBuffer* This,
834     IRpcChannelBuffer* pRpcChannelBuffer,
835     PRPC_MESSAGE pRpcMessage,
836     DWORD* pdwStubPhase);
837 
838 #endif  /* __IWSDiscoveredService_INTERFACE_DEFINED__ */
839 
840 /*****************************************************************************
841  * IWSDiscoveryPublisherNotify interface
842  */
843 #ifndef __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__
844 #define __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__
845 
846 DEFINE_GUID(IID_IWSDiscoveryPublisherNotify, 0xe67651b0, 0x337a, 0x4b3c, 0x97,0x58, 0x73,0x33,0x88,0x56,0x82,0x51);
847 #if defined(__cplusplus) && !defined(CINTERFACE)
848 MIDL_INTERFACE("e67651b0-337a-4b3c-9758-733388568251")
849 IWSDiscoveryPublisherNotify : public IUnknown
850 {
851     virtual HRESULT STDMETHODCALLTYPE ProbeHandler(
852         const WSD_SOAP_MESSAGE *pSoap,
853         IWSDMessageParameters *pMessageParameters) = 0;
854 
855     virtual HRESULT STDMETHODCALLTYPE ResolveHandler(
856         const WSD_SOAP_MESSAGE *pSoap,
857         IWSDMessageParameters *pMessageParameters) = 0;
858 
859 };
860 #ifdef __CRT_UUID_DECL
861 __CRT_UUID_DECL(IWSDiscoveryPublisherNotify, 0xe67651b0, 0x337a, 0x4b3c, 0x97,0x58, 0x73,0x33,0x88,0x56,0x82,0x51)
862 #endif
863 #else
864 typedef struct IWSDiscoveryPublisherNotifyVtbl {
865     BEGIN_INTERFACE
866 
867     /*** IUnknown methods ***/
868     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
869         IWSDiscoveryPublisherNotify* This,
870         REFIID riid,
871         void **ppvObject);
872 
873     ULONG (STDMETHODCALLTYPE *AddRef)(
874         IWSDiscoveryPublisherNotify* This);
875 
876     ULONG (STDMETHODCALLTYPE *Release)(
877         IWSDiscoveryPublisherNotify* This);
878 
879     /*** IWSDiscoveryPublisherNotify methods ***/
880     HRESULT (STDMETHODCALLTYPE *ProbeHandler)(
881         IWSDiscoveryPublisherNotify* This,
882         const WSD_SOAP_MESSAGE *pSoap,
883         IWSDMessageParameters *pMessageParameters);
884 
885     HRESULT (STDMETHODCALLTYPE *ResolveHandler)(
886         IWSDiscoveryPublisherNotify* This,
887         const WSD_SOAP_MESSAGE *pSoap,
888         IWSDMessageParameters *pMessageParameters);
889 
890     END_INTERFACE
891 } IWSDiscoveryPublisherNotifyVtbl;
892 interface IWSDiscoveryPublisherNotify {
893     CONST_VTBL IWSDiscoveryPublisherNotifyVtbl* lpVtbl;
894 };
895 
896 #ifdef COBJMACROS
897 #ifndef WIDL_C_INLINE_WRAPPERS
898 /*** IUnknown methods ***/
899 #define IWSDiscoveryPublisherNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
900 #define IWSDiscoveryPublisherNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
901 #define IWSDiscoveryPublisherNotify_Release(This) (This)->lpVtbl->Release(This)
902 /*** IWSDiscoveryPublisherNotify methods ***/
903 #define IWSDiscoveryPublisherNotify_ProbeHandler(This,pSoap,pMessageParameters) (This)->lpVtbl->ProbeHandler(This,pSoap,pMessageParameters)
904 #define IWSDiscoveryPublisherNotify_ResolveHandler(This,pSoap,pMessageParameters) (This)->lpVtbl->ResolveHandler(This,pSoap,pMessageParameters)
905 #else
906 /*** IUnknown methods ***/
907 static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_QueryInterface(IWSDiscoveryPublisherNotify* This,REFIID riid,void **ppvObject) {
908     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
909 }
910 static FORCEINLINE ULONG IWSDiscoveryPublisherNotify_AddRef(IWSDiscoveryPublisherNotify* This) {
911     return This->lpVtbl->AddRef(This);
912 }
913 static FORCEINLINE ULONG IWSDiscoveryPublisherNotify_Release(IWSDiscoveryPublisherNotify* This) {
914     return This->lpVtbl->Release(This);
915 }
916 /*** IWSDiscoveryPublisherNotify methods ***/
917 static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_ProbeHandler(IWSDiscoveryPublisherNotify* This,const WSD_SOAP_MESSAGE *pSoap,IWSDMessageParameters *pMessageParameters) {
918     return This->lpVtbl->ProbeHandler(This,pSoap,pMessageParameters);
919 }
920 static FORCEINLINE HRESULT IWSDiscoveryPublisherNotify_ResolveHandler(IWSDiscoveryPublisherNotify* This,const WSD_SOAP_MESSAGE *pSoap,IWSDMessageParameters *pMessageParameters) {
921     return This->lpVtbl->ResolveHandler(This,pSoap,pMessageParameters);
922 }
923 #endif
924 #endif
925 
926 #endif
927 
928 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisherNotify_ProbeHandler_Proxy(
929     IWSDiscoveryPublisherNotify* This,
930     const WSD_SOAP_MESSAGE *pSoap,
931     IWSDMessageParameters *pMessageParameters);
932 void __RPC_STUB IWSDiscoveryPublisherNotify_ProbeHandler_Stub(
933     IRpcStubBuffer* This,
934     IRpcChannelBuffer* pRpcChannelBuffer,
935     PRPC_MESSAGE pRpcMessage,
936     DWORD* pdwStubPhase);
937 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisherNotify_ResolveHandler_Proxy(
938     IWSDiscoveryPublisherNotify* This,
939     const WSD_SOAP_MESSAGE *pSoap,
940     IWSDMessageParameters *pMessageParameters);
941 void __RPC_STUB IWSDiscoveryPublisherNotify_ResolveHandler_Stub(
942     IRpcStubBuffer* This,
943     IRpcChannelBuffer* pRpcChannelBuffer,
944     PRPC_MESSAGE pRpcMessage,
945     DWORD* pdwStubPhase);
946 
947 #endif  /* __IWSDiscoveryPublisherNotify_INTERFACE_DEFINED__ */
948 
949 /*****************************************************************************
950  * IWSDiscoveryPublisher interface
951  */
952 #ifndef __IWSDiscoveryPublisher_INTERFACE_DEFINED__
953 #define __IWSDiscoveryPublisher_INTERFACE_DEFINED__
954 
955 DEFINE_GUID(IID_IWSDiscoveryPublisher, 0xae01e1a8, 0x3ff9, 0x4148, 0x81,0x16, 0x05,0x7c,0xc6,0x16,0xfe,0x13);
956 #if defined(__cplusplus) && !defined(CINTERFACE)
957 MIDL_INTERFACE("ae01e1a8-3ff9-4148-8116-057cc616fe13")
958 IWSDiscoveryPublisher : public IUnknown
959 {
960     virtual HRESULT STDMETHODCALLTYPE SetAddressFamily(
961         DWORD dwAddressFamily) = 0;
962 
963     virtual HRESULT STDMETHODCALLTYPE RegisterNotificationSink(
964         IWSDiscoveryPublisherNotify *pSink) = 0;
965 
966     virtual HRESULT STDMETHODCALLTYPE UnRegisterNotificationSink(
967         IWSDiscoveryPublisherNotify *pSink) = 0;
968 
969     virtual HRESULT STDMETHODCALLTYPE Publish(
970         LPCWSTR pszId,
971         ULONGLONG ullMetadataVersion,
972         ULONGLONG ullInstanceId,
973         ULONGLONG ullMessageNumber,
974         LPCWSTR pszSessionId,
975         const WSD_NAME_LIST *pTypesList,
976         const WSD_URI_LIST *pScopesList,
977         const WSD_URI_LIST *pXAddrsList) = 0;
978 
979     virtual HRESULT STDMETHODCALLTYPE UnPublish(
980         LPCWSTR pszId,
981         ULONGLONG ullInstanceId,
982         ULONGLONG ullMessageNumber,
983         LPCWSTR pszSessionId,
984         const WSDXML_ELEMENT *pAny) = 0;
985 
986     virtual HRESULT STDMETHODCALLTYPE MatchProbe(
987         const WSD_SOAP_MESSAGE *pProbeMessage,
988         IWSDMessageParameters *pMessageParameters,
989         LPCWSTR pszId,
990         ULONGLONG ullMetadataVersion,
991         ULONGLONG ullInstanceId,
992         ULONGLONG ullMessageNumber,
993         LPCWSTR pszSessionId,
994         const WSD_NAME_LIST *pTypesList,
995         const WSD_URI_LIST *pScopesList,
996         const WSD_URI_LIST *pXAddrsList) = 0;
997 
998     virtual HRESULT STDMETHODCALLTYPE MatchResolve(
999         const WSD_SOAP_MESSAGE *pResolveMessage,
1000         IWSDMessageParameters *pMessageParameters,
1001         LPCWSTR pszId,
1002         ULONGLONG ullMetadataVersion,
1003         ULONGLONG ullInstanceId,
1004         ULONGLONG ullMessageNumber,
1005         LPCWSTR pszSessionId,
1006         const WSD_NAME_LIST *pTypesList,
1007         const WSD_URI_LIST *pScopesList,
1008         const WSD_URI_LIST *pXAddrsList) = 0;
1009 
1010     virtual HRESULT STDMETHODCALLTYPE PublishEx(
1011         LPCWSTR pszId,
1012         ULONGLONG ullMetadataVersion,
1013         ULONGLONG ullInstanceId,
1014         ULONGLONG ullMessageNumber,
1015         LPCWSTR pszSessionId,
1016         const WSD_NAME_LIST *pTypesList,
1017         const WSD_URI_LIST *pScopesList,
1018         const WSD_URI_LIST *pXAddrsList,
1019         const WSDXML_ELEMENT *pHeaderAny,
1020         const WSDXML_ELEMENT *pReferenceParameterAny,
1021         const WSDXML_ELEMENT *pPolicyAny,
1022         const WSDXML_ELEMENT *pEndpointReferenceAny,
1023         const WSDXML_ELEMENT *pAny) = 0;
1024 
1025     virtual HRESULT STDMETHODCALLTYPE MatchProbeEx(
1026         const WSD_SOAP_MESSAGE *pProbeMessage,
1027         IWSDMessageParameters *pMessageParameters,
1028         LPCWSTR pszId,
1029         ULONGLONG ullMetadataVersion,
1030         ULONGLONG ullInstanceId,
1031         ULONGLONG ullMessageNumber,
1032         LPCWSTR pszSessionId,
1033         const WSD_NAME_LIST *pTypesList,
1034         const WSD_URI_LIST *pScopesList,
1035         const WSD_URI_LIST *pXAddrsList,
1036         const WSDXML_ELEMENT *pHeaderAny,
1037         const WSDXML_ELEMENT *pReferenceParameterAny,
1038         const WSDXML_ELEMENT *pPolicyAny,
1039         const WSDXML_ELEMENT *pEndpointReferenceAny,
1040         const WSDXML_ELEMENT *pAny) = 0;
1041 
1042     virtual HRESULT STDMETHODCALLTYPE MatchResolveEx(
1043         const WSD_SOAP_MESSAGE *pResolveMessage,
1044         IWSDMessageParameters *pMessageParameters,
1045         LPCWSTR pszId,
1046         ULONGLONG ullMetadataVersion,
1047         ULONGLONG ullInstanceId,
1048         ULONGLONG ullMessageNumber,
1049         LPCWSTR pszSessionId,
1050         const WSD_NAME_LIST *pTypesList,
1051         const WSD_URI_LIST *pScopesList,
1052         const WSD_URI_LIST *pXAddrsList,
1053         const WSDXML_ELEMENT *pHeaderAny,
1054         const WSDXML_ELEMENT *pReferenceParameterAny,
1055         const WSDXML_ELEMENT *pPolicyAny,
1056         const WSDXML_ELEMENT *pEndpointReferenceAny,
1057         const WSDXML_ELEMENT *pAny) = 0;
1058 
1059     virtual HRESULT STDMETHODCALLTYPE RegisterScopeMatchingRule(
1060         IWSDScopeMatchingRule *pScopeMatchingRule) = 0;
1061 
1062     virtual HRESULT STDMETHODCALLTYPE UnRegisterScopeMatchingRule(
1063         IWSDScopeMatchingRule *pScopeMatchingRule) = 0;
1064 
1065     virtual HRESULT STDMETHODCALLTYPE GetXMLContext(
1066         IWSDXMLContext **ppContext) = 0;
1067 
1068 };
1069 #ifdef __CRT_UUID_DECL
1070 __CRT_UUID_DECL(IWSDiscoveryPublisher, 0xae01e1a8, 0x3ff9, 0x4148, 0x81,0x16, 0x05,0x7c,0xc6,0x16,0xfe,0x13)
1071 #endif
1072 #else
1073 typedef struct IWSDiscoveryPublisherVtbl {
1074     BEGIN_INTERFACE
1075 
1076     /*** IUnknown methods ***/
1077     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1078         IWSDiscoveryPublisher* This,
1079         REFIID riid,
1080         void **ppvObject);
1081 
1082     ULONG (STDMETHODCALLTYPE *AddRef)(
1083         IWSDiscoveryPublisher* This);
1084 
1085     ULONG (STDMETHODCALLTYPE *Release)(
1086         IWSDiscoveryPublisher* This);
1087 
1088     /*** IWSDiscoveryPublisher methods ***/
1089     HRESULT (STDMETHODCALLTYPE *SetAddressFamily)(
1090         IWSDiscoveryPublisher* This,
1091         DWORD dwAddressFamily);
1092 
1093     HRESULT (STDMETHODCALLTYPE *RegisterNotificationSink)(
1094         IWSDiscoveryPublisher* This,
1095         IWSDiscoveryPublisherNotify *pSink);
1096 
1097     HRESULT (STDMETHODCALLTYPE *UnRegisterNotificationSink)(
1098         IWSDiscoveryPublisher* This,
1099         IWSDiscoveryPublisherNotify *pSink);
1100 
1101     HRESULT (STDMETHODCALLTYPE *Publish)(
1102         IWSDiscoveryPublisher* This,
1103         LPCWSTR pszId,
1104         ULONGLONG ullMetadataVersion,
1105         ULONGLONG ullInstanceId,
1106         ULONGLONG ullMessageNumber,
1107         LPCWSTR pszSessionId,
1108         const WSD_NAME_LIST *pTypesList,
1109         const WSD_URI_LIST *pScopesList,
1110         const WSD_URI_LIST *pXAddrsList);
1111 
1112     HRESULT (STDMETHODCALLTYPE *UnPublish)(
1113         IWSDiscoveryPublisher* This,
1114         LPCWSTR pszId,
1115         ULONGLONG ullInstanceId,
1116         ULONGLONG ullMessageNumber,
1117         LPCWSTR pszSessionId,
1118         const WSDXML_ELEMENT *pAny);
1119 
1120     HRESULT (STDMETHODCALLTYPE *MatchProbe)(
1121         IWSDiscoveryPublisher* This,
1122         const WSD_SOAP_MESSAGE *pProbeMessage,
1123         IWSDMessageParameters *pMessageParameters,
1124         LPCWSTR pszId,
1125         ULONGLONG ullMetadataVersion,
1126         ULONGLONG ullInstanceId,
1127         ULONGLONG ullMessageNumber,
1128         LPCWSTR pszSessionId,
1129         const WSD_NAME_LIST *pTypesList,
1130         const WSD_URI_LIST *pScopesList,
1131         const WSD_URI_LIST *pXAddrsList);
1132 
1133     HRESULT (STDMETHODCALLTYPE *MatchResolve)(
1134         IWSDiscoveryPublisher* This,
1135         const WSD_SOAP_MESSAGE *pResolveMessage,
1136         IWSDMessageParameters *pMessageParameters,
1137         LPCWSTR pszId,
1138         ULONGLONG ullMetadataVersion,
1139         ULONGLONG ullInstanceId,
1140         ULONGLONG ullMessageNumber,
1141         LPCWSTR pszSessionId,
1142         const WSD_NAME_LIST *pTypesList,
1143         const WSD_URI_LIST *pScopesList,
1144         const WSD_URI_LIST *pXAddrsList);
1145 
1146     HRESULT (STDMETHODCALLTYPE *PublishEx)(
1147         IWSDiscoveryPublisher* This,
1148         LPCWSTR pszId,
1149         ULONGLONG ullMetadataVersion,
1150         ULONGLONG ullInstanceId,
1151         ULONGLONG ullMessageNumber,
1152         LPCWSTR pszSessionId,
1153         const WSD_NAME_LIST *pTypesList,
1154         const WSD_URI_LIST *pScopesList,
1155         const WSD_URI_LIST *pXAddrsList,
1156         const WSDXML_ELEMENT *pHeaderAny,
1157         const WSDXML_ELEMENT *pReferenceParameterAny,
1158         const WSDXML_ELEMENT *pPolicyAny,
1159         const WSDXML_ELEMENT *pEndpointReferenceAny,
1160         const WSDXML_ELEMENT *pAny);
1161 
1162     HRESULT (STDMETHODCALLTYPE *MatchProbeEx)(
1163         IWSDiscoveryPublisher* This,
1164         const WSD_SOAP_MESSAGE *pProbeMessage,
1165         IWSDMessageParameters *pMessageParameters,
1166         LPCWSTR pszId,
1167         ULONGLONG ullMetadataVersion,
1168         ULONGLONG ullInstanceId,
1169         ULONGLONG ullMessageNumber,
1170         LPCWSTR pszSessionId,
1171         const WSD_NAME_LIST *pTypesList,
1172         const WSD_URI_LIST *pScopesList,
1173         const WSD_URI_LIST *pXAddrsList,
1174         const WSDXML_ELEMENT *pHeaderAny,
1175         const WSDXML_ELEMENT *pReferenceParameterAny,
1176         const WSDXML_ELEMENT *pPolicyAny,
1177         const WSDXML_ELEMENT *pEndpointReferenceAny,
1178         const WSDXML_ELEMENT *pAny);
1179 
1180     HRESULT (STDMETHODCALLTYPE *MatchResolveEx)(
1181         IWSDiscoveryPublisher* This,
1182         const WSD_SOAP_MESSAGE *pResolveMessage,
1183         IWSDMessageParameters *pMessageParameters,
1184         LPCWSTR pszId,
1185         ULONGLONG ullMetadataVersion,
1186         ULONGLONG ullInstanceId,
1187         ULONGLONG ullMessageNumber,
1188         LPCWSTR pszSessionId,
1189         const WSD_NAME_LIST *pTypesList,
1190         const WSD_URI_LIST *pScopesList,
1191         const WSD_URI_LIST *pXAddrsList,
1192         const WSDXML_ELEMENT *pHeaderAny,
1193         const WSDXML_ELEMENT *pReferenceParameterAny,
1194         const WSDXML_ELEMENT *pPolicyAny,
1195         const WSDXML_ELEMENT *pEndpointReferenceAny,
1196         const WSDXML_ELEMENT *pAny);
1197 
1198     HRESULT (STDMETHODCALLTYPE *RegisterScopeMatchingRule)(
1199         IWSDiscoveryPublisher* This,
1200         IWSDScopeMatchingRule *pScopeMatchingRule);
1201 
1202     HRESULT (STDMETHODCALLTYPE *UnRegisterScopeMatchingRule)(
1203         IWSDiscoveryPublisher* This,
1204         IWSDScopeMatchingRule *pScopeMatchingRule);
1205 
1206     HRESULT (STDMETHODCALLTYPE *GetXMLContext)(
1207         IWSDiscoveryPublisher* This,
1208         IWSDXMLContext **ppContext);
1209 
1210     END_INTERFACE
1211 } IWSDiscoveryPublisherVtbl;
1212 interface IWSDiscoveryPublisher {
1213     CONST_VTBL IWSDiscoveryPublisherVtbl* lpVtbl;
1214 };
1215 
1216 #ifdef COBJMACROS
1217 #ifndef WIDL_C_INLINE_WRAPPERS
1218 /*** IUnknown methods ***/
1219 #define IWSDiscoveryPublisher_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1220 #define IWSDiscoveryPublisher_AddRef(This) (This)->lpVtbl->AddRef(This)
1221 #define IWSDiscoveryPublisher_Release(This) (This)->lpVtbl->Release(This)
1222 /*** IWSDiscoveryPublisher methods ***/
1223 #define IWSDiscoveryPublisher_SetAddressFamily(This,dwAddressFamily) (This)->lpVtbl->SetAddressFamily(This,dwAddressFamily)
1224 #define IWSDiscoveryPublisher_RegisterNotificationSink(This,pSink) (This)->lpVtbl->RegisterNotificationSink(This,pSink)
1225 #define IWSDiscoveryPublisher_UnRegisterNotificationSink(This,pSink) (This)->lpVtbl->UnRegisterNotificationSink(This,pSink)
1226 #define IWSDiscoveryPublisher_Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
1227 #define IWSDiscoveryPublisher_UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny) (This)->lpVtbl->UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny)
1228 #define IWSDiscoveryPublisher_MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
1229 #define IWSDiscoveryPublisher_MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList) (This)->lpVtbl->MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList)
1230 #define IWSDiscoveryPublisher_PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
1231 #define IWSDiscoveryPublisher_MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
1232 #define IWSDiscoveryPublisher_MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny) (This)->lpVtbl->MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny)
1233 #define IWSDiscoveryPublisher_RegisterScopeMatchingRule(This,pScopeMatchingRule) (This)->lpVtbl->RegisterScopeMatchingRule(This,pScopeMatchingRule)
1234 #define IWSDiscoveryPublisher_UnRegisterScopeMatchingRule(This,pScopeMatchingRule) (This)->lpVtbl->UnRegisterScopeMatchingRule(This,pScopeMatchingRule)
1235 #define IWSDiscoveryPublisher_GetXMLContext(This,ppContext) (This)->lpVtbl->GetXMLContext(This,ppContext)
1236 #else
1237 /*** IUnknown methods ***/
1238 static FORCEINLINE HRESULT IWSDiscoveryPublisher_QueryInterface(IWSDiscoveryPublisher* This,REFIID riid,void **ppvObject) {
1239     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1240 }
1241 static FORCEINLINE ULONG IWSDiscoveryPublisher_AddRef(IWSDiscoveryPublisher* This) {
1242     return This->lpVtbl->AddRef(This);
1243 }
1244 static FORCEINLINE ULONG IWSDiscoveryPublisher_Release(IWSDiscoveryPublisher* This) {
1245     return This->lpVtbl->Release(This);
1246 }
1247 /*** IWSDiscoveryPublisher methods ***/
1248 static FORCEINLINE HRESULT IWSDiscoveryPublisher_SetAddressFamily(IWSDiscoveryPublisher* This,DWORD dwAddressFamily) {
1249     return This->lpVtbl->SetAddressFamily(This,dwAddressFamily);
1250 }
1251 static FORCEINLINE HRESULT IWSDiscoveryPublisher_RegisterNotificationSink(IWSDiscoveryPublisher* This,IWSDiscoveryPublisherNotify *pSink) {
1252     return This->lpVtbl->RegisterNotificationSink(This,pSink);
1253 }
1254 static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnRegisterNotificationSink(IWSDiscoveryPublisher* This,IWSDiscoveryPublisherNotify *pSink) {
1255     return This->lpVtbl->UnRegisterNotificationSink(This,pSink);
1256 }
1257 static FORCEINLINE HRESULT IWSDiscoveryPublisher_Publish(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
1258     return This->lpVtbl->Publish(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
1259 }
1260 static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnPublish(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSDXML_ELEMENT *pAny) {
1261     return This->lpVtbl->UnPublish(This,pszId,ullInstanceId,ullMessageNumber,pszSessionId,pAny);
1262 }
1263 static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchProbe(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pProbeMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
1264     return This->lpVtbl->MatchProbe(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
1265 }
1266 static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchResolve(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pResolveMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList) {
1267     return This->lpVtbl->MatchResolve(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList);
1268 }
1269 static FORCEINLINE HRESULT IWSDiscoveryPublisher_PublishEx(IWSDiscoveryPublisher* This,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
1270     return This->lpVtbl->PublishEx(This,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
1271 }
1272 static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchProbeEx(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pProbeMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
1273     return This->lpVtbl->MatchProbeEx(This,pProbeMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
1274 }
1275 static FORCEINLINE HRESULT IWSDiscoveryPublisher_MatchResolveEx(IWSDiscoveryPublisher* This,const WSD_SOAP_MESSAGE *pResolveMessage,IWSDMessageParameters *pMessageParameters,LPCWSTR pszId,ULONGLONG ullMetadataVersion,ULONGLONG ullInstanceId,ULONGLONG ullMessageNumber,LPCWSTR pszSessionId,const WSD_NAME_LIST *pTypesList,const WSD_URI_LIST *pScopesList,const WSD_URI_LIST *pXAddrsList,const WSDXML_ELEMENT *pHeaderAny,const WSDXML_ELEMENT *pReferenceParameterAny,const WSDXML_ELEMENT *pPolicyAny,const WSDXML_ELEMENT *pEndpointReferenceAny,const WSDXML_ELEMENT *pAny) {
1276     return This->lpVtbl->MatchResolveEx(This,pResolveMessage,pMessageParameters,pszId,ullMetadataVersion,ullInstanceId,ullMessageNumber,pszSessionId,pTypesList,pScopesList,pXAddrsList,pHeaderAny,pReferenceParameterAny,pPolicyAny,pEndpointReferenceAny,pAny);
1277 }
1278 static FORCEINLINE HRESULT IWSDiscoveryPublisher_RegisterScopeMatchingRule(IWSDiscoveryPublisher* This,IWSDScopeMatchingRule *pScopeMatchingRule) {
1279     return This->lpVtbl->RegisterScopeMatchingRule(This,pScopeMatchingRule);
1280 }
1281 static FORCEINLINE HRESULT IWSDiscoveryPublisher_UnRegisterScopeMatchingRule(IWSDiscoveryPublisher* This,IWSDScopeMatchingRule *pScopeMatchingRule) {
1282     return This->lpVtbl->UnRegisterScopeMatchingRule(This,pScopeMatchingRule);
1283 }
1284 static FORCEINLINE HRESULT IWSDiscoveryPublisher_GetXMLContext(IWSDiscoveryPublisher* This,IWSDXMLContext **ppContext) {
1285     return This->lpVtbl->GetXMLContext(This,ppContext);
1286 }
1287 #endif
1288 #endif
1289 
1290 #endif
1291 
1292 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_SetAddressFamily_Proxy(
1293     IWSDiscoveryPublisher* This,
1294     DWORD dwAddressFamily);
1295 void __RPC_STUB IWSDiscoveryPublisher_SetAddressFamily_Stub(
1296     IRpcStubBuffer* This,
1297     IRpcChannelBuffer* pRpcChannelBuffer,
1298     PRPC_MESSAGE pRpcMessage,
1299     DWORD* pdwStubPhase);
1300 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_RegisterNotificationSink_Proxy(
1301     IWSDiscoveryPublisher* This,
1302     IWSDiscoveryPublisherNotify *pSink);
1303 void __RPC_STUB IWSDiscoveryPublisher_RegisterNotificationSink_Stub(
1304     IRpcStubBuffer* This,
1305     IRpcChannelBuffer* pRpcChannelBuffer,
1306     PRPC_MESSAGE pRpcMessage,
1307     DWORD* pdwStubPhase);
1308 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_UnRegisterNotificationSink_Proxy(
1309     IWSDiscoveryPublisher* This,
1310     IWSDiscoveryPublisherNotify *pSink);
1311 void __RPC_STUB IWSDiscoveryPublisher_UnRegisterNotificationSink_Stub(
1312     IRpcStubBuffer* This,
1313     IRpcChannelBuffer* pRpcChannelBuffer,
1314     PRPC_MESSAGE pRpcMessage,
1315     DWORD* pdwStubPhase);
1316 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_Publish_Proxy(
1317     IWSDiscoveryPublisher* This,
1318     LPCWSTR pszId,
1319     ULONGLONG ullMetadataVersion,
1320     ULONGLONG ullInstanceId,
1321     ULONGLONG ullMessageNumber,
1322     LPCWSTR pszSessionId,
1323     const WSD_NAME_LIST *pTypesList,
1324     const WSD_URI_LIST *pScopesList,
1325     const WSD_URI_LIST *pXAddrsList);
1326 void __RPC_STUB IWSDiscoveryPublisher_Publish_Stub(
1327     IRpcStubBuffer* This,
1328     IRpcChannelBuffer* pRpcChannelBuffer,
1329     PRPC_MESSAGE pRpcMessage,
1330     DWORD* pdwStubPhase);
1331 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_UnPublish_Proxy(
1332     IWSDiscoveryPublisher* This,
1333     LPCWSTR pszId,
1334     ULONGLONG ullInstanceId,
1335     ULONGLONG ullMessageNumber,
1336     LPCWSTR pszSessionId,
1337     const WSDXML_ELEMENT *pAny);
1338 void __RPC_STUB IWSDiscoveryPublisher_UnPublish_Stub(
1339     IRpcStubBuffer* This,
1340     IRpcChannelBuffer* pRpcChannelBuffer,
1341     PRPC_MESSAGE pRpcMessage,
1342     DWORD* pdwStubPhase);
1343 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_MatchProbe_Proxy(
1344     IWSDiscoveryPublisher* This,
1345     const WSD_SOAP_MESSAGE *pProbeMessage,
1346     IWSDMessageParameters *pMessageParameters,
1347     LPCWSTR pszId,
1348     ULONGLONG ullMetadataVersion,
1349     ULONGLONG ullInstanceId,
1350     ULONGLONG ullMessageNumber,
1351     LPCWSTR pszSessionId,
1352     const WSD_NAME_LIST *pTypesList,
1353     const WSD_URI_LIST *pScopesList,
1354     const WSD_URI_LIST *pXAddrsList);
1355 void __RPC_STUB IWSDiscoveryPublisher_MatchProbe_Stub(
1356     IRpcStubBuffer* This,
1357     IRpcChannelBuffer* pRpcChannelBuffer,
1358     PRPC_MESSAGE pRpcMessage,
1359     DWORD* pdwStubPhase);
1360 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_MatchResolve_Proxy(
1361     IWSDiscoveryPublisher* This,
1362     const WSD_SOAP_MESSAGE *pResolveMessage,
1363     IWSDMessageParameters *pMessageParameters,
1364     LPCWSTR pszId,
1365     ULONGLONG ullMetadataVersion,
1366     ULONGLONG ullInstanceId,
1367     ULONGLONG ullMessageNumber,
1368     LPCWSTR pszSessionId,
1369     const WSD_NAME_LIST *pTypesList,
1370     const WSD_URI_LIST *pScopesList,
1371     const WSD_URI_LIST *pXAddrsList);
1372 void __RPC_STUB IWSDiscoveryPublisher_MatchResolve_Stub(
1373     IRpcStubBuffer* This,
1374     IRpcChannelBuffer* pRpcChannelBuffer,
1375     PRPC_MESSAGE pRpcMessage,
1376     DWORD* pdwStubPhase);
1377 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_PublishEx_Proxy(
1378     IWSDiscoveryPublisher* This,
1379     LPCWSTR pszId,
1380     ULONGLONG ullMetadataVersion,
1381     ULONGLONG ullInstanceId,
1382     ULONGLONG ullMessageNumber,
1383     LPCWSTR pszSessionId,
1384     const WSD_NAME_LIST *pTypesList,
1385     const WSD_URI_LIST *pScopesList,
1386     const WSD_URI_LIST *pXAddrsList,
1387     const WSDXML_ELEMENT *pHeaderAny,
1388     const WSDXML_ELEMENT *pReferenceParameterAny,
1389     const WSDXML_ELEMENT *pPolicyAny,
1390     const WSDXML_ELEMENT *pEndpointReferenceAny,
1391     const WSDXML_ELEMENT *pAny);
1392 void __RPC_STUB IWSDiscoveryPublisher_PublishEx_Stub(
1393     IRpcStubBuffer* This,
1394     IRpcChannelBuffer* pRpcChannelBuffer,
1395     PRPC_MESSAGE pRpcMessage,
1396     DWORD* pdwStubPhase);
1397 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_MatchProbeEx_Proxy(
1398     IWSDiscoveryPublisher* This,
1399     const WSD_SOAP_MESSAGE *pProbeMessage,
1400     IWSDMessageParameters *pMessageParameters,
1401     LPCWSTR pszId,
1402     ULONGLONG ullMetadataVersion,
1403     ULONGLONG ullInstanceId,
1404     ULONGLONG ullMessageNumber,
1405     LPCWSTR pszSessionId,
1406     const WSD_NAME_LIST *pTypesList,
1407     const WSD_URI_LIST *pScopesList,
1408     const WSD_URI_LIST *pXAddrsList,
1409     const WSDXML_ELEMENT *pHeaderAny,
1410     const WSDXML_ELEMENT *pReferenceParameterAny,
1411     const WSDXML_ELEMENT *pPolicyAny,
1412     const WSDXML_ELEMENT *pEndpointReferenceAny,
1413     const WSDXML_ELEMENT *pAny);
1414 void __RPC_STUB IWSDiscoveryPublisher_MatchProbeEx_Stub(
1415     IRpcStubBuffer* This,
1416     IRpcChannelBuffer* pRpcChannelBuffer,
1417     PRPC_MESSAGE pRpcMessage,
1418     DWORD* pdwStubPhase);
1419 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_MatchResolveEx_Proxy(
1420     IWSDiscoveryPublisher* This,
1421     const WSD_SOAP_MESSAGE *pResolveMessage,
1422     IWSDMessageParameters *pMessageParameters,
1423     LPCWSTR pszId,
1424     ULONGLONG ullMetadataVersion,
1425     ULONGLONG ullInstanceId,
1426     ULONGLONG ullMessageNumber,
1427     LPCWSTR pszSessionId,
1428     const WSD_NAME_LIST *pTypesList,
1429     const WSD_URI_LIST *pScopesList,
1430     const WSD_URI_LIST *pXAddrsList,
1431     const WSDXML_ELEMENT *pHeaderAny,
1432     const WSDXML_ELEMENT *pReferenceParameterAny,
1433     const WSDXML_ELEMENT *pPolicyAny,
1434     const WSDXML_ELEMENT *pEndpointReferenceAny,
1435     const WSDXML_ELEMENT *pAny);
1436 void __RPC_STUB IWSDiscoveryPublisher_MatchResolveEx_Stub(
1437     IRpcStubBuffer* This,
1438     IRpcChannelBuffer* pRpcChannelBuffer,
1439     PRPC_MESSAGE pRpcMessage,
1440     DWORD* pdwStubPhase);
1441 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_RegisterScopeMatchingRule_Proxy(
1442     IWSDiscoveryPublisher* This,
1443     IWSDScopeMatchingRule *pScopeMatchingRule);
1444 void __RPC_STUB IWSDiscoveryPublisher_RegisterScopeMatchingRule_Stub(
1445     IRpcStubBuffer* This,
1446     IRpcChannelBuffer* pRpcChannelBuffer,
1447     PRPC_MESSAGE pRpcMessage,
1448     DWORD* pdwStubPhase);
1449 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_UnRegisterScopeMatchingRule_Proxy(
1450     IWSDiscoveryPublisher* This,
1451     IWSDScopeMatchingRule *pScopeMatchingRule);
1452 void __RPC_STUB IWSDiscoveryPublisher_UnRegisterScopeMatchingRule_Stub(
1453     IRpcStubBuffer* This,
1454     IRpcChannelBuffer* pRpcChannelBuffer,
1455     PRPC_MESSAGE pRpcMessage,
1456     DWORD* pdwStubPhase);
1457 HRESULT STDMETHODCALLTYPE IWSDiscoveryPublisher_GetXMLContext_Proxy(
1458     IWSDiscoveryPublisher* This,
1459     IWSDXMLContext **ppContext);
1460 void __RPC_STUB IWSDiscoveryPublisher_GetXMLContext_Stub(
1461     IRpcStubBuffer* This,
1462     IRpcChannelBuffer* pRpcChannelBuffer,
1463     PRPC_MESSAGE pRpcMessage,
1464     DWORD* pdwStubPhase);
1465 
1466 #endif  /* __IWSDiscoveryPublisher_INTERFACE_DEFINED__ */
1467 
1468 HRESULT WINAPI WSDCreateDiscoveryProvider(IWSDXMLContext *pContext, IWSDiscoveryProvider **ppProvider);
1469 HRESULT WINAPI WSDCreateDiscoveryPublisher(IWSDXMLContext* pContext, IWSDiscoveryPublisher **ppPublisher);
1470 #if WINVER >= 0x601
1471 HRESULT WINAPI WSDCreateDiscoveryProvider2(IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDiscoveryProvider **ppProvider);
1472 HRESULT WINAPI WSDCreateDiscoveryPublisher2(IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDiscoveryPublisher **ppPublisher);
1473 #endif
1474 #endif
1475 /* Begin additional prototypes for all interfaces */
1476 
1477 
1478 /* End additional prototypes */
1479 
1480 #ifdef __cplusplus
1481 }
1482 #endif
1483 
1484 #endif /* __wsddisco_h__ */
1485