1 /*** Autogenerated by WIDL 6.4 from include/wsdhost.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __wsdhost_h__
17 #define __wsdhost_h__
18 
19 /* Forward declarations */
20 
21 #ifndef __IWSDDeviceHostNotify_FWD_DEFINED__
22 #define __IWSDDeviceHostNotify_FWD_DEFINED__
23 typedef interface IWSDDeviceHostNotify IWSDDeviceHostNotify;
24 #ifdef __cplusplus
25 interface IWSDDeviceHostNotify;
26 #endif /* __cplusplus */
27 #endif
28 
29 #ifndef __IWSDServiceMessaging_FWD_DEFINED__
30 #define __IWSDServiceMessaging_FWD_DEFINED__
31 typedef interface IWSDServiceMessaging IWSDServiceMessaging;
32 #ifdef __cplusplus
33 interface IWSDServiceMessaging;
34 #endif /* __cplusplus */
35 #endif
36 
37 #ifndef __IWSDDeviceHost_FWD_DEFINED__
38 #define __IWSDDeviceHost_FWD_DEFINED__
39 typedef interface IWSDDeviceHost IWSDDeviceHost;
40 #ifdef __cplusplus
41 interface IWSDDeviceHost;
42 #endif /* __cplusplus */
43 #endif
44 
45 /* Headers for imported files */
46 
47 #include <oaidl.h>
48 #include <ocidl.h>
49 #include <wsdxmldom.h>
50 #include <wsdtypes.h>
51 
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55 
56 #include <winapifamily.h>
57 
58 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
59 
60 #ifndef __IWSDAddress_FWD_DEFINED__
61 #define __IWSDAddress_FWD_DEFINED__
62 typedef interface IWSDAddress IWSDAddress;
63 #ifdef __cplusplus
64 interface IWSDAddress;
65 #endif /* __cplusplus */
66 #endif
67 
68 #ifndef __IWSDXMLContext_FWD_DEFINED__
69 #define __IWSDXMLContext_FWD_DEFINED__
70 typedef interface IWSDXMLContext IWSDXMLContext;
71 #ifdef __cplusplus
72 interface IWSDXMLContext;
73 #endif /* __cplusplus */
74 #endif
75 
76 #ifndef __IWSDDeviceHost_FWD_DEFINED__
77 #define __IWSDDeviceHost_FWD_DEFINED__
78 typedef interface IWSDDeviceHost IWSDDeviceHost;
79 #ifdef __cplusplus
80 interface IWSDDeviceHost;
81 #endif /* __cplusplus */
82 #endif
83 
84 #ifndef __IWSDDeviceHostNotify_FWD_DEFINED__
85 #define __IWSDDeviceHostNotify_FWD_DEFINED__
86 typedef interface IWSDDeviceHostNotify IWSDDeviceHostNotify;
87 #ifdef __cplusplus
88 interface IWSDDeviceHostNotify;
89 #endif /* __cplusplus */
90 #endif
91 
92 #ifndef __IWSDServiceMessaging_FWD_DEFINED__
93 #define __IWSDServiceMessaging_FWD_DEFINED__
94 typedef interface IWSDServiceMessaging IWSDServiceMessaging;
95 #ifdef __cplusplus
96 interface IWSDServiceMessaging;
97 #endif /* __cplusplus */
98 #endif
99 
100 /*****************************************************************************
101  * IWSDDeviceHostNotify interface
102  */
103 #ifndef __IWSDDeviceHostNotify_INTERFACE_DEFINED__
104 #define __IWSDDeviceHostNotify_INTERFACE_DEFINED__
105 
106 DEFINE_GUID(IID_IWSDDeviceHostNotify, 0xb5bee9f9, 0xeeda, 0x41fe, 0x96,0xf7, 0xf4,0x5e,0x14,0x99,0x0f,0xb0);
107 #if defined(__cplusplus) && !defined(CINTERFACE)
108 MIDL_INTERFACE("b5bee9f9-eeda-41fe-96f7-f45e14990fb0")
109 IWSDDeviceHostNotify : public IUnknown
110 {
111     virtual HRESULT STDMETHODCALLTYPE GetService(
112         LPCWSTR pszServiceId,
113         IUnknown **ppService) = 0;
114 
115 };
116 #ifdef __CRT_UUID_DECL
117 __CRT_UUID_DECL(IWSDDeviceHostNotify, 0xb5bee9f9, 0xeeda, 0x41fe, 0x96,0xf7, 0xf4,0x5e,0x14,0x99,0x0f,0xb0)
118 #endif
119 #else
120 typedef struct IWSDDeviceHostNotifyVtbl {
121     BEGIN_INTERFACE
122 
123     /*** IUnknown methods ***/
124     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
125         IWSDDeviceHostNotify *This,
126         REFIID riid,
127         void **ppvObject);
128 
129     ULONG (STDMETHODCALLTYPE *AddRef)(
130         IWSDDeviceHostNotify *This);
131 
132     ULONG (STDMETHODCALLTYPE *Release)(
133         IWSDDeviceHostNotify *This);
134 
135     /*** IWSDDeviceHostNotify methods ***/
136     HRESULT (STDMETHODCALLTYPE *GetService)(
137         IWSDDeviceHostNotify *This,
138         LPCWSTR pszServiceId,
139         IUnknown **ppService);
140 
141     END_INTERFACE
142 } IWSDDeviceHostNotifyVtbl;
143 
144 interface IWSDDeviceHostNotify {
145     CONST_VTBL IWSDDeviceHostNotifyVtbl* lpVtbl;
146 };
147 
148 #ifdef COBJMACROS
149 #ifndef WIDL_C_INLINE_WRAPPERS
150 /*** IUnknown methods ***/
151 #define IWSDDeviceHostNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
152 #define IWSDDeviceHostNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
153 #define IWSDDeviceHostNotify_Release(This) (This)->lpVtbl->Release(This)
154 /*** IWSDDeviceHostNotify methods ***/
155 #define IWSDDeviceHostNotify_GetService(This,pszServiceId,ppService) (This)->lpVtbl->GetService(This,pszServiceId,ppService)
156 #else
157 /*** IUnknown methods ***/
158 static FORCEINLINE HRESULT IWSDDeviceHostNotify_QueryInterface(IWSDDeviceHostNotify* This,REFIID riid,void **ppvObject) {
159     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
160 }
161 static FORCEINLINE ULONG IWSDDeviceHostNotify_AddRef(IWSDDeviceHostNotify* This) {
162     return This->lpVtbl->AddRef(This);
163 }
164 static FORCEINLINE ULONG IWSDDeviceHostNotify_Release(IWSDDeviceHostNotify* This) {
165     return This->lpVtbl->Release(This);
166 }
167 /*** IWSDDeviceHostNotify methods ***/
168 static FORCEINLINE HRESULT IWSDDeviceHostNotify_GetService(IWSDDeviceHostNotify* This,LPCWSTR pszServiceId,IUnknown **ppService) {
169     return This->lpVtbl->GetService(This,pszServiceId,ppService);
170 }
171 #endif
172 #endif
173 
174 #endif
175 
176 
177 #endif  /* __IWSDDeviceHostNotify_INTERFACE_DEFINED__ */
178 
179 /*****************************************************************************
180  * IWSDServiceMessaging interface
181  */
182 #ifndef __IWSDServiceMessaging_INTERFACE_DEFINED__
183 #define __IWSDServiceMessaging_INTERFACE_DEFINED__
184 
185 DEFINE_GUID(IID_IWSDServiceMessaging, 0x94974cf4, 0x0cab, 0x460d, 0xa3,0xf6, 0x7a,0x0a,0xd6,0x23,0xc0,0xe6);
186 #if defined(__cplusplus) && !defined(CINTERFACE)
187 MIDL_INTERFACE("94974cf4-0cab-460d-a3f6-7a0ad623c0e6")
188 IWSDServiceMessaging : public IUnknown
189 {
190     virtual HRESULT STDMETHODCALLTYPE SendResponse(
191         void *pBody,
192         WSD_OPERATION *pOperation,
193         IWSDMessageParameters *pMessageParameters) = 0;
194 
195     virtual HRESULT STDMETHODCALLTYPE FaultRequest(
196         WSD_SOAP_HEADER *pRequestHeader,
197         IWSDMessageParameters *pMessageParameters,
198         WSD_SOAP_FAULT *pFault) = 0;
199 
200 };
201 #ifdef __CRT_UUID_DECL
202 __CRT_UUID_DECL(IWSDServiceMessaging, 0x94974cf4, 0x0cab, 0x460d, 0xa3,0xf6, 0x7a,0x0a,0xd6,0x23,0xc0,0xe6)
203 #endif
204 #else
205 typedef struct IWSDServiceMessagingVtbl {
206     BEGIN_INTERFACE
207 
208     /*** IUnknown methods ***/
209     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
210         IWSDServiceMessaging *This,
211         REFIID riid,
212         void **ppvObject);
213 
214     ULONG (STDMETHODCALLTYPE *AddRef)(
215         IWSDServiceMessaging *This);
216 
217     ULONG (STDMETHODCALLTYPE *Release)(
218         IWSDServiceMessaging *This);
219 
220     /*** IWSDServiceMessaging methods ***/
221     HRESULT (STDMETHODCALLTYPE *SendResponse)(
222         IWSDServiceMessaging *This,
223         void *pBody,
224         WSD_OPERATION *pOperation,
225         IWSDMessageParameters *pMessageParameters);
226 
227     HRESULT (STDMETHODCALLTYPE *FaultRequest)(
228         IWSDServiceMessaging *This,
229         WSD_SOAP_HEADER *pRequestHeader,
230         IWSDMessageParameters *pMessageParameters,
231         WSD_SOAP_FAULT *pFault);
232 
233     END_INTERFACE
234 } IWSDServiceMessagingVtbl;
235 
236 interface IWSDServiceMessaging {
237     CONST_VTBL IWSDServiceMessagingVtbl* lpVtbl;
238 };
239 
240 #ifdef COBJMACROS
241 #ifndef WIDL_C_INLINE_WRAPPERS
242 /*** IUnknown methods ***/
243 #define IWSDServiceMessaging_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
244 #define IWSDServiceMessaging_AddRef(This) (This)->lpVtbl->AddRef(This)
245 #define IWSDServiceMessaging_Release(This) (This)->lpVtbl->Release(This)
246 /*** IWSDServiceMessaging methods ***/
247 #define IWSDServiceMessaging_SendResponse(This,pBody,pOperation,pMessageParameters) (This)->lpVtbl->SendResponse(This,pBody,pOperation,pMessageParameters)
248 #define IWSDServiceMessaging_FaultRequest(This,pRequestHeader,pMessageParameters,pFault) (This)->lpVtbl->FaultRequest(This,pRequestHeader,pMessageParameters,pFault)
249 #else
250 /*** IUnknown methods ***/
251 static FORCEINLINE HRESULT IWSDServiceMessaging_QueryInterface(IWSDServiceMessaging* This,REFIID riid,void **ppvObject) {
252     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
253 }
254 static FORCEINLINE ULONG IWSDServiceMessaging_AddRef(IWSDServiceMessaging* This) {
255     return This->lpVtbl->AddRef(This);
256 }
257 static FORCEINLINE ULONG IWSDServiceMessaging_Release(IWSDServiceMessaging* This) {
258     return This->lpVtbl->Release(This);
259 }
260 /*** IWSDServiceMessaging methods ***/
261 static FORCEINLINE HRESULT IWSDServiceMessaging_SendResponse(IWSDServiceMessaging* This,void *pBody,WSD_OPERATION *pOperation,IWSDMessageParameters *pMessageParameters) {
262     return This->lpVtbl->SendResponse(This,pBody,pOperation,pMessageParameters);
263 }
264 static FORCEINLINE HRESULT IWSDServiceMessaging_FaultRequest(IWSDServiceMessaging* This,WSD_SOAP_HEADER *pRequestHeader,IWSDMessageParameters *pMessageParameters,WSD_SOAP_FAULT *pFault) {
265     return This->lpVtbl->FaultRequest(This,pRequestHeader,pMessageParameters,pFault);
266 }
267 #endif
268 #endif
269 
270 #endif
271 
272 
273 #endif  /* __IWSDServiceMessaging_INTERFACE_DEFINED__ */
274 
275 /*****************************************************************************
276  * IWSDDeviceHost interface
277  */
278 #ifndef __IWSDDeviceHost_INTERFACE_DEFINED__
279 #define __IWSDDeviceHost_INTERFACE_DEFINED__
280 
281 DEFINE_GUID(IID_IWSDDeviceHost, 0x917fe891, 0x3d13, 0x4138, 0x98,0x09, 0x93,0x4c,0x8a,0xbe,0xb1,0x2c);
282 #if defined(__cplusplus) && !defined(CINTERFACE)
283 MIDL_INTERFACE("917fe891-3d13-4138-9809-934c8abeb12c")
284 IWSDDeviceHost : public IUnknown
285 {
286     virtual HRESULT STDMETHODCALLTYPE Init(
287         LPCWSTR pszLocalId,
288         IWSDXMLContext *pContext,
289         IWSDAddress **ppHostAddresses,
290         DWORD dwHostAddressCount) = 0;
291 
292     virtual HRESULT STDMETHODCALLTYPE Start(
293         ULONGLONG ullInstanceId,
294         const WSD_URI_LIST *pScopeList,
295         IWSDDeviceHostNotify *pNotificationSink) = 0;
296 
297     virtual HRESULT STDMETHODCALLTYPE Stop(
298         ) = 0;
299 
300     virtual HRESULT STDMETHODCALLTYPE Terminate(
301         ) = 0;
302 
303     virtual HRESULT STDMETHODCALLTYPE RegisterPortType(
304         const WSD_PORT_TYPE *pPortType) = 0;
305 
306     virtual HRESULT STDMETHODCALLTYPE SetMetadata(
307         const WSD_THIS_MODEL_METADATA *pThisModelMetadata,
308         const WSD_THIS_DEVICE_METADATA *pThisDeviceMetadata,
309         const WSD_HOST_METADATA *pHostMetadata,
310         const WSD_METADATA_SECTION_LIST *pCustomMetadata) = 0;
311 
312     virtual HRESULT STDMETHODCALLTYPE RegisterService(
313         LPCWSTR pszServiceId,
314         IUnknown *pService) = 0;
315 
316     virtual HRESULT STDMETHODCALLTYPE RetireService(
317         LPCWSTR pszServiceId) = 0;
318 
319     virtual HRESULT STDMETHODCALLTYPE AddDynamicService(
320         LPCWSTR pszServiceId,
321         LPCWSTR pszEndpointAddress,
322         const WSD_PORT_TYPE *pPortType,
323         const WSDXML_NAME *pPortName,
324         const WSDXML_ELEMENT *pAny,
325         IUnknown *pService) = 0;
326 
327     virtual HRESULT STDMETHODCALLTYPE RemoveDynamicService(
328         LPCWSTR pszServiceId) = 0;
329 
330     virtual HRESULT STDMETHODCALLTYPE SetServiceDiscoverable(
331         LPCWSTR pszServiceId,
332         WINBOOL fDiscoverable) = 0;
333 
334     virtual HRESULT STDMETHODCALLTYPE SignalEvent(
335         LPCWSTR pszServiceId,
336         const void *pBody,
337         const WSD_OPERATION *pOperation) = 0;
338 
339 };
340 #ifdef __CRT_UUID_DECL
341 __CRT_UUID_DECL(IWSDDeviceHost, 0x917fe891, 0x3d13, 0x4138, 0x98,0x09, 0x93,0x4c,0x8a,0xbe,0xb1,0x2c)
342 #endif
343 #else
344 typedef struct IWSDDeviceHostVtbl {
345     BEGIN_INTERFACE
346 
347     /*** IUnknown methods ***/
348     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
349         IWSDDeviceHost *This,
350         REFIID riid,
351         void **ppvObject);
352 
353     ULONG (STDMETHODCALLTYPE *AddRef)(
354         IWSDDeviceHost *This);
355 
356     ULONG (STDMETHODCALLTYPE *Release)(
357         IWSDDeviceHost *This);
358 
359     /*** IWSDDeviceHost methods ***/
360     HRESULT (STDMETHODCALLTYPE *Init)(
361         IWSDDeviceHost *This,
362         LPCWSTR pszLocalId,
363         IWSDXMLContext *pContext,
364         IWSDAddress **ppHostAddresses,
365         DWORD dwHostAddressCount);
366 
367     HRESULT (STDMETHODCALLTYPE *Start)(
368         IWSDDeviceHost *This,
369         ULONGLONG ullInstanceId,
370         const WSD_URI_LIST *pScopeList,
371         IWSDDeviceHostNotify *pNotificationSink);
372 
373     HRESULT (STDMETHODCALLTYPE *Stop)(
374         IWSDDeviceHost *This);
375 
376     HRESULT (STDMETHODCALLTYPE *Terminate)(
377         IWSDDeviceHost *This);
378 
379     HRESULT (STDMETHODCALLTYPE *RegisterPortType)(
380         IWSDDeviceHost *This,
381         const WSD_PORT_TYPE *pPortType);
382 
383     HRESULT (STDMETHODCALLTYPE *SetMetadata)(
384         IWSDDeviceHost *This,
385         const WSD_THIS_MODEL_METADATA *pThisModelMetadata,
386         const WSD_THIS_DEVICE_METADATA *pThisDeviceMetadata,
387         const WSD_HOST_METADATA *pHostMetadata,
388         const WSD_METADATA_SECTION_LIST *pCustomMetadata);
389 
390     HRESULT (STDMETHODCALLTYPE *RegisterService)(
391         IWSDDeviceHost *This,
392         LPCWSTR pszServiceId,
393         IUnknown *pService);
394 
395     HRESULT (STDMETHODCALLTYPE *RetireService)(
396         IWSDDeviceHost *This,
397         LPCWSTR pszServiceId);
398 
399     HRESULT (STDMETHODCALLTYPE *AddDynamicService)(
400         IWSDDeviceHost *This,
401         LPCWSTR pszServiceId,
402         LPCWSTR pszEndpointAddress,
403         const WSD_PORT_TYPE *pPortType,
404         const WSDXML_NAME *pPortName,
405         const WSDXML_ELEMENT *pAny,
406         IUnknown *pService);
407 
408     HRESULT (STDMETHODCALLTYPE *RemoveDynamicService)(
409         IWSDDeviceHost *This,
410         LPCWSTR pszServiceId);
411 
412     HRESULT (STDMETHODCALLTYPE *SetServiceDiscoverable)(
413         IWSDDeviceHost *This,
414         LPCWSTR pszServiceId,
415         WINBOOL fDiscoverable);
416 
417     HRESULT (STDMETHODCALLTYPE *SignalEvent)(
418         IWSDDeviceHost *This,
419         LPCWSTR pszServiceId,
420         const void *pBody,
421         const WSD_OPERATION *pOperation);
422 
423     END_INTERFACE
424 } IWSDDeviceHostVtbl;
425 
426 interface IWSDDeviceHost {
427     CONST_VTBL IWSDDeviceHostVtbl* lpVtbl;
428 };
429 
430 #ifdef COBJMACROS
431 #ifndef WIDL_C_INLINE_WRAPPERS
432 /*** IUnknown methods ***/
433 #define IWSDDeviceHost_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
434 #define IWSDDeviceHost_AddRef(This) (This)->lpVtbl->AddRef(This)
435 #define IWSDDeviceHost_Release(This) (This)->lpVtbl->Release(This)
436 /*** IWSDDeviceHost methods ***/
437 #define IWSDDeviceHost_Init(This,pszLocalId,pContext,ppHostAddresses,dwHostAddressCount) (This)->lpVtbl->Init(This,pszLocalId,pContext,ppHostAddresses,dwHostAddressCount)
438 #define IWSDDeviceHost_Start(This,ullInstanceId,pScopeList,pNotificationSink) (This)->lpVtbl->Start(This,ullInstanceId,pScopeList,pNotificationSink)
439 #define IWSDDeviceHost_Stop(This) (This)->lpVtbl->Stop(This)
440 #define IWSDDeviceHost_Terminate(This) (This)->lpVtbl->Terminate(This)
441 #define IWSDDeviceHost_RegisterPortType(This,pPortType) (This)->lpVtbl->RegisterPortType(This,pPortType)
442 #define IWSDDeviceHost_SetMetadata(This,pThisModelMetadata,pThisDeviceMetadata,pHostMetadata,pCustomMetadata) (This)->lpVtbl->SetMetadata(This,pThisModelMetadata,pThisDeviceMetadata,pHostMetadata,pCustomMetadata)
443 #define IWSDDeviceHost_RegisterService(This,pszServiceId,pService) (This)->lpVtbl->RegisterService(This,pszServiceId,pService)
444 #define IWSDDeviceHost_RetireService(This,pszServiceId) (This)->lpVtbl->RetireService(This,pszServiceId)
445 #define IWSDDeviceHost_AddDynamicService(This,pszServiceId,pszEndpointAddress,pPortType,pPortName,pAny,pService) (This)->lpVtbl->AddDynamicService(This,pszServiceId,pszEndpointAddress,pPortType,pPortName,pAny,pService)
446 #define IWSDDeviceHost_RemoveDynamicService(This,pszServiceId) (This)->lpVtbl->RemoveDynamicService(This,pszServiceId)
447 #define IWSDDeviceHost_SetServiceDiscoverable(This,pszServiceId,fDiscoverable) (This)->lpVtbl->SetServiceDiscoverable(This,pszServiceId,fDiscoverable)
448 #define IWSDDeviceHost_SignalEvent(This,pszServiceId,pBody,pOperation) (This)->lpVtbl->SignalEvent(This,pszServiceId,pBody,pOperation)
449 #else
450 /*** IUnknown methods ***/
451 static FORCEINLINE HRESULT IWSDDeviceHost_QueryInterface(IWSDDeviceHost* This,REFIID riid,void **ppvObject) {
452     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
453 }
454 static FORCEINLINE ULONG IWSDDeviceHost_AddRef(IWSDDeviceHost* This) {
455     return This->lpVtbl->AddRef(This);
456 }
457 static FORCEINLINE ULONG IWSDDeviceHost_Release(IWSDDeviceHost* This) {
458     return This->lpVtbl->Release(This);
459 }
460 /*** IWSDDeviceHost methods ***/
461 static FORCEINLINE HRESULT IWSDDeviceHost_Init(IWSDDeviceHost* This,LPCWSTR pszLocalId,IWSDXMLContext *pContext,IWSDAddress **ppHostAddresses,DWORD dwHostAddressCount) {
462     return This->lpVtbl->Init(This,pszLocalId,pContext,ppHostAddresses,dwHostAddressCount);
463 }
464 static FORCEINLINE HRESULT IWSDDeviceHost_Start(IWSDDeviceHost* This,ULONGLONG ullInstanceId,const WSD_URI_LIST *pScopeList,IWSDDeviceHostNotify *pNotificationSink) {
465     return This->lpVtbl->Start(This,ullInstanceId,pScopeList,pNotificationSink);
466 }
467 static FORCEINLINE HRESULT IWSDDeviceHost_Stop(IWSDDeviceHost* This) {
468     return This->lpVtbl->Stop(This);
469 }
470 static FORCEINLINE HRESULT IWSDDeviceHost_Terminate(IWSDDeviceHost* This) {
471     return This->lpVtbl->Terminate(This);
472 }
473 static FORCEINLINE HRESULT IWSDDeviceHost_RegisterPortType(IWSDDeviceHost* This,const WSD_PORT_TYPE *pPortType) {
474     return This->lpVtbl->RegisterPortType(This,pPortType);
475 }
476 static FORCEINLINE HRESULT IWSDDeviceHost_SetMetadata(IWSDDeviceHost* This,const WSD_THIS_MODEL_METADATA *pThisModelMetadata,const WSD_THIS_DEVICE_METADATA *pThisDeviceMetadata,const WSD_HOST_METADATA *pHostMetadata,const WSD_METADATA_SECTION_LIST *pCustomMetadata) {
477     return This->lpVtbl->SetMetadata(This,pThisModelMetadata,pThisDeviceMetadata,pHostMetadata,pCustomMetadata);
478 }
479 static FORCEINLINE HRESULT IWSDDeviceHost_RegisterService(IWSDDeviceHost* This,LPCWSTR pszServiceId,IUnknown *pService) {
480     return This->lpVtbl->RegisterService(This,pszServiceId,pService);
481 }
482 static FORCEINLINE HRESULT IWSDDeviceHost_RetireService(IWSDDeviceHost* This,LPCWSTR pszServiceId) {
483     return This->lpVtbl->RetireService(This,pszServiceId);
484 }
485 static FORCEINLINE HRESULT IWSDDeviceHost_AddDynamicService(IWSDDeviceHost* This,LPCWSTR pszServiceId,LPCWSTR pszEndpointAddress,const WSD_PORT_TYPE *pPortType,const WSDXML_NAME *pPortName,const WSDXML_ELEMENT *pAny,IUnknown *pService) {
486     return This->lpVtbl->AddDynamicService(This,pszServiceId,pszEndpointAddress,pPortType,pPortName,pAny,pService);
487 }
488 static FORCEINLINE HRESULT IWSDDeviceHost_RemoveDynamicService(IWSDDeviceHost* This,LPCWSTR pszServiceId) {
489     return This->lpVtbl->RemoveDynamicService(This,pszServiceId);
490 }
491 static FORCEINLINE HRESULT IWSDDeviceHost_SetServiceDiscoverable(IWSDDeviceHost* This,LPCWSTR pszServiceId,WINBOOL fDiscoverable) {
492     return This->lpVtbl->SetServiceDiscoverable(This,pszServiceId,fDiscoverable);
493 }
494 static FORCEINLINE HRESULT IWSDDeviceHost_SignalEvent(IWSDDeviceHost* This,LPCWSTR pszServiceId,const void *pBody,const WSD_OPERATION *pOperation) {
495     return This->lpVtbl->SignalEvent(This,pszServiceId,pBody,pOperation);
496 }
497 #endif
498 #endif
499 
500 #endif
501 
502 
503 #endif  /* __IWSDDeviceHost_INTERFACE_DEFINED__ */
504 
505 HRESULT WINAPI WSDCreateDeviceHost(LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDDeviceHost **ppDeviceHost);
506 #if WINVER >= 0x601
507 HRESULT WINAPI WSDCreateDeviceHost2(LPCWSTR pszLocalId, IWSDXMLContext *pContext, WSD_CONFIG_PARAM *pConfigParams, DWORD dwConfigParamCount, IWSDDeviceHost **ppDeviceHost);
508 #endif
509 HRESULT WINAPI WSDCreateDeviceHostAdvanced(LPCWSTR pszLocalId, IWSDXMLContext *pContext, IWSDAddress** ppHostAddresses, DWORD dwHostAddressCount, IWSDDeviceHost **ppDeviceHost);
510 #endif
511 /* Begin additional prototypes for all interfaces */
512 
513 
514 /* End additional prototypes */
515 
516 #ifdef __cplusplus
517 }
518 #endif
519 
520 #endif /* __wsdhost_h__ */
521