1 /*** Autogenerated by WIDL 1.6 from include/wsdclient.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 __wsdclient_h__
16 #define __wsdclient_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __IWSDAsyncResult_FWD_DEFINED__
21 #define __IWSDAsyncResult_FWD_DEFINED__
22 typedef interface IWSDAsyncResult IWSDAsyncResult;
23 #endif
24 
25 #ifndef __IWSDAsyncCallback_FWD_DEFINED__
26 #define __IWSDAsyncCallback_FWD_DEFINED__
27 typedef interface IWSDAsyncCallback IWSDAsyncCallback;
28 #endif
29 
30 #ifndef __IWSDMetadataExchange_FWD_DEFINED__
31 #define __IWSDMetadataExchange_FWD_DEFINED__
32 typedef interface IWSDMetadataExchange IWSDMetadataExchange;
33 #endif
34 
35 #ifndef __IWSDEventingStatus_FWD_DEFINED__
36 #define __IWSDEventingStatus_FWD_DEFINED__
37 typedef interface IWSDEventingStatus IWSDEventingStatus;
38 #endif
39 
40 #ifndef __IWSDEndpointProxy_FWD_DEFINED__
41 #define __IWSDEndpointProxy_FWD_DEFINED__
42 typedef interface IWSDEndpointProxy IWSDEndpointProxy;
43 #endif
44 
45 #ifndef __IWSDDeviceProxy_FWD_DEFINED__
46 #define __IWSDDeviceProxy_FWD_DEFINED__
47 typedef interface IWSDDeviceProxy IWSDDeviceProxy;
48 #endif
49 
50 #ifndef __IWSDServiceProxy_FWD_DEFINED__
51 #define __IWSDServiceProxy_FWD_DEFINED__
52 typedef interface IWSDServiceProxy IWSDServiceProxy;
53 #endif
54 
55 #ifndef __IWSDServiceProxyEventing_FWD_DEFINED__
56 #define __IWSDServiceProxyEventing_FWD_DEFINED__
57 typedef interface IWSDServiceProxyEventing IWSDServiceProxyEventing;
58 #endif
59 
60 /* Headers for imported files */
61 
62 #include <oaidl.h>
63 #include <ocidl.h>
64 #include <wsdxmldom.h>
65 #include <wsdtypes.h>
66 
67 #ifdef __cplusplus
68 extern "C" {
69 #endif
70 
71 #include <winapifamily.h>
72 
73 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
74 
75 #ifndef __IWSDAddress_FWD_DEFINED__
76 #define __IWSDAddress_FWD_DEFINED__
77 typedef interface IWSDAddress IWSDAddress;
78 #endif
79 
80 #ifndef __IWSDXMLContext_FWD_DEFINED__
81 #define __IWSDXMLContext_FWD_DEFINED__
82 typedef interface IWSDXMLContext IWSDXMLContext;
83 #endif
84 
85 #ifndef __IWSDiscoveredService_FWD_DEFINED__
86 #define __IWSDiscoveredService_FWD_DEFINED__
87 typedef interface IWSDiscoveredService IWSDiscoveredService;
88 #endif
89 
90 #ifndef __IWSDDeviceProxy_FWD_DEFINED__
91 #define __IWSDDeviceProxy_FWD_DEFINED__
92 typedef interface IWSDDeviceProxy IWSDDeviceProxy;
93 #endif
94 
95 #ifndef __IWSDServiceProxy_FWD_DEFINED__
96 #define __IWSDServiceProxy_FWD_DEFINED__
97 typedef interface IWSDServiceProxy IWSDServiceProxy;
98 #endif
99 
100 #ifndef __IWSDEndpointProxy_FWD_DEFINED__
101 #define __IWSDEndpointProxy_FWD_DEFINED__
102 typedef interface IWSDEndpointProxy IWSDEndpointProxy;
103 #endif
104 
105 #ifndef __IWSDAsyncResult_FWD_DEFINED__
106 #define __IWSDAsyncResult_FWD_DEFINED__
107 typedef interface IWSDAsyncResult IWSDAsyncResult;
108 #endif
109 
110 #ifndef __IWSDAsyncCallback_FWD_DEFINED__
111 #define __IWSDAsyncCallback_FWD_DEFINED__
112 typedef interface IWSDAsyncCallback IWSDAsyncCallback;
113 #endif
114 
115 #ifndef __IWSDMetadataExchange_FWD_DEFINED__
116 #define __IWSDMetadataExchange_FWD_DEFINED__
117 typedef interface IWSDMetadataExchange IWSDMetadataExchange;
118 #endif
119 
120 #ifndef __IWSDEventingStatus_FWD_DEFINED__
121 #define __IWSDEventingStatus_FWD_DEFINED__
122 typedef interface IWSDEventingStatus IWSDEventingStatus;
123 #endif
124 
125 /*****************************************************************************
126  * IWSDAsyncResult interface
127  */
128 #ifndef __IWSDAsyncResult_INTERFACE_DEFINED__
129 #define __IWSDAsyncResult_INTERFACE_DEFINED__
130 
131 DEFINE_GUID(IID_IWSDAsyncResult, 0x11a9852a, 0x8dd8, 0x423e, 0xb5,0x37, 0x93,0x56,0xdb,0x4f,0xbf,0xb8);
132 #if defined(__cplusplus) && !defined(CINTERFACE)
133 MIDL_INTERFACE("11a9852a-8dd8-423e-b537-9356db4fbfb8")
134 IWSDAsyncResult : public IUnknown
135 {
136     virtual HRESULT STDMETHODCALLTYPE SetCallback(
137         IWSDAsyncCallback *pCallback,
138         IUnknown *pAsyncState) = 0;
139 
140     virtual HRESULT STDMETHODCALLTYPE SetWaitHandle(
141         HANDLE hWaitHandle) = 0;
142 
143     virtual HRESULT STDMETHODCALLTYPE HasCompleted(
144         ) = 0;
145 
146     virtual HRESULT STDMETHODCALLTYPE GetAsyncState(
147         IUnknown **ppAsyncState) = 0;
148 
149     virtual HRESULT STDMETHODCALLTYPE Abort(
150         ) = 0;
151 
152     virtual HRESULT STDMETHODCALLTYPE GetEvent(
153         WSD_EVENT *pEvent) = 0;
154 
155     virtual HRESULT STDMETHODCALLTYPE GetEndpointProxy(
156         IWSDEndpointProxy **ppEndpoint) = 0;
157 
158 };
159 #ifdef __CRT_UUID_DECL
160 __CRT_UUID_DECL(IWSDAsyncResult, 0x11a9852a, 0x8dd8, 0x423e, 0xb5,0x37, 0x93,0x56,0xdb,0x4f,0xbf,0xb8)
161 #endif
162 #else
163 typedef struct IWSDAsyncResultVtbl {
164     BEGIN_INTERFACE
165 
166     /*** IUnknown methods ***/
167     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
168         IWSDAsyncResult* This,
169         REFIID riid,
170         void **ppvObject);
171 
172     ULONG (STDMETHODCALLTYPE *AddRef)(
173         IWSDAsyncResult* This);
174 
175     ULONG (STDMETHODCALLTYPE *Release)(
176         IWSDAsyncResult* This);
177 
178     /*** IWSDAsyncResult methods ***/
179     HRESULT (STDMETHODCALLTYPE *SetCallback)(
180         IWSDAsyncResult* This,
181         IWSDAsyncCallback *pCallback,
182         IUnknown *pAsyncState);
183 
184     HRESULT (STDMETHODCALLTYPE *SetWaitHandle)(
185         IWSDAsyncResult* This,
186         HANDLE hWaitHandle);
187 
188     HRESULT (STDMETHODCALLTYPE *HasCompleted)(
189         IWSDAsyncResult* This);
190 
191     HRESULT (STDMETHODCALLTYPE *GetAsyncState)(
192         IWSDAsyncResult* This,
193         IUnknown **ppAsyncState);
194 
195     HRESULT (STDMETHODCALLTYPE *Abort)(
196         IWSDAsyncResult* This);
197 
198     HRESULT (STDMETHODCALLTYPE *GetEvent)(
199         IWSDAsyncResult* This,
200         WSD_EVENT *pEvent);
201 
202     HRESULT (STDMETHODCALLTYPE *GetEndpointProxy)(
203         IWSDAsyncResult* This,
204         IWSDEndpointProxy **ppEndpoint);
205 
206     END_INTERFACE
207 } IWSDAsyncResultVtbl;
208 interface IWSDAsyncResult {
209     CONST_VTBL IWSDAsyncResultVtbl* lpVtbl;
210 };
211 
212 #ifdef COBJMACROS
213 #ifndef WIDL_C_INLINE_WRAPPERS
214 /*** IUnknown methods ***/
215 #define IWSDAsyncResult_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
216 #define IWSDAsyncResult_AddRef(This) (This)->lpVtbl->AddRef(This)
217 #define IWSDAsyncResult_Release(This) (This)->lpVtbl->Release(This)
218 /*** IWSDAsyncResult methods ***/
219 #define IWSDAsyncResult_SetCallback(This,pCallback,pAsyncState) (This)->lpVtbl->SetCallback(This,pCallback,pAsyncState)
220 #define IWSDAsyncResult_SetWaitHandle(This,hWaitHandle) (This)->lpVtbl->SetWaitHandle(This,hWaitHandle)
221 #define IWSDAsyncResult_HasCompleted(This) (This)->lpVtbl->HasCompleted(This)
222 #define IWSDAsyncResult_GetAsyncState(This,ppAsyncState) (This)->lpVtbl->GetAsyncState(This,ppAsyncState)
223 #define IWSDAsyncResult_Abort(This) (This)->lpVtbl->Abort(This)
224 #define IWSDAsyncResult_GetEvent(This,pEvent) (This)->lpVtbl->GetEvent(This,pEvent)
225 #define IWSDAsyncResult_GetEndpointProxy(This,ppEndpoint) (This)->lpVtbl->GetEndpointProxy(This,ppEndpoint)
226 #else
227 /*** IUnknown methods ***/
228 static FORCEINLINE HRESULT IWSDAsyncResult_QueryInterface(IWSDAsyncResult* This,REFIID riid,void **ppvObject) {
229     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
230 }
231 static FORCEINLINE ULONG IWSDAsyncResult_AddRef(IWSDAsyncResult* This) {
232     return This->lpVtbl->AddRef(This);
233 }
234 static FORCEINLINE ULONG IWSDAsyncResult_Release(IWSDAsyncResult* This) {
235     return This->lpVtbl->Release(This);
236 }
237 /*** IWSDAsyncResult methods ***/
238 static FORCEINLINE HRESULT IWSDAsyncResult_SetCallback(IWSDAsyncResult* This,IWSDAsyncCallback *pCallback,IUnknown *pAsyncState) {
239     return This->lpVtbl->SetCallback(This,pCallback,pAsyncState);
240 }
241 static FORCEINLINE HRESULT IWSDAsyncResult_SetWaitHandle(IWSDAsyncResult* This,HANDLE hWaitHandle) {
242     return This->lpVtbl->SetWaitHandle(This,hWaitHandle);
243 }
244 static FORCEINLINE HRESULT IWSDAsyncResult_HasCompleted(IWSDAsyncResult* This) {
245     return This->lpVtbl->HasCompleted(This);
246 }
247 static FORCEINLINE HRESULT IWSDAsyncResult_GetAsyncState(IWSDAsyncResult* This,IUnknown **ppAsyncState) {
248     return This->lpVtbl->GetAsyncState(This,ppAsyncState);
249 }
250 static FORCEINLINE HRESULT IWSDAsyncResult_Abort(IWSDAsyncResult* This) {
251     return This->lpVtbl->Abort(This);
252 }
253 static FORCEINLINE HRESULT IWSDAsyncResult_GetEvent(IWSDAsyncResult* This,WSD_EVENT *pEvent) {
254     return This->lpVtbl->GetEvent(This,pEvent);
255 }
256 static FORCEINLINE HRESULT IWSDAsyncResult_GetEndpointProxy(IWSDAsyncResult* This,IWSDEndpointProxy **ppEndpoint) {
257     return This->lpVtbl->GetEndpointProxy(This,ppEndpoint);
258 }
259 #endif
260 #endif
261 
262 #endif
263 
264 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_SetCallback_Proxy(
265     IWSDAsyncResult* This,
266     IWSDAsyncCallback *pCallback,
267     IUnknown *pAsyncState);
268 void __RPC_STUB IWSDAsyncResult_SetCallback_Stub(
269     IRpcStubBuffer* This,
270     IRpcChannelBuffer* pRpcChannelBuffer,
271     PRPC_MESSAGE pRpcMessage,
272     DWORD* pdwStubPhase);
273 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_SetWaitHandle_Proxy(
274     IWSDAsyncResult* This,
275     HANDLE hWaitHandle);
276 void __RPC_STUB IWSDAsyncResult_SetWaitHandle_Stub(
277     IRpcStubBuffer* This,
278     IRpcChannelBuffer* pRpcChannelBuffer,
279     PRPC_MESSAGE pRpcMessage,
280     DWORD* pdwStubPhase);
281 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_HasCompleted_Proxy(
282     IWSDAsyncResult* This);
283 void __RPC_STUB IWSDAsyncResult_HasCompleted_Stub(
284     IRpcStubBuffer* This,
285     IRpcChannelBuffer* pRpcChannelBuffer,
286     PRPC_MESSAGE pRpcMessage,
287     DWORD* pdwStubPhase);
288 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_GetAsyncState_Proxy(
289     IWSDAsyncResult* This,
290     IUnknown **ppAsyncState);
291 void __RPC_STUB IWSDAsyncResult_GetAsyncState_Stub(
292     IRpcStubBuffer* This,
293     IRpcChannelBuffer* pRpcChannelBuffer,
294     PRPC_MESSAGE pRpcMessage,
295     DWORD* pdwStubPhase);
296 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_Abort_Proxy(
297     IWSDAsyncResult* This);
298 void __RPC_STUB IWSDAsyncResult_Abort_Stub(
299     IRpcStubBuffer* This,
300     IRpcChannelBuffer* pRpcChannelBuffer,
301     PRPC_MESSAGE pRpcMessage,
302     DWORD* pdwStubPhase);
303 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_GetEvent_Proxy(
304     IWSDAsyncResult* This,
305     WSD_EVENT *pEvent);
306 void __RPC_STUB IWSDAsyncResult_GetEvent_Stub(
307     IRpcStubBuffer* This,
308     IRpcChannelBuffer* pRpcChannelBuffer,
309     PRPC_MESSAGE pRpcMessage,
310     DWORD* pdwStubPhase);
311 HRESULT STDMETHODCALLTYPE IWSDAsyncResult_GetEndpointProxy_Proxy(
312     IWSDAsyncResult* This,
313     IWSDEndpointProxy **ppEndpoint);
314 void __RPC_STUB IWSDAsyncResult_GetEndpointProxy_Stub(
315     IRpcStubBuffer* This,
316     IRpcChannelBuffer* pRpcChannelBuffer,
317     PRPC_MESSAGE pRpcMessage,
318     DWORD* pdwStubPhase);
319 
320 #endif  /* __IWSDAsyncResult_INTERFACE_DEFINED__ */
321 
322 /*****************************************************************************
323  * IWSDAsyncCallback interface
324  */
325 #ifndef __IWSDAsyncCallback_INTERFACE_DEFINED__
326 #define __IWSDAsyncCallback_INTERFACE_DEFINED__
327 
328 DEFINE_GUID(IID_IWSDAsyncCallback, 0xa63e109d, 0xce72, 0x49e2, 0xba,0x98, 0xe8,0x45,0xf5,0xee,0x16,0x66);
329 #if defined(__cplusplus) && !defined(CINTERFACE)
330 MIDL_INTERFACE("a63e109d-ce72-49e2-ba98-e845f5ee1666")
331 IWSDAsyncCallback : public IUnknown
332 {
333     virtual HRESULT STDMETHODCALLTYPE AsyncOperationComplete(
334         IWSDAsyncResult *pAsyncResult,
335         IUnknown *pAsyncState) = 0;
336 
337 };
338 #ifdef __CRT_UUID_DECL
339 __CRT_UUID_DECL(IWSDAsyncCallback, 0xa63e109d, 0xce72, 0x49e2, 0xba,0x98, 0xe8,0x45,0xf5,0xee,0x16,0x66)
340 #endif
341 #else
342 typedef struct IWSDAsyncCallbackVtbl {
343     BEGIN_INTERFACE
344 
345     /*** IUnknown methods ***/
346     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
347         IWSDAsyncCallback* This,
348         REFIID riid,
349         void **ppvObject);
350 
351     ULONG (STDMETHODCALLTYPE *AddRef)(
352         IWSDAsyncCallback* This);
353 
354     ULONG (STDMETHODCALLTYPE *Release)(
355         IWSDAsyncCallback* This);
356 
357     /*** IWSDAsyncCallback methods ***/
358     HRESULT (STDMETHODCALLTYPE *AsyncOperationComplete)(
359         IWSDAsyncCallback* This,
360         IWSDAsyncResult *pAsyncResult,
361         IUnknown *pAsyncState);
362 
363     END_INTERFACE
364 } IWSDAsyncCallbackVtbl;
365 interface IWSDAsyncCallback {
366     CONST_VTBL IWSDAsyncCallbackVtbl* lpVtbl;
367 };
368 
369 #ifdef COBJMACROS
370 #ifndef WIDL_C_INLINE_WRAPPERS
371 /*** IUnknown methods ***/
372 #define IWSDAsyncCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
373 #define IWSDAsyncCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
374 #define IWSDAsyncCallback_Release(This) (This)->lpVtbl->Release(This)
375 /*** IWSDAsyncCallback methods ***/
376 #define IWSDAsyncCallback_AsyncOperationComplete(This,pAsyncResult,pAsyncState) (This)->lpVtbl->AsyncOperationComplete(This,pAsyncResult,pAsyncState)
377 #else
378 /*** IUnknown methods ***/
379 static FORCEINLINE HRESULT IWSDAsyncCallback_QueryInterface(IWSDAsyncCallback* This,REFIID riid,void **ppvObject) {
380     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
381 }
382 static FORCEINLINE ULONG IWSDAsyncCallback_AddRef(IWSDAsyncCallback* This) {
383     return This->lpVtbl->AddRef(This);
384 }
385 static FORCEINLINE ULONG IWSDAsyncCallback_Release(IWSDAsyncCallback* This) {
386     return This->lpVtbl->Release(This);
387 }
388 /*** IWSDAsyncCallback methods ***/
389 static FORCEINLINE HRESULT IWSDAsyncCallback_AsyncOperationComplete(IWSDAsyncCallback* This,IWSDAsyncResult *pAsyncResult,IUnknown *pAsyncState) {
390     return This->lpVtbl->AsyncOperationComplete(This,pAsyncResult,pAsyncState);
391 }
392 #endif
393 #endif
394 
395 #endif
396 
397 HRESULT STDMETHODCALLTYPE IWSDAsyncCallback_AsyncOperationComplete_Proxy(
398     IWSDAsyncCallback* This,
399     IWSDAsyncResult *pAsyncResult,
400     IUnknown *pAsyncState);
401 void __RPC_STUB IWSDAsyncCallback_AsyncOperationComplete_Stub(
402     IRpcStubBuffer* This,
403     IRpcChannelBuffer* pRpcChannelBuffer,
404     PRPC_MESSAGE pRpcMessage,
405     DWORD* pdwStubPhase);
406 
407 #endif  /* __IWSDAsyncCallback_INTERFACE_DEFINED__ */
408 
409 /*****************************************************************************
410  * IWSDMetadataExchange interface
411  */
412 #ifndef __IWSDMetadataExchange_INTERFACE_DEFINED__
413 #define __IWSDMetadataExchange_INTERFACE_DEFINED__
414 
415 DEFINE_GUID(IID_IWSDMetadataExchange, 0x06996d57, 0x1d67, 0x4928, 0x93,0x07, 0x3d,0x78,0x33,0xfd,0xb8,0x46);
416 #if defined(__cplusplus) && !defined(CINTERFACE)
417 MIDL_INTERFACE("06996d57-1d67-4928-9307-3d7833fdb846")
418 IWSDMetadataExchange : public IUnknown
419 {
420     virtual HRESULT STDMETHODCALLTYPE GetMetadata(
421         WSD_METADATA_SECTION_LIST **MetadataOut) = 0;
422 
423 };
424 #ifdef __CRT_UUID_DECL
425 __CRT_UUID_DECL(IWSDMetadataExchange, 0x06996d57, 0x1d67, 0x4928, 0x93,0x07, 0x3d,0x78,0x33,0xfd,0xb8,0x46)
426 #endif
427 #else
428 typedef struct IWSDMetadataExchangeVtbl {
429     BEGIN_INTERFACE
430 
431     /*** IUnknown methods ***/
432     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
433         IWSDMetadataExchange* This,
434         REFIID riid,
435         void **ppvObject);
436 
437     ULONG (STDMETHODCALLTYPE *AddRef)(
438         IWSDMetadataExchange* This);
439 
440     ULONG (STDMETHODCALLTYPE *Release)(
441         IWSDMetadataExchange* This);
442 
443     /*** IWSDMetadataExchange methods ***/
444     HRESULT (STDMETHODCALLTYPE *GetMetadata)(
445         IWSDMetadataExchange* This,
446         WSD_METADATA_SECTION_LIST **MetadataOut);
447 
448     END_INTERFACE
449 } IWSDMetadataExchangeVtbl;
450 interface IWSDMetadataExchange {
451     CONST_VTBL IWSDMetadataExchangeVtbl* lpVtbl;
452 };
453 
454 #ifdef COBJMACROS
455 #ifndef WIDL_C_INLINE_WRAPPERS
456 /*** IUnknown methods ***/
457 #define IWSDMetadataExchange_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
458 #define IWSDMetadataExchange_AddRef(This) (This)->lpVtbl->AddRef(This)
459 #define IWSDMetadataExchange_Release(This) (This)->lpVtbl->Release(This)
460 /*** IWSDMetadataExchange methods ***/
461 #define IWSDMetadataExchange_GetMetadata(This,MetadataOut) (This)->lpVtbl->GetMetadata(This,MetadataOut)
462 #else
463 /*** IUnknown methods ***/
464 static FORCEINLINE HRESULT IWSDMetadataExchange_QueryInterface(IWSDMetadataExchange* This,REFIID riid,void **ppvObject) {
465     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
466 }
467 static FORCEINLINE ULONG IWSDMetadataExchange_AddRef(IWSDMetadataExchange* This) {
468     return This->lpVtbl->AddRef(This);
469 }
470 static FORCEINLINE ULONG IWSDMetadataExchange_Release(IWSDMetadataExchange* This) {
471     return This->lpVtbl->Release(This);
472 }
473 /*** IWSDMetadataExchange methods ***/
474 static FORCEINLINE HRESULT IWSDMetadataExchange_GetMetadata(IWSDMetadataExchange* This,WSD_METADATA_SECTION_LIST **MetadataOut) {
475     return This->lpVtbl->GetMetadata(This,MetadataOut);
476 }
477 #endif
478 #endif
479 
480 #endif
481 
482 HRESULT STDMETHODCALLTYPE IWSDMetadataExchange_GetMetadata_Proxy(
483     IWSDMetadataExchange* This,
484     WSD_METADATA_SECTION_LIST **MetadataOut);
485 void __RPC_STUB IWSDMetadataExchange_GetMetadata_Stub(
486     IRpcStubBuffer* This,
487     IRpcChannelBuffer* pRpcChannelBuffer,
488     PRPC_MESSAGE pRpcMessage,
489     DWORD* pdwStubPhase);
490 
491 #endif  /* __IWSDMetadataExchange_INTERFACE_DEFINED__ */
492 
493 /*****************************************************************************
494  * IWSDEventingStatus interface
495  */
496 #ifndef __IWSDEventingStatus_INTERFACE_DEFINED__
497 #define __IWSDEventingStatus_INTERFACE_DEFINED__
498 
499 DEFINE_GUID(IID_IWSDEventingStatus, 0x49b17f52, 0x637a, 0x407a, 0xae,0x99, 0xfb,0xe8,0x2a,0x4d,0x38,0xc0);
500 #if defined(__cplusplus) && !defined(CINTERFACE)
501 MIDL_INTERFACE("49b17f52-637a-407a-ae99-fbe82a4d38c0")
502 IWSDEventingStatus : public IUnknown
503 {
504     virtual void STDMETHODCALLTYPE SubscriptionRenewed(
505         LPCWSTR pszSubscriptionAction) = 0;
506 
507     virtual void STDMETHODCALLTYPE SubscriptionRenewalFailed(
508         LPCWSTR pszSubscriptionAction,
509         HRESULT hr) = 0;
510 
511     virtual void STDMETHODCALLTYPE SubscriptionEnded(
512         LPCWSTR pszSubscriptionAction) = 0;
513 
514 };
515 #ifdef __CRT_UUID_DECL
516 __CRT_UUID_DECL(IWSDEventingStatus, 0x49b17f52, 0x637a, 0x407a, 0xae,0x99, 0xfb,0xe8,0x2a,0x4d,0x38,0xc0)
517 #endif
518 #else
519 typedef struct IWSDEventingStatusVtbl {
520     BEGIN_INTERFACE
521 
522     /*** IUnknown methods ***/
523     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
524         IWSDEventingStatus* This,
525         REFIID riid,
526         void **ppvObject);
527 
528     ULONG (STDMETHODCALLTYPE *AddRef)(
529         IWSDEventingStatus* This);
530 
531     ULONG (STDMETHODCALLTYPE *Release)(
532         IWSDEventingStatus* This);
533 
534     /*** IWSDEventingStatus methods ***/
535     void (STDMETHODCALLTYPE *SubscriptionRenewed)(
536         IWSDEventingStatus* This,
537         LPCWSTR pszSubscriptionAction);
538 
539     void (STDMETHODCALLTYPE *SubscriptionRenewalFailed)(
540         IWSDEventingStatus* This,
541         LPCWSTR pszSubscriptionAction,
542         HRESULT hr);
543 
544     void (STDMETHODCALLTYPE *SubscriptionEnded)(
545         IWSDEventingStatus* This,
546         LPCWSTR pszSubscriptionAction);
547 
548     END_INTERFACE
549 } IWSDEventingStatusVtbl;
550 interface IWSDEventingStatus {
551     CONST_VTBL IWSDEventingStatusVtbl* lpVtbl;
552 };
553 
554 #ifdef COBJMACROS
555 #ifndef WIDL_C_INLINE_WRAPPERS
556 /*** IUnknown methods ***/
557 #define IWSDEventingStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
558 #define IWSDEventingStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
559 #define IWSDEventingStatus_Release(This) (This)->lpVtbl->Release(This)
560 /*** IWSDEventingStatus methods ***/
561 #define IWSDEventingStatus_SubscriptionRenewed(This,pszSubscriptionAction) (This)->lpVtbl->SubscriptionRenewed(This,pszSubscriptionAction)
562 #define IWSDEventingStatus_SubscriptionRenewalFailed(This,pszSubscriptionAction,hr) (This)->lpVtbl->SubscriptionRenewalFailed(This,pszSubscriptionAction,hr)
563 #define IWSDEventingStatus_SubscriptionEnded(This,pszSubscriptionAction) (This)->lpVtbl->SubscriptionEnded(This,pszSubscriptionAction)
564 #else
565 /*** IUnknown methods ***/
566 static FORCEINLINE HRESULT IWSDEventingStatus_QueryInterface(IWSDEventingStatus* This,REFIID riid,void **ppvObject) {
567     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
568 }
569 static FORCEINLINE ULONG IWSDEventingStatus_AddRef(IWSDEventingStatus* This) {
570     return This->lpVtbl->AddRef(This);
571 }
572 static FORCEINLINE ULONG IWSDEventingStatus_Release(IWSDEventingStatus* This) {
573     return This->lpVtbl->Release(This);
574 }
575 /*** IWSDEventingStatus methods ***/
576 static FORCEINLINE void IWSDEventingStatus_SubscriptionRenewed(IWSDEventingStatus* This,LPCWSTR pszSubscriptionAction) {
577     This->lpVtbl->SubscriptionRenewed(This,pszSubscriptionAction);
578 }
579 static FORCEINLINE void IWSDEventingStatus_SubscriptionRenewalFailed(IWSDEventingStatus* This,LPCWSTR pszSubscriptionAction,HRESULT hr) {
580     This->lpVtbl->SubscriptionRenewalFailed(This,pszSubscriptionAction,hr);
581 }
582 static FORCEINLINE void IWSDEventingStatus_SubscriptionEnded(IWSDEventingStatus* This,LPCWSTR pszSubscriptionAction) {
583     This->lpVtbl->SubscriptionEnded(This,pszSubscriptionAction);
584 }
585 #endif
586 #endif
587 
588 #endif
589 
590 void STDMETHODCALLTYPE IWSDEventingStatus_SubscriptionRenewed_Proxy(
591     IWSDEventingStatus* This,
592     LPCWSTR pszSubscriptionAction);
593 void __RPC_STUB IWSDEventingStatus_SubscriptionRenewed_Stub(
594     IRpcStubBuffer* This,
595     IRpcChannelBuffer* pRpcChannelBuffer,
596     PRPC_MESSAGE pRpcMessage,
597     DWORD* pdwStubPhase);
598 void STDMETHODCALLTYPE IWSDEventingStatus_SubscriptionRenewalFailed_Proxy(
599     IWSDEventingStatus* This,
600     LPCWSTR pszSubscriptionAction,
601     HRESULT hr);
602 void __RPC_STUB IWSDEventingStatus_SubscriptionRenewalFailed_Stub(
603     IRpcStubBuffer* This,
604     IRpcChannelBuffer* pRpcChannelBuffer,
605     PRPC_MESSAGE pRpcMessage,
606     DWORD* pdwStubPhase);
607 void STDMETHODCALLTYPE IWSDEventingStatus_SubscriptionEnded_Proxy(
608     IWSDEventingStatus* This,
609     LPCWSTR pszSubscriptionAction);
610 void __RPC_STUB IWSDEventingStatus_SubscriptionEnded_Stub(
611     IRpcStubBuffer* This,
612     IRpcChannelBuffer* pRpcChannelBuffer,
613     PRPC_MESSAGE pRpcMessage,
614     DWORD* pdwStubPhase);
615 
616 #endif  /* __IWSDEventingStatus_INTERFACE_DEFINED__ */
617 
618 /*****************************************************************************
619  * IWSDEndpointProxy interface
620  */
621 #ifndef __IWSDEndpointProxy_INTERFACE_DEFINED__
622 #define __IWSDEndpointProxy_INTERFACE_DEFINED__
623 
624 DEFINE_GUID(IID_IWSDEndpointProxy, 0x1860d430, 0xb24c, 0x4975, 0x9f,0x90, 0xdb,0xb3,0x9b,0xaa,0x24,0xec);
625 #if defined(__cplusplus) && !defined(CINTERFACE)
626 MIDL_INTERFACE("1860d430-b24c-4975-9f90-dbb39baa24ec")
627 IWSDEndpointProxy : public IUnknown
628 {
629     virtual HRESULT STDMETHODCALLTYPE SendOneWayRequest(
630         const void *pBody,
631         const WSD_OPERATION *pOperation) = 0;
632 
633     virtual HRESULT STDMETHODCALLTYPE SendTwoWayRequest(
634         const void *pBody,
635         const WSD_OPERATION *pOperation,
636         const WSD_SYNCHRONOUS_RESPONSE_CONTEXT *pResponseContext) = 0;
637 
638     virtual HRESULT STDMETHODCALLTYPE SendTwoWayRequestAsync(
639         const void *pBody,
640         const WSD_OPERATION *pOperation,
641         IUnknown *pAsyncState,
642         IWSDAsyncCallback *pCallback,
643         IWSDAsyncResult **pResult) = 0;
644 
645     virtual HRESULT STDMETHODCALLTYPE AbortAsyncOperation(
646         IWSDAsyncResult *pAsyncResult) = 0;
647 
648     virtual HRESULT STDMETHODCALLTYPE ProcessFault(
649         const WSD_SOAP_FAULT *pFault) = 0;
650 
651     virtual HRESULT STDMETHODCALLTYPE GetErrorInfo(
652         LPCWSTR *ppszErrorInfo) = 0;
653 
654     virtual HRESULT STDMETHODCALLTYPE GetFaultInfo(
655         WSD_SOAP_FAULT **ppFault) = 0;
656 
657 };
658 #ifdef __CRT_UUID_DECL
659 __CRT_UUID_DECL(IWSDEndpointProxy, 0x1860d430, 0xb24c, 0x4975, 0x9f,0x90, 0xdb,0xb3,0x9b,0xaa,0x24,0xec)
660 #endif
661 #else
662 typedef struct IWSDEndpointProxyVtbl {
663     BEGIN_INTERFACE
664 
665     /*** IUnknown methods ***/
666     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
667         IWSDEndpointProxy* This,
668         REFIID riid,
669         void **ppvObject);
670 
671     ULONG (STDMETHODCALLTYPE *AddRef)(
672         IWSDEndpointProxy* This);
673 
674     ULONG (STDMETHODCALLTYPE *Release)(
675         IWSDEndpointProxy* This);
676 
677     /*** IWSDEndpointProxy methods ***/
678     HRESULT (STDMETHODCALLTYPE *SendOneWayRequest)(
679         IWSDEndpointProxy* This,
680         const void *pBody,
681         const WSD_OPERATION *pOperation);
682 
683     HRESULT (STDMETHODCALLTYPE *SendTwoWayRequest)(
684         IWSDEndpointProxy* This,
685         const void *pBody,
686         const WSD_OPERATION *pOperation,
687         const WSD_SYNCHRONOUS_RESPONSE_CONTEXT *pResponseContext);
688 
689     HRESULT (STDMETHODCALLTYPE *SendTwoWayRequestAsync)(
690         IWSDEndpointProxy* This,
691         const void *pBody,
692         const WSD_OPERATION *pOperation,
693         IUnknown *pAsyncState,
694         IWSDAsyncCallback *pCallback,
695         IWSDAsyncResult **pResult);
696 
697     HRESULT (STDMETHODCALLTYPE *AbortAsyncOperation)(
698         IWSDEndpointProxy* This,
699         IWSDAsyncResult *pAsyncResult);
700 
701     HRESULT (STDMETHODCALLTYPE *ProcessFault)(
702         IWSDEndpointProxy* This,
703         const WSD_SOAP_FAULT *pFault);
704 
705     HRESULT (STDMETHODCALLTYPE *GetErrorInfo)(
706         IWSDEndpointProxy* This,
707         LPCWSTR *ppszErrorInfo);
708 
709     HRESULT (STDMETHODCALLTYPE *GetFaultInfo)(
710         IWSDEndpointProxy* This,
711         WSD_SOAP_FAULT **ppFault);
712 
713     END_INTERFACE
714 } IWSDEndpointProxyVtbl;
715 interface IWSDEndpointProxy {
716     CONST_VTBL IWSDEndpointProxyVtbl* lpVtbl;
717 };
718 
719 #ifdef COBJMACROS
720 #ifndef WIDL_C_INLINE_WRAPPERS
721 /*** IUnknown methods ***/
722 #define IWSDEndpointProxy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
723 #define IWSDEndpointProxy_AddRef(This) (This)->lpVtbl->AddRef(This)
724 #define IWSDEndpointProxy_Release(This) (This)->lpVtbl->Release(This)
725 /*** IWSDEndpointProxy methods ***/
726 #define IWSDEndpointProxy_SendOneWayRequest(This,pBody,pOperation) (This)->lpVtbl->SendOneWayRequest(This,pBody,pOperation)
727 #define IWSDEndpointProxy_SendTwoWayRequest(This,pBody,pOperation,pResponseContext) (This)->lpVtbl->SendTwoWayRequest(This,pBody,pOperation,pResponseContext)
728 #define IWSDEndpointProxy_SendTwoWayRequestAsync(This,pBody,pOperation,pAsyncState,pCallback,pResult) (This)->lpVtbl->SendTwoWayRequestAsync(This,pBody,pOperation,pAsyncState,pCallback,pResult)
729 #define IWSDEndpointProxy_AbortAsyncOperation(This,pAsyncResult) (This)->lpVtbl->AbortAsyncOperation(This,pAsyncResult)
730 #define IWSDEndpointProxy_ProcessFault(This,pFault) (This)->lpVtbl->ProcessFault(This,pFault)
731 #define IWSDEndpointProxy_GetErrorInfo(This,ppszErrorInfo) (This)->lpVtbl->GetErrorInfo(This,ppszErrorInfo)
732 #define IWSDEndpointProxy_GetFaultInfo(This,ppFault) (This)->lpVtbl->GetFaultInfo(This,ppFault)
733 #else
734 /*** IUnknown methods ***/
735 static FORCEINLINE HRESULT IWSDEndpointProxy_QueryInterface(IWSDEndpointProxy* This,REFIID riid,void **ppvObject) {
736     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
737 }
738 static FORCEINLINE ULONG IWSDEndpointProxy_AddRef(IWSDEndpointProxy* This) {
739     return This->lpVtbl->AddRef(This);
740 }
741 static FORCEINLINE ULONG IWSDEndpointProxy_Release(IWSDEndpointProxy* This) {
742     return This->lpVtbl->Release(This);
743 }
744 /*** IWSDEndpointProxy methods ***/
745 static FORCEINLINE HRESULT IWSDEndpointProxy_SendOneWayRequest(IWSDEndpointProxy* This,const void *pBody,const WSD_OPERATION *pOperation) {
746     return This->lpVtbl->SendOneWayRequest(This,pBody,pOperation);
747 }
748 static FORCEINLINE HRESULT IWSDEndpointProxy_SendTwoWayRequest(IWSDEndpointProxy* This,const void *pBody,const WSD_OPERATION *pOperation,const WSD_SYNCHRONOUS_RESPONSE_CONTEXT *pResponseContext) {
749     return This->lpVtbl->SendTwoWayRequest(This,pBody,pOperation,pResponseContext);
750 }
751 static FORCEINLINE HRESULT IWSDEndpointProxy_SendTwoWayRequestAsync(IWSDEndpointProxy* This,const void *pBody,const WSD_OPERATION *pOperation,IUnknown *pAsyncState,IWSDAsyncCallback *pCallback,IWSDAsyncResult **pResult) {
752     return This->lpVtbl->SendTwoWayRequestAsync(This,pBody,pOperation,pAsyncState,pCallback,pResult);
753 }
754 static FORCEINLINE HRESULT IWSDEndpointProxy_AbortAsyncOperation(IWSDEndpointProxy* This,IWSDAsyncResult *pAsyncResult) {
755     return This->lpVtbl->AbortAsyncOperation(This,pAsyncResult);
756 }
757 static FORCEINLINE HRESULT IWSDEndpointProxy_ProcessFault(IWSDEndpointProxy* This,const WSD_SOAP_FAULT *pFault) {
758     return This->lpVtbl->ProcessFault(This,pFault);
759 }
760 static FORCEINLINE HRESULT IWSDEndpointProxy_GetErrorInfo(IWSDEndpointProxy* This,LPCWSTR *ppszErrorInfo) {
761     return This->lpVtbl->GetErrorInfo(This,ppszErrorInfo);
762 }
763 static FORCEINLINE HRESULT IWSDEndpointProxy_GetFaultInfo(IWSDEndpointProxy* This,WSD_SOAP_FAULT **ppFault) {
764     return This->lpVtbl->GetFaultInfo(This,ppFault);
765 }
766 #endif
767 #endif
768 
769 #endif
770 
771 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_SendOneWayRequest_Proxy(
772     IWSDEndpointProxy* This,
773     const void *pBody,
774     const WSD_OPERATION *pOperation);
775 void __RPC_STUB IWSDEndpointProxy_SendOneWayRequest_Stub(
776     IRpcStubBuffer* This,
777     IRpcChannelBuffer* pRpcChannelBuffer,
778     PRPC_MESSAGE pRpcMessage,
779     DWORD* pdwStubPhase);
780 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_SendTwoWayRequest_Proxy(
781     IWSDEndpointProxy* This,
782     const void *pBody,
783     const WSD_OPERATION *pOperation,
784     const WSD_SYNCHRONOUS_RESPONSE_CONTEXT *pResponseContext);
785 void __RPC_STUB IWSDEndpointProxy_SendTwoWayRequest_Stub(
786     IRpcStubBuffer* This,
787     IRpcChannelBuffer* pRpcChannelBuffer,
788     PRPC_MESSAGE pRpcMessage,
789     DWORD* pdwStubPhase);
790 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_SendTwoWayRequestAsync_Proxy(
791     IWSDEndpointProxy* This,
792     const void *pBody,
793     const WSD_OPERATION *pOperation,
794     IUnknown *pAsyncState,
795     IWSDAsyncCallback *pCallback,
796     IWSDAsyncResult **pResult);
797 void __RPC_STUB IWSDEndpointProxy_SendTwoWayRequestAsync_Stub(
798     IRpcStubBuffer* This,
799     IRpcChannelBuffer* pRpcChannelBuffer,
800     PRPC_MESSAGE pRpcMessage,
801     DWORD* pdwStubPhase);
802 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_AbortAsyncOperation_Proxy(
803     IWSDEndpointProxy* This,
804     IWSDAsyncResult *pAsyncResult);
805 void __RPC_STUB IWSDEndpointProxy_AbortAsyncOperation_Stub(
806     IRpcStubBuffer* This,
807     IRpcChannelBuffer* pRpcChannelBuffer,
808     PRPC_MESSAGE pRpcMessage,
809     DWORD* pdwStubPhase);
810 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_ProcessFault_Proxy(
811     IWSDEndpointProxy* This,
812     const WSD_SOAP_FAULT *pFault);
813 void __RPC_STUB IWSDEndpointProxy_ProcessFault_Stub(
814     IRpcStubBuffer* This,
815     IRpcChannelBuffer* pRpcChannelBuffer,
816     PRPC_MESSAGE pRpcMessage,
817     DWORD* pdwStubPhase);
818 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_GetErrorInfo_Proxy(
819     IWSDEndpointProxy* This,
820     LPCWSTR *ppszErrorInfo);
821 void __RPC_STUB IWSDEndpointProxy_GetErrorInfo_Stub(
822     IRpcStubBuffer* This,
823     IRpcChannelBuffer* pRpcChannelBuffer,
824     PRPC_MESSAGE pRpcMessage,
825     DWORD* pdwStubPhase);
826 HRESULT STDMETHODCALLTYPE IWSDEndpointProxy_GetFaultInfo_Proxy(
827     IWSDEndpointProxy* This,
828     WSD_SOAP_FAULT **ppFault);
829 void __RPC_STUB IWSDEndpointProxy_GetFaultInfo_Stub(
830     IRpcStubBuffer* This,
831     IRpcChannelBuffer* pRpcChannelBuffer,
832     PRPC_MESSAGE pRpcMessage,
833     DWORD* pdwStubPhase);
834 
835 #endif  /* __IWSDEndpointProxy_INTERFACE_DEFINED__ */
836 
837 /*****************************************************************************
838  * IWSDDeviceProxy interface
839  */
840 #ifndef __IWSDDeviceProxy_INTERFACE_DEFINED__
841 #define __IWSDDeviceProxy_INTERFACE_DEFINED__
842 
843 DEFINE_GUID(IID_IWSDDeviceProxy, 0xeee0c031, 0xc578, 0x4c0e, 0x9a,0x3b, 0x97,0x3c,0x35,0xf4,0x09,0xdb);
844 #if defined(__cplusplus) && !defined(CINTERFACE)
845 MIDL_INTERFACE("eee0c031-c578-4c0e-9a3b-973c35f409db")
846 IWSDDeviceProxy : public IUnknown
847 {
848     virtual HRESULT STDMETHODCALLTYPE Init(
849         LPCWSTR pszDeviceId,
850         IWSDAddress *pDeviceAddress,
851         LPCWSTR pszLocalId,
852         IWSDXMLContext *pContext,
853         IWSDDeviceProxy *pSponsor) = 0;
854 
855     virtual HRESULT STDMETHODCALLTYPE BeginGetMetadata(
856         IWSDAsyncResult **ppResult) = 0;
857 
858     virtual HRESULT STDMETHODCALLTYPE EndGetMetadata(
859         IWSDAsyncResult *pResult) = 0;
860 
861     virtual HRESULT STDMETHODCALLTYPE GetHostMetadata(
862         WSD_HOST_METADATA **ppHostMetadata) = 0;
863 
864     virtual HRESULT STDMETHODCALLTYPE GetThisModelMetadata(
865         WSD_THIS_MODEL_METADATA **ppManufacturerMetadata) = 0;
866 
867     virtual HRESULT STDMETHODCALLTYPE GetThisDeviceMetadata(
868         WSD_THIS_DEVICE_METADATA **ppThisDeviceMetadata) = 0;
869 
870     virtual HRESULT STDMETHODCALLTYPE GetAllMetadata(
871         WSD_METADATA_SECTION_LIST **ppMetadata) = 0;
872 
873     virtual HRESULT STDMETHODCALLTYPE GetServiceProxyById(
874         LPCWSTR pszServiceId,
875         IWSDServiceProxy **ppServiceProxy) = 0;
876 
877     virtual HRESULT STDMETHODCALLTYPE GetServiceProxyByType(
878         const WSDXML_NAME *pType,
879         IWSDServiceProxy **ppServiceProxy) = 0;
880 
881     virtual HRESULT STDMETHODCALLTYPE GetEndpointProxy(
882         IWSDEndpointProxy **ppProxy) = 0;
883 
884 };
885 #ifdef __CRT_UUID_DECL
886 __CRT_UUID_DECL(IWSDDeviceProxy, 0xeee0c031, 0xc578, 0x4c0e, 0x9a,0x3b, 0x97,0x3c,0x35,0xf4,0x09,0xdb)
887 #endif
888 #else
889 typedef struct IWSDDeviceProxyVtbl {
890     BEGIN_INTERFACE
891 
892     /*** IUnknown methods ***/
893     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
894         IWSDDeviceProxy* This,
895         REFIID riid,
896         void **ppvObject);
897 
898     ULONG (STDMETHODCALLTYPE *AddRef)(
899         IWSDDeviceProxy* This);
900 
901     ULONG (STDMETHODCALLTYPE *Release)(
902         IWSDDeviceProxy* This);
903 
904     /*** IWSDDeviceProxy methods ***/
905     HRESULT (STDMETHODCALLTYPE *Init)(
906         IWSDDeviceProxy* This,
907         LPCWSTR pszDeviceId,
908         IWSDAddress *pDeviceAddress,
909         LPCWSTR pszLocalId,
910         IWSDXMLContext *pContext,
911         IWSDDeviceProxy *pSponsor);
912 
913     HRESULT (STDMETHODCALLTYPE *BeginGetMetadata)(
914         IWSDDeviceProxy* This,
915         IWSDAsyncResult **ppResult);
916 
917     HRESULT (STDMETHODCALLTYPE *EndGetMetadata)(
918         IWSDDeviceProxy* This,
919         IWSDAsyncResult *pResult);
920 
921     HRESULT (STDMETHODCALLTYPE *GetHostMetadata)(
922         IWSDDeviceProxy* This,
923         WSD_HOST_METADATA **ppHostMetadata);
924 
925     HRESULT (STDMETHODCALLTYPE *GetThisModelMetadata)(
926         IWSDDeviceProxy* This,
927         WSD_THIS_MODEL_METADATA **ppManufacturerMetadata);
928 
929     HRESULT (STDMETHODCALLTYPE *GetThisDeviceMetadata)(
930         IWSDDeviceProxy* This,
931         WSD_THIS_DEVICE_METADATA **ppThisDeviceMetadata);
932 
933     HRESULT (STDMETHODCALLTYPE *GetAllMetadata)(
934         IWSDDeviceProxy* This,
935         WSD_METADATA_SECTION_LIST **ppMetadata);
936 
937     HRESULT (STDMETHODCALLTYPE *GetServiceProxyById)(
938         IWSDDeviceProxy* This,
939         LPCWSTR pszServiceId,
940         IWSDServiceProxy **ppServiceProxy);
941 
942     HRESULT (STDMETHODCALLTYPE *GetServiceProxyByType)(
943         IWSDDeviceProxy* This,
944         const WSDXML_NAME *pType,
945         IWSDServiceProxy **ppServiceProxy);
946 
947     HRESULT (STDMETHODCALLTYPE *GetEndpointProxy)(
948         IWSDDeviceProxy* This,
949         IWSDEndpointProxy **ppProxy);
950 
951     END_INTERFACE
952 } IWSDDeviceProxyVtbl;
953 interface IWSDDeviceProxy {
954     CONST_VTBL IWSDDeviceProxyVtbl* lpVtbl;
955 };
956 
957 #ifdef COBJMACROS
958 #ifndef WIDL_C_INLINE_WRAPPERS
959 /*** IUnknown methods ***/
960 #define IWSDDeviceProxy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
961 #define IWSDDeviceProxy_AddRef(This) (This)->lpVtbl->AddRef(This)
962 #define IWSDDeviceProxy_Release(This) (This)->lpVtbl->Release(This)
963 /*** IWSDDeviceProxy methods ***/
964 #define IWSDDeviceProxy_Init(This,pszDeviceId,pDeviceAddress,pszLocalId,pContext,pSponsor) (This)->lpVtbl->Init(This,pszDeviceId,pDeviceAddress,pszLocalId,pContext,pSponsor)
965 #define IWSDDeviceProxy_BeginGetMetadata(This,ppResult) (This)->lpVtbl->BeginGetMetadata(This,ppResult)
966 #define IWSDDeviceProxy_EndGetMetadata(This,pResult) (This)->lpVtbl->EndGetMetadata(This,pResult)
967 #define IWSDDeviceProxy_GetHostMetadata(This,ppHostMetadata) (This)->lpVtbl->GetHostMetadata(This,ppHostMetadata)
968 #define IWSDDeviceProxy_GetThisModelMetadata(This,ppManufacturerMetadata) (This)->lpVtbl->GetThisModelMetadata(This,ppManufacturerMetadata)
969 #define IWSDDeviceProxy_GetThisDeviceMetadata(This,ppThisDeviceMetadata) (This)->lpVtbl->GetThisDeviceMetadata(This,ppThisDeviceMetadata)
970 #define IWSDDeviceProxy_GetAllMetadata(This,ppMetadata) (This)->lpVtbl->GetAllMetadata(This,ppMetadata)
971 #define IWSDDeviceProxy_GetServiceProxyById(This,pszServiceId,ppServiceProxy) (This)->lpVtbl->GetServiceProxyById(This,pszServiceId,ppServiceProxy)
972 #define IWSDDeviceProxy_GetServiceProxyByType(This,pType,ppServiceProxy) (This)->lpVtbl->GetServiceProxyByType(This,pType,ppServiceProxy)
973 #define IWSDDeviceProxy_GetEndpointProxy(This,ppProxy) (This)->lpVtbl->GetEndpointProxy(This,ppProxy)
974 #else
975 /*** IUnknown methods ***/
976 static FORCEINLINE HRESULT IWSDDeviceProxy_QueryInterface(IWSDDeviceProxy* This,REFIID riid,void **ppvObject) {
977     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
978 }
979 static FORCEINLINE ULONG IWSDDeviceProxy_AddRef(IWSDDeviceProxy* This) {
980     return This->lpVtbl->AddRef(This);
981 }
982 static FORCEINLINE ULONG IWSDDeviceProxy_Release(IWSDDeviceProxy* This) {
983     return This->lpVtbl->Release(This);
984 }
985 /*** IWSDDeviceProxy methods ***/
986 static FORCEINLINE HRESULT IWSDDeviceProxy_Init(IWSDDeviceProxy* This,LPCWSTR pszDeviceId,IWSDAddress *pDeviceAddress,LPCWSTR pszLocalId,IWSDXMLContext *pContext,IWSDDeviceProxy *pSponsor) {
987     return This->lpVtbl->Init(This,pszDeviceId,pDeviceAddress,pszLocalId,pContext,pSponsor);
988 }
989 static FORCEINLINE HRESULT IWSDDeviceProxy_BeginGetMetadata(IWSDDeviceProxy* This,IWSDAsyncResult **ppResult) {
990     return This->lpVtbl->BeginGetMetadata(This,ppResult);
991 }
992 static FORCEINLINE HRESULT IWSDDeviceProxy_EndGetMetadata(IWSDDeviceProxy* This,IWSDAsyncResult *pResult) {
993     return This->lpVtbl->EndGetMetadata(This,pResult);
994 }
995 static FORCEINLINE HRESULT IWSDDeviceProxy_GetHostMetadata(IWSDDeviceProxy* This,WSD_HOST_METADATA **ppHostMetadata) {
996     return This->lpVtbl->GetHostMetadata(This,ppHostMetadata);
997 }
998 static FORCEINLINE HRESULT IWSDDeviceProxy_GetThisModelMetadata(IWSDDeviceProxy* This,WSD_THIS_MODEL_METADATA **ppManufacturerMetadata) {
999     return This->lpVtbl->GetThisModelMetadata(This,ppManufacturerMetadata);
1000 }
1001 static FORCEINLINE HRESULT IWSDDeviceProxy_GetThisDeviceMetadata(IWSDDeviceProxy* This,WSD_THIS_DEVICE_METADATA **ppThisDeviceMetadata) {
1002     return This->lpVtbl->GetThisDeviceMetadata(This,ppThisDeviceMetadata);
1003 }
1004 static FORCEINLINE HRESULT IWSDDeviceProxy_GetAllMetadata(IWSDDeviceProxy* This,WSD_METADATA_SECTION_LIST **ppMetadata) {
1005     return This->lpVtbl->GetAllMetadata(This,ppMetadata);
1006 }
1007 static FORCEINLINE HRESULT IWSDDeviceProxy_GetServiceProxyById(IWSDDeviceProxy* This,LPCWSTR pszServiceId,IWSDServiceProxy **ppServiceProxy) {
1008     return This->lpVtbl->GetServiceProxyById(This,pszServiceId,ppServiceProxy);
1009 }
1010 static FORCEINLINE HRESULT IWSDDeviceProxy_GetServiceProxyByType(IWSDDeviceProxy* This,const WSDXML_NAME *pType,IWSDServiceProxy **ppServiceProxy) {
1011     return This->lpVtbl->GetServiceProxyByType(This,pType,ppServiceProxy);
1012 }
1013 static FORCEINLINE HRESULT IWSDDeviceProxy_GetEndpointProxy(IWSDDeviceProxy* This,IWSDEndpointProxy **ppProxy) {
1014     return This->lpVtbl->GetEndpointProxy(This,ppProxy);
1015 }
1016 #endif
1017 #endif
1018 
1019 #endif
1020 
1021 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_Init_Proxy(
1022     IWSDDeviceProxy* This,
1023     LPCWSTR pszDeviceId,
1024     IWSDAddress *pDeviceAddress,
1025     LPCWSTR pszLocalId,
1026     IWSDXMLContext *pContext,
1027     IWSDDeviceProxy *pSponsor);
1028 void __RPC_STUB IWSDDeviceProxy_Init_Stub(
1029     IRpcStubBuffer* This,
1030     IRpcChannelBuffer* pRpcChannelBuffer,
1031     PRPC_MESSAGE pRpcMessage,
1032     DWORD* pdwStubPhase);
1033 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_BeginGetMetadata_Proxy(
1034     IWSDDeviceProxy* This,
1035     IWSDAsyncResult **ppResult);
1036 void __RPC_STUB IWSDDeviceProxy_BeginGetMetadata_Stub(
1037     IRpcStubBuffer* This,
1038     IRpcChannelBuffer* pRpcChannelBuffer,
1039     PRPC_MESSAGE pRpcMessage,
1040     DWORD* pdwStubPhase);
1041 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_EndGetMetadata_Proxy(
1042     IWSDDeviceProxy* This,
1043     IWSDAsyncResult *pResult);
1044 void __RPC_STUB IWSDDeviceProxy_EndGetMetadata_Stub(
1045     IRpcStubBuffer* This,
1046     IRpcChannelBuffer* pRpcChannelBuffer,
1047     PRPC_MESSAGE pRpcMessage,
1048     DWORD* pdwStubPhase);
1049 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetHostMetadata_Proxy(
1050     IWSDDeviceProxy* This,
1051     WSD_HOST_METADATA **ppHostMetadata);
1052 void __RPC_STUB IWSDDeviceProxy_GetHostMetadata_Stub(
1053     IRpcStubBuffer* This,
1054     IRpcChannelBuffer* pRpcChannelBuffer,
1055     PRPC_MESSAGE pRpcMessage,
1056     DWORD* pdwStubPhase);
1057 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetThisModelMetadata_Proxy(
1058     IWSDDeviceProxy* This,
1059     WSD_THIS_MODEL_METADATA **ppManufacturerMetadata);
1060 void __RPC_STUB IWSDDeviceProxy_GetThisModelMetadata_Stub(
1061     IRpcStubBuffer* This,
1062     IRpcChannelBuffer* pRpcChannelBuffer,
1063     PRPC_MESSAGE pRpcMessage,
1064     DWORD* pdwStubPhase);
1065 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetThisDeviceMetadata_Proxy(
1066     IWSDDeviceProxy* This,
1067     WSD_THIS_DEVICE_METADATA **ppThisDeviceMetadata);
1068 void __RPC_STUB IWSDDeviceProxy_GetThisDeviceMetadata_Stub(
1069     IRpcStubBuffer* This,
1070     IRpcChannelBuffer* pRpcChannelBuffer,
1071     PRPC_MESSAGE pRpcMessage,
1072     DWORD* pdwStubPhase);
1073 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetAllMetadata_Proxy(
1074     IWSDDeviceProxy* This,
1075     WSD_METADATA_SECTION_LIST **ppMetadata);
1076 void __RPC_STUB IWSDDeviceProxy_GetAllMetadata_Stub(
1077     IRpcStubBuffer* This,
1078     IRpcChannelBuffer* pRpcChannelBuffer,
1079     PRPC_MESSAGE pRpcMessage,
1080     DWORD* pdwStubPhase);
1081 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetServiceProxyById_Proxy(
1082     IWSDDeviceProxy* This,
1083     LPCWSTR pszServiceId,
1084     IWSDServiceProxy **ppServiceProxy);
1085 void __RPC_STUB IWSDDeviceProxy_GetServiceProxyById_Stub(
1086     IRpcStubBuffer* This,
1087     IRpcChannelBuffer* pRpcChannelBuffer,
1088     PRPC_MESSAGE pRpcMessage,
1089     DWORD* pdwStubPhase);
1090 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetServiceProxyByType_Proxy(
1091     IWSDDeviceProxy* This,
1092     const WSDXML_NAME *pType,
1093     IWSDServiceProxy **ppServiceProxy);
1094 void __RPC_STUB IWSDDeviceProxy_GetServiceProxyByType_Stub(
1095     IRpcStubBuffer* This,
1096     IRpcChannelBuffer* pRpcChannelBuffer,
1097     PRPC_MESSAGE pRpcMessage,
1098     DWORD* pdwStubPhase);
1099 HRESULT STDMETHODCALLTYPE IWSDDeviceProxy_GetEndpointProxy_Proxy(
1100     IWSDDeviceProxy* This,
1101     IWSDEndpointProxy **ppProxy);
1102 void __RPC_STUB IWSDDeviceProxy_GetEndpointProxy_Stub(
1103     IRpcStubBuffer* This,
1104     IRpcChannelBuffer* pRpcChannelBuffer,
1105     PRPC_MESSAGE pRpcMessage,
1106     DWORD* pdwStubPhase);
1107 
1108 #endif  /* __IWSDDeviceProxy_INTERFACE_DEFINED__ */
1109 
1110 /*****************************************************************************
1111  * IWSDServiceProxy interface
1112  */
1113 #ifndef __IWSDServiceProxy_INTERFACE_DEFINED__
1114 #define __IWSDServiceProxy_INTERFACE_DEFINED__
1115 
1116 DEFINE_GUID(IID_IWSDServiceProxy, 0xd4c7fb9c, 0x03ab, 0x4175, 0x9d,0x67, 0x09,0x4f,0xaf,0xeb,0xf4,0x87);
1117 #if defined(__cplusplus) && !defined(CINTERFACE)
1118 MIDL_INTERFACE("d4c7fb9c-03ab-4175-9d67-094fafebf487")
1119 IWSDServiceProxy : public IWSDMetadataExchange
1120 {
1121     virtual HRESULT STDMETHODCALLTYPE BeginGetMetadata(
1122         IWSDAsyncResult **ppResult) = 0;
1123 
1124     virtual HRESULT STDMETHODCALLTYPE EndGetMetadata(
1125         IWSDAsyncResult *pResult,
1126         WSD_METADATA_SECTION_LIST **ppMetadata) = 0;
1127 
1128     virtual HRESULT STDMETHODCALLTYPE GetServiceMetadata(
1129         WSD_SERVICE_METADATA **ppServiceMetadata) = 0;
1130 
1131     virtual HRESULT STDMETHODCALLTYPE SubscribeToOperation(
1132         const WSD_OPERATION *pOperation,
1133         IUnknown *pUnknown,
1134         const WSDXML_ELEMENT *pAny,
1135         WSDXML_ELEMENT **ppAny) = 0;
1136 
1137     virtual HRESULT STDMETHODCALLTYPE UnsubscribeToOperation(
1138         const WSD_OPERATION *pOperation) = 0;
1139 
1140     virtual HRESULT STDMETHODCALLTYPE SetEventingStatusCallback(
1141         IWSDEventingStatus *pStatus) = 0;
1142 
1143     virtual HRESULT STDMETHODCALLTYPE GetEndpointProxy(
1144         IWSDEndpointProxy **ppProxy) = 0;
1145 
1146 };
1147 #ifdef __CRT_UUID_DECL
1148 __CRT_UUID_DECL(IWSDServiceProxy, 0xd4c7fb9c, 0x03ab, 0x4175, 0x9d,0x67, 0x09,0x4f,0xaf,0xeb,0xf4,0x87)
1149 #endif
1150 #else
1151 typedef struct IWSDServiceProxyVtbl {
1152     BEGIN_INTERFACE
1153 
1154     /*** IUnknown methods ***/
1155     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1156         IWSDServiceProxy* This,
1157         REFIID riid,
1158         void **ppvObject);
1159 
1160     ULONG (STDMETHODCALLTYPE *AddRef)(
1161         IWSDServiceProxy* This);
1162 
1163     ULONG (STDMETHODCALLTYPE *Release)(
1164         IWSDServiceProxy* This);
1165 
1166     /*** IWSDMetadataExchange methods ***/
1167     HRESULT (STDMETHODCALLTYPE *GetMetadata)(
1168         IWSDServiceProxy* This,
1169         WSD_METADATA_SECTION_LIST **MetadataOut);
1170 
1171     /*** IWSDServiceProxy methods ***/
1172     HRESULT (STDMETHODCALLTYPE *BeginGetMetadata)(
1173         IWSDServiceProxy* This,
1174         IWSDAsyncResult **ppResult);
1175 
1176     HRESULT (STDMETHODCALLTYPE *EndGetMetadata)(
1177         IWSDServiceProxy* This,
1178         IWSDAsyncResult *pResult,
1179         WSD_METADATA_SECTION_LIST **ppMetadata);
1180 
1181     HRESULT (STDMETHODCALLTYPE *GetServiceMetadata)(
1182         IWSDServiceProxy* This,
1183         WSD_SERVICE_METADATA **ppServiceMetadata);
1184 
1185     HRESULT (STDMETHODCALLTYPE *SubscribeToOperation)(
1186         IWSDServiceProxy* This,
1187         const WSD_OPERATION *pOperation,
1188         IUnknown *pUnknown,
1189         const WSDXML_ELEMENT *pAny,
1190         WSDXML_ELEMENT **ppAny);
1191 
1192     HRESULT (STDMETHODCALLTYPE *UnsubscribeToOperation)(
1193         IWSDServiceProxy* This,
1194         const WSD_OPERATION *pOperation);
1195 
1196     HRESULT (STDMETHODCALLTYPE *SetEventingStatusCallback)(
1197         IWSDServiceProxy* This,
1198         IWSDEventingStatus *pStatus);
1199 
1200     HRESULT (STDMETHODCALLTYPE *GetEndpointProxy)(
1201         IWSDServiceProxy* This,
1202         IWSDEndpointProxy **ppProxy);
1203 
1204     END_INTERFACE
1205 } IWSDServiceProxyVtbl;
1206 interface IWSDServiceProxy {
1207     CONST_VTBL IWSDServiceProxyVtbl* lpVtbl;
1208 };
1209 
1210 #ifdef COBJMACROS
1211 #ifndef WIDL_C_INLINE_WRAPPERS
1212 /*** IUnknown methods ***/
1213 #define IWSDServiceProxy_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1214 #define IWSDServiceProxy_AddRef(This) (This)->lpVtbl->AddRef(This)
1215 #define IWSDServiceProxy_Release(This) (This)->lpVtbl->Release(This)
1216 /*** IWSDMetadataExchange methods ***/
1217 #define IWSDServiceProxy_GetMetadata(This,MetadataOut) (This)->lpVtbl->GetMetadata(This,MetadataOut)
1218 /*** IWSDServiceProxy methods ***/
1219 #define IWSDServiceProxy_BeginGetMetadata(This,ppResult) (This)->lpVtbl->BeginGetMetadata(This,ppResult)
1220 #define IWSDServiceProxy_EndGetMetadata(This,pResult,ppMetadata) (This)->lpVtbl->EndGetMetadata(This,pResult,ppMetadata)
1221 #define IWSDServiceProxy_GetServiceMetadata(This,ppServiceMetadata) (This)->lpVtbl->GetServiceMetadata(This,ppServiceMetadata)
1222 #define IWSDServiceProxy_SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny) (This)->lpVtbl->SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny)
1223 #define IWSDServiceProxy_UnsubscribeToOperation(This,pOperation) (This)->lpVtbl->UnsubscribeToOperation(This,pOperation)
1224 #define IWSDServiceProxy_SetEventingStatusCallback(This,pStatus) (This)->lpVtbl->SetEventingStatusCallback(This,pStatus)
1225 #define IWSDServiceProxy_GetEndpointProxy(This,ppProxy) (This)->lpVtbl->GetEndpointProxy(This,ppProxy)
1226 #else
1227 /*** IUnknown methods ***/
1228 static FORCEINLINE HRESULT IWSDServiceProxy_QueryInterface(IWSDServiceProxy* This,REFIID riid,void **ppvObject) {
1229     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1230 }
1231 static FORCEINLINE ULONG IWSDServiceProxy_AddRef(IWSDServiceProxy* This) {
1232     return This->lpVtbl->AddRef(This);
1233 }
1234 static FORCEINLINE ULONG IWSDServiceProxy_Release(IWSDServiceProxy* This) {
1235     return This->lpVtbl->Release(This);
1236 }
1237 /*** IWSDMetadataExchange methods ***/
1238 static FORCEINLINE HRESULT IWSDServiceProxy_GetMetadata(IWSDServiceProxy* This,WSD_METADATA_SECTION_LIST **MetadataOut) {
1239     return This->lpVtbl->GetMetadata(This,MetadataOut);
1240 }
1241 /*** IWSDServiceProxy methods ***/
1242 static FORCEINLINE HRESULT IWSDServiceProxy_BeginGetMetadata(IWSDServiceProxy* This,IWSDAsyncResult **ppResult) {
1243     return This->lpVtbl->BeginGetMetadata(This,ppResult);
1244 }
1245 static FORCEINLINE HRESULT IWSDServiceProxy_EndGetMetadata(IWSDServiceProxy* This,IWSDAsyncResult *pResult,WSD_METADATA_SECTION_LIST **ppMetadata) {
1246     return This->lpVtbl->EndGetMetadata(This,pResult,ppMetadata);
1247 }
1248 static FORCEINLINE HRESULT IWSDServiceProxy_GetServiceMetadata(IWSDServiceProxy* This,WSD_SERVICE_METADATA **ppServiceMetadata) {
1249     return This->lpVtbl->GetServiceMetadata(This,ppServiceMetadata);
1250 }
1251 static FORCEINLINE HRESULT IWSDServiceProxy_SubscribeToOperation(IWSDServiceProxy* This,const WSD_OPERATION *pOperation,IUnknown *pUnknown,const WSDXML_ELEMENT *pAny,WSDXML_ELEMENT **ppAny) {
1252     return This->lpVtbl->SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny);
1253 }
1254 static FORCEINLINE HRESULT IWSDServiceProxy_UnsubscribeToOperation(IWSDServiceProxy* This,const WSD_OPERATION *pOperation) {
1255     return This->lpVtbl->UnsubscribeToOperation(This,pOperation);
1256 }
1257 static FORCEINLINE HRESULT IWSDServiceProxy_SetEventingStatusCallback(IWSDServiceProxy* This,IWSDEventingStatus *pStatus) {
1258     return This->lpVtbl->SetEventingStatusCallback(This,pStatus);
1259 }
1260 static FORCEINLINE HRESULT IWSDServiceProxy_GetEndpointProxy(IWSDServiceProxy* This,IWSDEndpointProxy **ppProxy) {
1261     return This->lpVtbl->GetEndpointProxy(This,ppProxy);
1262 }
1263 #endif
1264 #endif
1265 
1266 #endif
1267 
1268 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_BeginGetMetadata_Proxy(
1269     IWSDServiceProxy* This,
1270     IWSDAsyncResult **ppResult);
1271 void __RPC_STUB IWSDServiceProxy_BeginGetMetadata_Stub(
1272     IRpcStubBuffer* This,
1273     IRpcChannelBuffer* pRpcChannelBuffer,
1274     PRPC_MESSAGE pRpcMessage,
1275     DWORD* pdwStubPhase);
1276 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_EndGetMetadata_Proxy(
1277     IWSDServiceProxy* This,
1278     IWSDAsyncResult *pResult,
1279     WSD_METADATA_SECTION_LIST **ppMetadata);
1280 void __RPC_STUB IWSDServiceProxy_EndGetMetadata_Stub(
1281     IRpcStubBuffer* This,
1282     IRpcChannelBuffer* pRpcChannelBuffer,
1283     PRPC_MESSAGE pRpcMessage,
1284     DWORD* pdwStubPhase);
1285 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_GetServiceMetadata_Proxy(
1286     IWSDServiceProxy* This,
1287     WSD_SERVICE_METADATA **ppServiceMetadata);
1288 void __RPC_STUB IWSDServiceProxy_GetServiceMetadata_Stub(
1289     IRpcStubBuffer* This,
1290     IRpcChannelBuffer* pRpcChannelBuffer,
1291     PRPC_MESSAGE pRpcMessage,
1292     DWORD* pdwStubPhase);
1293 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_SubscribeToOperation_Proxy(
1294     IWSDServiceProxy* This,
1295     const WSD_OPERATION *pOperation,
1296     IUnknown *pUnknown,
1297     const WSDXML_ELEMENT *pAny,
1298     WSDXML_ELEMENT **ppAny);
1299 void __RPC_STUB IWSDServiceProxy_SubscribeToOperation_Stub(
1300     IRpcStubBuffer* This,
1301     IRpcChannelBuffer* pRpcChannelBuffer,
1302     PRPC_MESSAGE pRpcMessage,
1303     DWORD* pdwStubPhase);
1304 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_UnsubscribeToOperation_Proxy(
1305     IWSDServiceProxy* This,
1306     const WSD_OPERATION *pOperation);
1307 void __RPC_STUB IWSDServiceProxy_UnsubscribeToOperation_Stub(
1308     IRpcStubBuffer* This,
1309     IRpcChannelBuffer* pRpcChannelBuffer,
1310     PRPC_MESSAGE pRpcMessage,
1311     DWORD* pdwStubPhase);
1312 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_SetEventingStatusCallback_Proxy(
1313     IWSDServiceProxy* This,
1314     IWSDEventingStatus *pStatus);
1315 void __RPC_STUB IWSDServiceProxy_SetEventingStatusCallback_Stub(
1316     IRpcStubBuffer* This,
1317     IRpcChannelBuffer* pRpcChannelBuffer,
1318     PRPC_MESSAGE pRpcMessage,
1319     DWORD* pdwStubPhase);
1320 HRESULT STDMETHODCALLTYPE IWSDServiceProxy_GetEndpointProxy_Proxy(
1321     IWSDServiceProxy* This,
1322     IWSDEndpointProxy **ppProxy);
1323 void __RPC_STUB IWSDServiceProxy_GetEndpointProxy_Stub(
1324     IRpcStubBuffer* This,
1325     IRpcChannelBuffer* pRpcChannelBuffer,
1326     PRPC_MESSAGE pRpcMessage,
1327     DWORD* pdwStubPhase);
1328 
1329 #endif  /* __IWSDServiceProxy_INTERFACE_DEFINED__ */
1330 
1331 #if WINVER >= 0x601
1332 /*****************************************************************************
1333  * IWSDServiceProxyEventing interface
1334  */
1335 #ifndef __IWSDServiceProxyEventing_INTERFACE_DEFINED__
1336 #define __IWSDServiceProxyEventing_INTERFACE_DEFINED__
1337 
1338 DEFINE_GUID(IID_IWSDServiceProxyEventing, 0xf9279d6d, 0x1012, 0x4a94, 0xb8,0xcc, 0xfd,0x35,0xd2,0x20,0x2b,0xfe);
1339 #if defined(__cplusplus) && !defined(CINTERFACE)
1340 MIDL_INTERFACE("f9279d6d-1012-4a94-b8cc-fd35d2202bfe")
1341 IWSDServiceProxyEventing : public IWSDServiceProxy
1342 {
1343     virtual HRESULT STDMETHODCALLTYPE SubscribeToMultipleOperations(
1344         const WSD_OPERATION *pOperations,
1345         DWORD dwOperationCount,
1346         IUnknown *pUnknown,
1347         const WSD_EVENTING_EXPIRES *pExpires,
1348         const WSDXML_ELEMENT *pAny,
1349         WSD_EVENTING_EXPIRES **ppExpires,
1350         WSDXML_ELEMENT **ppAny) = 0;
1351 
1352     virtual HRESULT STDMETHODCALLTYPE BeginSubscribeToMultipleOperations(
1353         const WSD_OPERATION *pOperations,
1354         DWORD dwOperationCount,
1355         IUnknown *pUnknown,
1356         const WSD_EVENTING_EXPIRES *pExpires,
1357         const WSDXML_ELEMENT *pAny,
1358         IUnknown *pAsyncState,
1359         IWSDAsyncCallback *pAsyncCallback,
1360         IWSDAsyncResult **ppResult) = 0;
1361 
1362     virtual HRESULT STDMETHODCALLTYPE EndSubscribeToMultipleOperations(
1363         const WSD_OPERATION *pOperations,
1364         DWORD dwOperationCount,
1365         IWSDAsyncResult *pResult,
1366         WSD_EVENTING_EXPIRES **ppExpires,
1367         WSDXML_ELEMENT **ppAny) = 0;
1368 
1369     virtual HRESULT STDMETHODCALLTYPE UnsubscribeToMultipleOperations(
1370         const WSD_OPERATION *pOperations,
1371         DWORD dwOperationCount,
1372         const WSDXML_ELEMENT *pAny) = 0;
1373 
1374     virtual HRESULT STDMETHODCALLTYPE BeginUnsubscribeToMultipleOperations(
1375         const WSD_OPERATION *pOperations,
1376         DWORD dwOperationCount,
1377         const WSDXML_ELEMENT *pAny,
1378         IUnknown *pAsyncState,
1379         IWSDAsyncCallback *pAsyncCallback,
1380         IWSDAsyncResult **ppResult) = 0;
1381 
1382     virtual HRESULT STDMETHODCALLTYPE EndUnsubscribeToMultipleOperations(
1383         const WSD_OPERATION *pOperations,
1384         DWORD dwOperationCount,
1385         IWSDAsyncResult *pResult) = 0;
1386 
1387     virtual HRESULT STDMETHODCALLTYPE RenewMultipleOperations(
1388         const WSD_OPERATION *pOperations,
1389         DWORD dwOperationCount,
1390         const WSD_EVENTING_EXPIRES *pExpires,
1391         const WSDXML_ELEMENT *pAny,
1392         WSD_EVENTING_EXPIRES **ppExpires,
1393         WSDXML_ELEMENT **ppAny) = 0;
1394 
1395     virtual HRESULT STDMETHODCALLTYPE BeginRenewMultipleOperations(
1396         const WSD_OPERATION *pOperations,
1397         DWORD dwOperationCount,
1398         const WSD_EVENTING_EXPIRES *pExpires,
1399         const WSDXML_ELEMENT *pAny,
1400         IUnknown *pAsyncState,
1401         IWSDAsyncCallback *pAsyncCallback,
1402         IWSDAsyncResult **ppResult) = 0;
1403 
1404     virtual HRESULT STDMETHODCALLTYPE EndRenewMultipleOperations(
1405         const WSD_OPERATION *pOperations,
1406         DWORD dwOperationCount,
1407         IWSDAsyncResult *pResult,
1408         WSD_EVENTING_EXPIRES **ppExpires,
1409         WSDXML_ELEMENT **ppAny) = 0;
1410 
1411     virtual HRESULT STDMETHODCALLTYPE GetStatusForMultipleOperations(
1412         const WSD_OPERATION *pOperations,
1413         DWORD dwOperationCount,
1414         const WSDXML_ELEMENT *pAny,
1415         WSD_EVENTING_EXPIRES **ppExpires,
1416         WSDXML_ELEMENT **ppAny) = 0;
1417 
1418     virtual HRESULT STDMETHODCALLTYPE BeginGetStatusForMultipleOperations(
1419         const WSD_OPERATION *pOperations,
1420         DWORD dwOperationCount,
1421         const WSDXML_ELEMENT *pAny,
1422         IUnknown *pAsyncState,
1423         IWSDAsyncCallback *pAsyncCallback,
1424         IWSDAsyncResult **ppResult) = 0;
1425 
1426     virtual HRESULT STDMETHODCALLTYPE EndGetStatusForMultipleOperations(
1427         const WSD_OPERATION *pOperations,
1428         DWORD dwOperationCount,
1429         IWSDAsyncResult *pResult,
1430         WSD_EVENTING_EXPIRES **ppExpires,
1431         WSDXML_ELEMENT **ppAny) = 0;
1432 
1433 };
1434 #ifdef __CRT_UUID_DECL
1435 __CRT_UUID_DECL(IWSDServiceProxyEventing, 0xf9279d6d, 0x1012, 0x4a94, 0xb8,0xcc, 0xfd,0x35,0xd2,0x20,0x2b,0xfe)
1436 #endif
1437 #else
1438 typedef struct IWSDServiceProxyEventingVtbl {
1439     BEGIN_INTERFACE
1440 
1441     /*** IUnknown methods ***/
1442     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1443         IWSDServiceProxyEventing* This,
1444         REFIID riid,
1445         void **ppvObject);
1446 
1447     ULONG (STDMETHODCALLTYPE *AddRef)(
1448         IWSDServiceProxyEventing* This);
1449 
1450     ULONG (STDMETHODCALLTYPE *Release)(
1451         IWSDServiceProxyEventing* This);
1452 
1453     /*** IWSDMetadataExchange methods ***/
1454     HRESULT (STDMETHODCALLTYPE *GetMetadata)(
1455         IWSDServiceProxyEventing* This,
1456         WSD_METADATA_SECTION_LIST **MetadataOut);
1457 
1458     /*** IWSDServiceProxy methods ***/
1459     HRESULT (STDMETHODCALLTYPE *BeginGetMetadata)(
1460         IWSDServiceProxyEventing* This,
1461         IWSDAsyncResult **ppResult);
1462 
1463     HRESULT (STDMETHODCALLTYPE *EndGetMetadata)(
1464         IWSDServiceProxyEventing* This,
1465         IWSDAsyncResult *pResult,
1466         WSD_METADATA_SECTION_LIST **ppMetadata);
1467 
1468     HRESULT (STDMETHODCALLTYPE *GetServiceMetadata)(
1469         IWSDServiceProxyEventing* This,
1470         WSD_SERVICE_METADATA **ppServiceMetadata);
1471 
1472     HRESULT (STDMETHODCALLTYPE *SubscribeToOperation)(
1473         IWSDServiceProxyEventing* This,
1474         const WSD_OPERATION *pOperation,
1475         IUnknown *pUnknown,
1476         const WSDXML_ELEMENT *pAny,
1477         WSDXML_ELEMENT **ppAny);
1478 
1479     HRESULT (STDMETHODCALLTYPE *UnsubscribeToOperation)(
1480         IWSDServiceProxyEventing* This,
1481         const WSD_OPERATION *pOperation);
1482 
1483     HRESULT (STDMETHODCALLTYPE *SetEventingStatusCallback)(
1484         IWSDServiceProxyEventing* This,
1485         IWSDEventingStatus *pStatus);
1486 
1487     HRESULT (STDMETHODCALLTYPE *GetEndpointProxy)(
1488         IWSDServiceProxyEventing* This,
1489         IWSDEndpointProxy **ppProxy);
1490 
1491     /*** IWSDServiceProxyEventing methods ***/
1492     HRESULT (STDMETHODCALLTYPE *SubscribeToMultipleOperations)(
1493         IWSDServiceProxyEventing* This,
1494         const WSD_OPERATION *pOperations,
1495         DWORD dwOperationCount,
1496         IUnknown *pUnknown,
1497         const WSD_EVENTING_EXPIRES *pExpires,
1498         const WSDXML_ELEMENT *pAny,
1499         WSD_EVENTING_EXPIRES **ppExpires,
1500         WSDXML_ELEMENT **ppAny);
1501 
1502     HRESULT (STDMETHODCALLTYPE *BeginSubscribeToMultipleOperations)(
1503         IWSDServiceProxyEventing* This,
1504         const WSD_OPERATION *pOperations,
1505         DWORD dwOperationCount,
1506         IUnknown *pUnknown,
1507         const WSD_EVENTING_EXPIRES *pExpires,
1508         const WSDXML_ELEMENT *pAny,
1509         IUnknown *pAsyncState,
1510         IWSDAsyncCallback *pAsyncCallback,
1511         IWSDAsyncResult **ppResult);
1512 
1513     HRESULT (STDMETHODCALLTYPE *EndSubscribeToMultipleOperations)(
1514         IWSDServiceProxyEventing* This,
1515         const WSD_OPERATION *pOperations,
1516         DWORD dwOperationCount,
1517         IWSDAsyncResult *pResult,
1518         WSD_EVENTING_EXPIRES **ppExpires,
1519         WSDXML_ELEMENT **ppAny);
1520 
1521     HRESULT (STDMETHODCALLTYPE *UnsubscribeToMultipleOperations)(
1522         IWSDServiceProxyEventing* This,
1523         const WSD_OPERATION *pOperations,
1524         DWORD dwOperationCount,
1525         const WSDXML_ELEMENT *pAny);
1526 
1527     HRESULT (STDMETHODCALLTYPE *BeginUnsubscribeToMultipleOperations)(
1528         IWSDServiceProxyEventing* This,
1529         const WSD_OPERATION *pOperations,
1530         DWORD dwOperationCount,
1531         const WSDXML_ELEMENT *pAny,
1532         IUnknown *pAsyncState,
1533         IWSDAsyncCallback *pAsyncCallback,
1534         IWSDAsyncResult **ppResult);
1535 
1536     HRESULT (STDMETHODCALLTYPE *EndUnsubscribeToMultipleOperations)(
1537         IWSDServiceProxyEventing* This,
1538         const WSD_OPERATION *pOperations,
1539         DWORD dwOperationCount,
1540         IWSDAsyncResult *pResult);
1541 
1542     HRESULT (STDMETHODCALLTYPE *RenewMultipleOperations)(
1543         IWSDServiceProxyEventing* This,
1544         const WSD_OPERATION *pOperations,
1545         DWORD dwOperationCount,
1546         const WSD_EVENTING_EXPIRES *pExpires,
1547         const WSDXML_ELEMENT *pAny,
1548         WSD_EVENTING_EXPIRES **ppExpires,
1549         WSDXML_ELEMENT **ppAny);
1550 
1551     HRESULT (STDMETHODCALLTYPE *BeginRenewMultipleOperations)(
1552         IWSDServiceProxyEventing* This,
1553         const WSD_OPERATION *pOperations,
1554         DWORD dwOperationCount,
1555         const WSD_EVENTING_EXPIRES *pExpires,
1556         const WSDXML_ELEMENT *pAny,
1557         IUnknown *pAsyncState,
1558         IWSDAsyncCallback *pAsyncCallback,
1559         IWSDAsyncResult **ppResult);
1560 
1561     HRESULT (STDMETHODCALLTYPE *EndRenewMultipleOperations)(
1562         IWSDServiceProxyEventing* This,
1563         const WSD_OPERATION *pOperations,
1564         DWORD dwOperationCount,
1565         IWSDAsyncResult *pResult,
1566         WSD_EVENTING_EXPIRES **ppExpires,
1567         WSDXML_ELEMENT **ppAny);
1568 
1569     HRESULT (STDMETHODCALLTYPE *GetStatusForMultipleOperations)(
1570         IWSDServiceProxyEventing* This,
1571         const WSD_OPERATION *pOperations,
1572         DWORD dwOperationCount,
1573         const WSDXML_ELEMENT *pAny,
1574         WSD_EVENTING_EXPIRES **ppExpires,
1575         WSDXML_ELEMENT **ppAny);
1576 
1577     HRESULT (STDMETHODCALLTYPE *BeginGetStatusForMultipleOperations)(
1578         IWSDServiceProxyEventing* This,
1579         const WSD_OPERATION *pOperations,
1580         DWORD dwOperationCount,
1581         const WSDXML_ELEMENT *pAny,
1582         IUnknown *pAsyncState,
1583         IWSDAsyncCallback *pAsyncCallback,
1584         IWSDAsyncResult **ppResult);
1585 
1586     HRESULT (STDMETHODCALLTYPE *EndGetStatusForMultipleOperations)(
1587         IWSDServiceProxyEventing* This,
1588         const WSD_OPERATION *pOperations,
1589         DWORD dwOperationCount,
1590         IWSDAsyncResult *pResult,
1591         WSD_EVENTING_EXPIRES **ppExpires,
1592         WSDXML_ELEMENT **ppAny);
1593 
1594     END_INTERFACE
1595 } IWSDServiceProxyEventingVtbl;
1596 interface IWSDServiceProxyEventing {
1597     CONST_VTBL IWSDServiceProxyEventingVtbl* lpVtbl;
1598 };
1599 
1600 #ifdef COBJMACROS
1601 #ifndef WIDL_C_INLINE_WRAPPERS
1602 /*** IUnknown methods ***/
1603 #define IWSDServiceProxyEventing_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1604 #define IWSDServiceProxyEventing_AddRef(This) (This)->lpVtbl->AddRef(This)
1605 #define IWSDServiceProxyEventing_Release(This) (This)->lpVtbl->Release(This)
1606 /*** IWSDMetadataExchange methods ***/
1607 #define IWSDServiceProxyEventing_GetMetadata(This,MetadataOut) (This)->lpVtbl->GetMetadata(This,MetadataOut)
1608 /*** IWSDServiceProxy methods ***/
1609 #define IWSDServiceProxyEventing_BeginGetMetadata(This,ppResult) (This)->lpVtbl->BeginGetMetadata(This,ppResult)
1610 #define IWSDServiceProxyEventing_EndGetMetadata(This,pResult,ppMetadata) (This)->lpVtbl->EndGetMetadata(This,pResult,ppMetadata)
1611 #define IWSDServiceProxyEventing_GetServiceMetadata(This,ppServiceMetadata) (This)->lpVtbl->GetServiceMetadata(This,ppServiceMetadata)
1612 #define IWSDServiceProxyEventing_SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny) (This)->lpVtbl->SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny)
1613 #define IWSDServiceProxyEventing_UnsubscribeToOperation(This,pOperation) (This)->lpVtbl->UnsubscribeToOperation(This,pOperation)
1614 #define IWSDServiceProxyEventing_SetEventingStatusCallback(This,pStatus) (This)->lpVtbl->SetEventingStatusCallback(This,pStatus)
1615 #define IWSDServiceProxyEventing_GetEndpointProxy(This,ppProxy) (This)->lpVtbl->GetEndpointProxy(This,ppProxy)
1616 /*** IWSDServiceProxyEventing methods ***/
1617 #define IWSDServiceProxyEventing_SubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,ppExpires,ppAny) (This)->lpVtbl->SubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,ppExpires,ppAny)
1618 #define IWSDServiceProxyEventing_BeginSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult) (This)->lpVtbl->BeginSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult)
1619 #define IWSDServiceProxyEventing_EndSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny) (This)->lpVtbl->EndSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny)
1620 #define IWSDServiceProxyEventing_UnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny) (This)->lpVtbl->UnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny)
1621 #define IWSDServiceProxyEventing_BeginUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult) (This)->lpVtbl->BeginUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult)
1622 #define IWSDServiceProxyEventing_EndUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult) (This)->lpVtbl->EndUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult)
1623 #define IWSDServiceProxyEventing_RenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,ppExpires,ppAny) (This)->lpVtbl->RenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,ppExpires,ppAny)
1624 #define IWSDServiceProxyEventing_BeginRenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult) (This)->lpVtbl->BeginRenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult)
1625 #define IWSDServiceProxyEventing_EndRenewMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny) (This)->lpVtbl->EndRenewMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny)
1626 #define IWSDServiceProxyEventing_GetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,ppExpires,ppAny) (This)->lpVtbl->GetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,ppExpires,ppAny)
1627 #define IWSDServiceProxyEventing_BeginGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult) (This)->lpVtbl->BeginGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult)
1628 #define IWSDServiceProxyEventing_EndGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny) (This)->lpVtbl->EndGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny)
1629 #else
1630 /*** IUnknown methods ***/
1631 static FORCEINLINE HRESULT IWSDServiceProxyEventing_QueryInterface(IWSDServiceProxyEventing* This,REFIID riid,void **ppvObject) {
1632     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1633 }
1634 static FORCEINLINE ULONG IWSDServiceProxyEventing_AddRef(IWSDServiceProxyEventing* This) {
1635     return This->lpVtbl->AddRef(This);
1636 }
1637 static FORCEINLINE ULONG IWSDServiceProxyEventing_Release(IWSDServiceProxyEventing* This) {
1638     return This->lpVtbl->Release(This);
1639 }
1640 /*** IWSDMetadataExchange methods ***/
1641 static FORCEINLINE HRESULT IWSDServiceProxyEventing_GetMetadata(IWSDServiceProxyEventing* This,WSD_METADATA_SECTION_LIST **MetadataOut) {
1642     return This->lpVtbl->GetMetadata(This,MetadataOut);
1643 }
1644 /*** IWSDServiceProxy methods ***/
1645 static FORCEINLINE HRESULT IWSDServiceProxyEventing_BeginGetMetadata(IWSDServiceProxyEventing* This,IWSDAsyncResult **ppResult) {
1646     return This->lpVtbl->BeginGetMetadata(This,ppResult);
1647 }
1648 static FORCEINLINE HRESULT IWSDServiceProxyEventing_EndGetMetadata(IWSDServiceProxyEventing* This,IWSDAsyncResult *pResult,WSD_METADATA_SECTION_LIST **ppMetadata) {
1649     return This->lpVtbl->EndGetMetadata(This,pResult,ppMetadata);
1650 }
1651 static FORCEINLINE HRESULT IWSDServiceProxyEventing_GetServiceMetadata(IWSDServiceProxyEventing* This,WSD_SERVICE_METADATA **ppServiceMetadata) {
1652     return This->lpVtbl->GetServiceMetadata(This,ppServiceMetadata);
1653 }
1654 static FORCEINLINE HRESULT IWSDServiceProxyEventing_SubscribeToOperation(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperation,IUnknown *pUnknown,const WSDXML_ELEMENT *pAny,WSDXML_ELEMENT **ppAny) {
1655     return This->lpVtbl->SubscribeToOperation(This,pOperation,pUnknown,pAny,ppAny);
1656 }
1657 static FORCEINLINE HRESULT IWSDServiceProxyEventing_UnsubscribeToOperation(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperation) {
1658     return This->lpVtbl->UnsubscribeToOperation(This,pOperation);
1659 }
1660 static FORCEINLINE HRESULT IWSDServiceProxyEventing_SetEventingStatusCallback(IWSDServiceProxyEventing* This,IWSDEventingStatus *pStatus) {
1661     return This->lpVtbl->SetEventingStatusCallback(This,pStatus);
1662 }
1663 static FORCEINLINE HRESULT IWSDServiceProxyEventing_GetEndpointProxy(IWSDServiceProxyEventing* This,IWSDEndpointProxy **ppProxy) {
1664     return This->lpVtbl->GetEndpointProxy(This,ppProxy);
1665 }
1666 /*** IWSDServiceProxyEventing methods ***/
1667 static FORCEINLINE HRESULT IWSDServiceProxyEventing_SubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IUnknown *pUnknown,const WSD_EVENTING_EXPIRES *pExpires,const WSDXML_ELEMENT *pAny,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1668     return This->lpVtbl->SubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,ppExpires,ppAny);
1669 }
1670 static FORCEINLINE HRESULT IWSDServiceProxyEventing_BeginSubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IUnknown *pUnknown,const WSD_EVENTING_EXPIRES *pExpires,const WSDXML_ELEMENT *pAny,IUnknown *pAsyncState,IWSDAsyncCallback *pAsyncCallback,IWSDAsyncResult **ppResult) {
1671     return This->lpVtbl->BeginSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pUnknown,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult);
1672 }
1673 static FORCEINLINE HRESULT IWSDServiceProxyEventing_EndSubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IWSDAsyncResult *pResult,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1674     return This->lpVtbl->EndSubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny);
1675 }
1676 static FORCEINLINE HRESULT IWSDServiceProxyEventing_UnsubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSDXML_ELEMENT *pAny) {
1677     return This->lpVtbl->UnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny);
1678 }
1679 static FORCEINLINE HRESULT IWSDServiceProxyEventing_BeginUnsubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSDXML_ELEMENT *pAny,IUnknown *pAsyncState,IWSDAsyncCallback *pAsyncCallback,IWSDAsyncResult **ppResult) {
1680     return This->lpVtbl->BeginUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult);
1681 }
1682 static FORCEINLINE HRESULT IWSDServiceProxyEventing_EndUnsubscribeToMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IWSDAsyncResult *pResult) {
1683     return This->lpVtbl->EndUnsubscribeToMultipleOperations(This,pOperations,dwOperationCount,pResult);
1684 }
1685 static FORCEINLINE HRESULT IWSDServiceProxyEventing_RenewMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSD_EVENTING_EXPIRES *pExpires,const WSDXML_ELEMENT *pAny,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1686     return This->lpVtbl->RenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,ppExpires,ppAny);
1687 }
1688 static FORCEINLINE HRESULT IWSDServiceProxyEventing_BeginRenewMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSD_EVENTING_EXPIRES *pExpires,const WSDXML_ELEMENT *pAny,IUnknown *pAsyncState,IWSDAsyncCallback *pAsyncCallback,IWSDAsyncResult **ppResult) {
1689     return This->lpVtbl->BeginRenewMultipleOperations(This,pOperations,dwOperationCount,pExpires,pAny,pAsyncState,pAsyncCallback,ppResult);
1690 }
1691 static FORCEINLINE HRESULT IWSDServiceProxyEventing_EndRenewMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IWSDAsyncResult *pResult,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1692     return This->lpVtbl->EndRenewMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny);
1693 }
1694 static FORCEINLINE HRESULT IWSDServiceProxyEventing_GetStatusForMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSDXML_ELEMENT *pAny,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1695     return This->lpVtbl->GetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,ppExpires,ppAny);
1696 }
1697 static FORCEINLINE HRESULT IWSDServiceProxyEventing_BeginGetStatusForMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,const WSDXML_ELEMENT *pAny,IUnknown *pAsyncState,IWSDAsyncCallback *pAsyncCallback,IWSDAsyncResult **ppResult) {
1698     return This->lpVtbl->BeginGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pAny,pAsyncState,pAsyncCallback,ppResult);
1699 }
1700 static FORCEINLINE HRESULT IWSDServiceProxyEventing_EndGetStatusForMultipleOperations(IWSDServiceProxyEventing* This,const WSD_OPERATION *pOperations,DWORD dwOperationCount,IWSDAsyncResult *pResult,WSD_EVENTING_EXPIRES **ppExpires,WSDXML_ELEMENT **ppAny) {
1701     return This->lpVtbl->EndGetStatusForMultipleOperations(This,pOperations,dwOperationCount,pResult,ppExpires,ppAny);
1702 }
1703 #endif
1704 #endif
1705 
1706 #endif
1707 
1708 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_SubscribeToMultipleOperations_Proxy(
1709     IWSDServiceProxyEventing* This,
1710     const WSD_OPERATION *pOperations,
1711     DWORD dwOperationCount,
1712     IUnknown *pUnknown,
1713     const WSD_EVENTING_EXPIRES *pExpires,
1714     const WSDXML_ELEMENT *pAny,
1715     WSD_EVENTING_EXPIRES **ppExpires,
1716     WSDXML_ELEMENT **ppAny);
1717 void __RPC_STUB IWSDServiceProxyEventing_SubscribeToMultipleOperations_Stub(
1718     IRpcStubBuffer* This,
1719     IRpcChannelBuffer* pRpcChannelBuffer,
1720     PRPC_MESSAGE pRpcMessage,
1721     DWORD* pdwStubPhase);
1722 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_BeginSubscribeToMultipleOperations_Proxy(
1723     IWSDServiceProxyEventing* This,
1724     const WSD_OPERATION *pOperations,
1725     DWORD dwOperationCount,
1726     IUnknown *pUnknown,
1727     const WSD_EVENTING_EXPIRES *pExpires,
1728     const WSDXML_ELEMENT *pAny,
1729     IUnknown *pAsyncState,
1730     IWSDAsyncCallback *pAsyncCallback,
1731     IWSDAsyncResult **ppResult);
1732 void __RPC_STUB IWSDServiceProxyEventing_BeginSubscribeToMultipleOperations_Stub(
1733     IRpcStubBuffer* This,
1734     IRpcChannelBuffer* pRpcChannelBuffer,
1735     PRPC_MESSAGE pRpcMessage,
1736     DWORD* pdwStubPhase);
1737 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_EndSubscribeToMultipleOperations_Proxy(
1738     IWSDServiceProxyEventing* This,
1739     const WSD_OPERATION *pOperations,
1740     DWORD dwOperationCount,
1741     IWSDAsyncResult *pResult,
1742     WSD_EVENTING_EXPIRES **ppExpires,
1743     WSDXML_ELEMENT **ppAny);
1744 void __RPC_STUB IWSDServiceProxyEventing_EndSubscribeToMultipleOperations_Stub(
1745     IRpcStubBuffer* This,
1746     IRpcChannelBuffer* pRpcChannelBuffer,
1747     PRPC_MESSAGE pRpcMessage,
1748     DWORD* pdwStubPhase);
1749 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_UnsubscribeToMultipleOperations_Proxy(
1750     IWSDServiceProxyEventing* This,
1751     const WSD_OPERATION *pOperations,
1752     DWORD dwOperationCount,
1753     const WSDXML_ELEMENT *pAny);
1754 void __RPC_STUB IWSDServiceProxyEventing_UnsubscribeToMultipleOperations_Stub(
1755     IRpcStubBuffer* This,
1756     IRpcChannelBuffer* pRpcChannelBuffer,
1757     PRPC_MESSAGE pRpcMessage,
1758     DWORD* pdwStubPhase);
1759 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_BeginUnsubscribeToMultipleOperations_Proxy(
1760     IWSDServiceProxyEventing* This,
1761     const WSD_OPERATION *pOperations,
1762     DWORD dwOperationCount,
1763     const WSDXML_ELEMENT *pAny,
1764     IUnknown *pAsyncState,
1765     IWSDAsyncCallback *pAsyncCallback,
1766     IWSDAsyncResult **ppResult);
1767 void __RPC_STUB IWSDServiceProxyEventing_BeginUnsubscribeToMultipleOperations_Stub(
1768     IRpcStubBuffer* This,
1769     IRpcChannelBuffer* pRpcChannelBuffer,
1770     PRPC_MESSAGE pRpcMessage,
1771     DWORD* pdwStubPhase);
1772 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_EndUnsubscribeToMultipleOperations_Proxy(
1773     IWSDServiceProxyEventing* This,
1774     const WSD_OPERATION *pOperations,
1775     DWORD dwOperationCount,
1776     IWSDAsyncResult *pResult);
1777 void __RPC_STUB IWSDServiceProxyEventing_EndUnsubscribeToMultipleOperations_Stub(
1778     IRpcStubBuffer* This,
1779     IRpcChannelBuffer* pRpcChannelBuffer,
1780     PRPC_MESSAGE pRpcMessage,
1781     DWORD* pdwStubPhase);
1782 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_RenewMultipleOperations_Proxy(
1783     IWSDServiceProxyEventing* This,
1784     const WSD_OPERATION *pOperations,
1785     DWORD dwOperationCount,
1786     const WSD_EVENTING_EXPIRES *pExpires,
1787     const WSDXML_ELEMENT *pAny,
1788     WSD_EVENTING_EXPIRES **ppExpires,
1789     WSDXML_ELEMENT **ppAny);
1790 void __RPC_STUB IWSDServiceProxyEventing_RenewMultipleOperations_Stub(
1791     IRpcStubBuffer* This,
1792     IRpcChannelBuffer* pRpcChannelBuffer,
1793     PRPC_MESSAGE pRpcMessage,
1794     DWORD* pdwStubPhase);
1795 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_BeginRenewMultipleOperations_Proxy(
1796     IWSDServiceProxyEventing* This,
1797     const WSD_OPERATION *pOperations,
1798     DWORD dwOperationCount,
1799     const WSD_EVENTING_EXPIRES *pExpires,
1800     const WSDXML_ELEMENT *pAny,
1801     IUnknown *pAsyncState,
1802     IWSDAsyncCallback *pAsyncCallback,
1803     IWSDAsyncResult **ppResult);
1804 void __RPC_STUB IWSDServiceProxyEventing_BeginRenewMultipleOperations_Stub(
1805     IRpcStubBuffer* This,
1806     IRpcChannelBuffer* pRpcChannelBuffer,
1807     PRPC_MESSAGE pRpcMessage,
1808     DWORD* pdwStubPhase);
1809 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_EndRenewMultipleOperations_Proxy(
1810     IWSDServiceProxyEventing* This,
1811     const WSD_OPERATION *pOperations,
1812     DWORD dwOperationCount,
1813     IWSDAsyncResult *pResult,
1814     WSD_EVENTING_EXPIRES **ppExpires,
1815     WSDXML_ELEMENT **ppAny);
1816 void __RPC_STUB IWSDServiceProxyEventing_EndRenewMultipleOperations_Stub(
1817     IRpcStubBuffer* This,
1818     IRpcChannelBuffer* pRpcChannelBuffer,
1819     PRPC_MESSAGE pRpcMessage,
1820     DWORD* pdwStubPhase);
1821 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_GetStatusForMultipleOperations_Proxy(
1822     IWSDServiceProxyEventing* This,
1823     const WSD_OPERATION *pOperations,
1824     DWORD dwOperationCount,
1825     const WSDXML_ELEMENT *pAny,
1826     WSD_EVENTING_EXPIRES **ppExpires,
1827     WSDXML_ELEMENT **ppAny);
1828 void __RPC_STUB IWSDServiceProxyEventing_GetStatusForMultipleOperations_Stub(
1829     IRpcStubBuffer* This,
1830     IRpcChannelBuffer* pRpcChannelBuffer,
1831     PRPC_MESSAGE pRpcMessage,
1832     DWORD* pdwStubPhase);
1833 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_BeginGetStatusForMultipleOperations_Proxy(
1834     IWSDServiceProxyEventing* This,
1835     const WSD_OPERATION *pOperations,
1836     DWORD dwOperationCount,
1837     const WSDXML_ELEMENT *pAny,
1838     IUnknown *pAsyncState,
1839     IWSDAsyncCallback *pAsyncCallback,
1840     IWSDAsyncResult **ppResult);
1841 void __RPC_STUB IWSDServiceProxyEventing_BeginGetStatusForMultipleOperations_Stub(
1842     IRpcStubBuffer* This,
1843     IRpcChannelBuffer* pRpcChannelBuffer,
1844     PRPC_MESSAGE pRpcMessage,
1845     DWORD* pdwStubPhase);
1846 HRESULT STDMETHODCALLTYPE IWSDServiceProxyEventing_EndGetStatusForMultipleOperations_Proxy(
1847     IWSDServiceProxyEventing* This,
1848     const WSD_OPERATION *pOperations,
1849     DWORD dwOperationCount,
1850     IWSDAsyncResult *pResult,
1851     WSD_EVENTING_EXPIRES **ppExpires,
1852     WSDXML_ELEMENT **ppAny);
1853 void __RPC_STUB IWSDServiceProxyEventing_EndGetStatusForMultipleOperations_Stub(
1854     IRpcStubBuffer* This,
1855     IRpcChannelBuffer* pRpcChannelBuffer,
1856     PRPC_MESSAGE pRpcMessage,
1857     DWORD* pdwStubPhase);
1858 
1859 #endif  /* __IWSDServiceProxyEventing_INTERFACE_DEFINED__ */
1860 
1861 #endif
1862 HRESULT WINAPI WSDCreateDeviceProxy(LPCWSTR pszDeviceId, LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDDeviceProxy **ppDeviceProxy);
1863 HRESULT WINAPI WSDCreateDeviceProxyAdvanced(LPCWSTR pszDeviceId, IWSDAddress* pDeviceAddress, LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDDeviceProxy **ppDeviceProxy);
1864 #if WINVER >= 0x601
1865 HRESULT WINAPI WSDCreateDeviceProxy2(LPCWSTR pszDeviceId, LPCWSTR pszLocalId, IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDDeviceProxy **ppDeviceProxy);
1866 #endif
1867 #endif
1868 /* Begin additional prototypes for all interfaces */
1869 
1870 
1871 /* End additional prototypes */
1872 
1873 #ifdef __cplusplus
1874 }
1875 #endif
1876 
1877 #endif /* __wsdclient_h__ */
1878