1 /*** Autogenerated by WIDL 1.6 from include/wbemprov.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 __wbemprov_h__
16 #define __wbemprov_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __WbemAdministrativeLocator_FWD_DEFINED__
21 #define __WbemAdministrativeLocator_FWD_DEFINED__
22 #ifdef __cplusplus
23 typedef class WbemAdministrativeLocator WbemAdministrativeLocator;
24 #else
25 typedef struct WbemAdministrativeLocator WbemAdministrativeLocator;
26 #endif /* defined __cplusplus */
27 #endif /* defined __WbemAdministrativeLocator_FWD_DEFINED__ */
28 
29 #ifndef __WbemAuthenticatedLocator_FWD_DEFINED__
30 #define __WbemAuthenticatedLocator_FWD_DEFINED__
31 #ifdef __cplusplus
32 typedef class WbemAuthenticatedLocator WbemAuthenticatedLocator;
33 #else
34 typedef struct WbemAuthenticatedLocator WbemAuthenticatedLocator;
35 #endif /* defined __cplusplus */
36 #endif /* defined __WbemAuthenticatedLocator_FWD_DEFINED__ */
37 
38 #ifndef __WbemUnauthenticatedLocator_FWD_DEFINED__
39 #define __WbemUnauthenticatedLocator_FWD_DEFINED__
40 #ifdef __cplusplus
41 typedef class WbemUnauthenticatedLocator WbemUnauthenticatedLocator;
42 #else
43 typedef struct WbemUnauthenticatedLocator WbemUnauthenticatedLocator;
44 #endif /* defined __cplusplus */
45 #endif /* defined __WbemUnauthenticatedLocator_FWD_DEFINED__ */
46 
47 #ifndef __WbemDecoupledRegistrar_FWD_DEFINED__
48 #define __WbemDecoupledRegistrar_FWD_DEFINED__
49 #ifdef __cplusplus
50 typedef class WbemDecoupledRegistrar WbemDecoupledRegistrar;
51 #else
52 typedef struct WbemDecoupledRegistrar WbemDecoupledRegistrar;
53 #endif /* defined __cplusplus */
54 #endif /* defined __WbemDecoupledRegistrar_FWD_DEFINED__ */
55 
56 #ifndef __WbemDecoupledBasicEventProvider_FWD_DEFINED__
57 #define __WbemDecoupledBasicEventProvider_FWD_DEFINED__
58 #ifdef __cplusplus
59 typedef class WbemDecoupledBasicEventProvider WbemDecoupledBasicEventProvider;
60 #else
61 typedef struct WbemDecoupledBasicEventProvider WbemDecoupledBasicEventProvider;
62 #endif /* defined __cplusplus */
63 #endif /* defined __WbemDecoupledBasicEventProvider_FWD_DEFINED__ */
64 
65 #ifndef __IWbemUnboundObjectSink_FWD_DEFINED__
66 #define __IWbemUnboundObjectSink_FWD_DEFINED__
67 typedef interface IWbemUnboundObjectSink IWbemUnboundObjectSink;
68 #endif
69 
70 #ifndef __IWbemPropertyProvider_FWD_DEFINED__
71 #define __IWbemPropertyProvider_FWD_DEFINED__
72 typedef interface IWbemPropertyProvider IWbemPropertyProvider;
73 #endif
74 
75 #ifndef __IWbemEventProvider_FWD_DEFINED__
76 #define __IWbemEventProvider_FWD_DEFINED__
77 typedef interface IWbemEventProvider IWbemEventProvider;
78 #endif
79 
80 #ifndef __IWbemEventProviderQuerySink_FWD_DEFINED__
81 #define __IWbemEventProviderQuerySink_FWD_DEFINED__
82 typedef interface IWbemEventProviderQuerySink IWbemEventProviderQuerySink;
83 #endif
84 
85 #ifndef __IWbemEventProviderSecurity_FWD_DEFINED__
86 #define __IWbemEventProviderSecurity_FWD_DEFINED__
87 typedef interface IWbemEventProviderSecurity IWbemEventProviderSecurity;
88 #endif
89 
90 #ifndef __IWbemProviderIdentity_FWD_DEFINED__
91 #define __IWbemProviderIdentity_FWD_DEFINED__
92 typedef interface IWbemProviderIdentity IWbemProviderIdentity;
93 #endif
94 
95 #ifndef __IWbemEventConsumerProvider_FWD_DEFINED__
96 #define __IWbemEventConsumerProvider_FWD_DEFINED__
97 typedef interface IWbemEventConsumerProvider IWbemEventConsumerProvider;
98 #endif
99 
100 #ifndef __IWbemProviderInitSink_FWD_DEFINED__
101 #define __IWbemProviderInitSink_FWD_DEFINED__
102 typedef interface IWbemProviderInitSink IWbemProviderInitSink;
103 #endif
104 
105 #ifndef __IWbemProviderInit_FWD_DEFINED__
106 #define __IWbemProviderInit_FWD_DEFINED__
107 typedef interface IWbemProviderInit IWbemProviderInit;
108 #endif
109 
110 #ifndef __IWbemHiPerfProvider_FWD_DEFINED__
111 #define __IWbemHiPerfProvider_FWD_DEFINED__
112 typedef interface IWbemHiPerfProvider IWbemHiPerfProvider;
113 #endif
114 
115 #ifndef __IWbemDecoupledRegistrar_FWD_DEFINED__
116 #define __IWbemDecoupledRegistrar_FWD_DEFINED__
117 typedef interface IWbemDecoupledRegistrar IWbemDecoupledRegistrar;
118 #endif
119 
120 #ifndef __IWbemDecoupledBasicEventProvider_FWD_DEFINED__
121 #define __IWbemDecoupledBasicEventProvider_FWD_DEFINED__
122 typedef interface IWbemDecoupledBasicEventProvider IWbemDecoupledBasicEventProvider;
123 #endif
124 
125 #ifndef __IWbemEventSink_FWD_DEFINED__
126 #define __IWbemEventSink_FWD_DEFINED__
127 typedef interface IWbemEventSink IWbemEventSink;
128 #endif
129 
130 /* Headers for imported files */
131 
132 #include <objidl.h>
133 #include <oleidl.h>
134 #include <oaidl.h>
135 #include <wbemcli.h>
136 
137 #ifdef __cplusplus
138 extern "C" {
139 #endif
140 
141 /**
142  * This file is part of the mingw-w64 runtime package.
143  * No warranty is given; refer to the file DISCLAIMER within this package.
144  */
145 
146 #include <winapifamily.h>
147 
148 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
149 typedef VARIANT WBEM_VARIANT;
150 typedef LPWSTR WBEM_WSTR;
151 typedef LPCWSTR WBEM_CWSTR;
152 typedef enum tag_WBEM_PROVIDER_REQUIREMENTS_TYPE {
153     WBEM_REQUIREMENTS_START_POSTFILTER = 0,
154     WBEM_REQUIREMENTS_STOP_POSTFILTER = 1,
155     WBEM_REQUIREMENTS_RECHECK_SUBSCRIPTIONS = 2
156 } WBEM_PROVIDER_REQUIREMENTS_TYPE;
157 #ifndef __IWbemPropertyProvider_FWD_DEFINED__
158 #define __IWbemPropertyProvider_FWD_DEFINED__
159 typedef interface IWbemPropertyProvider IWbemPropertyProvider;
160 #endif
161 
162 #ifndef __IWbemUnboundObjectSink_FWD_DEFINED__
163 #define __IWbemUnboundObjectSink_FWD_DEFINED__
164 typedef interface IWbemUnboundObjectSink IWbemUnboundObjectSink;
165 #endif
166 
167 #ifndef __IWbemEventProvider_FWD_DEFINED__
168 #define __IWbemEventProvider_FWD_DEFINED__
169 typedef interface IWbemEventProvider IWbemEventProvider;
170 #endif
171 
172 #ifndef __IWbemEventProviderQuerySink_FWD_DEFINED__
173 #define __IWbemEventProviderQuerySink_FWD_DEFINED__
174 typedef interface IWbemEventProviderQuerySink IWbemEventProviderQuerySink;
175 #endif
176 
177 #ifndef __IWbemEventProviderSecurity_FWD_DEFINED__
178 #define __IWbemEventProviderSecurity_FWD_DEFINED__
179 typedef interface IWbemEventProviderSecurity IWbemEventProviderSecurity;
180 #endif
181 
182 #ifndef __IWbemEventConsumerProvider_FWD_DEFINED__
183 #define __IWbemEventConsumerProvider_FWD_DEFINED__
184 typedef interface IWbemEventConsumerProvider IWbemEventConsumerProvider;
185 #endif
186 
187 #ifndef __IWbemProviderInitSink_FWD_DEFINED__
188 #define __IWbemProviderInitSink_FWD_DEFINED__
189 typedef interface IWbemProviderInitSink IWbemProviderInitSink;
190 #endif
191 
192 #ifndef __IWbemProviderInit_FWD_DEFINED__
193 #define __IWbemProviderInit_FWD_DEFINED__
194 typedef interface IWbemProviderInit IWbemProviderInit;
195 #endif
196 
197 #ifndef __IWbemHiPerfProvider_FWD_DEFINED__
198 #define __IWbemHiPerfProvider_FWD_DEFINED__
199 typedef interface IWbemHiPerfProvider IWbemHiPerfProvider;
200 #endif
201 
202 #ifndef __IWbemDecoupledRegistrar_FWD_DEFINED__
203 #define __IWbemDecoupledRegistrar_FWD_DEFINED__
204 typedef interface IWbemDecoupledRegistrar IWbemDecoupledRegistrar;
205 #endif
206 
207 
208 DEFINE_GUID(LIBID_WbemProviders_v1, 0x092df710, 0x7010, 0x11d1, 0xad,0x90, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
209 
210 /*****************************************************************************
211  * WbemAdministrativeLocator coclass
212  */
213 
214 DEFINE_GUID(CLSID_WbemAdministrativeLocator, 0xcb8555cc, 0x9128, 0x11d1, 0xad,0x9b, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
215 
216 #ifdef __cplusplus
217 class DECLSPEC_UUID("cb8555cc-9128-11d1-ad9b-00c04fd8fdff") WbemAdministrativeLocator;
218 #ifdef __CRT_UUID_DECL
219 __CRT_UUID_DECL(WbemAdministrativeLocator, 0xcb8555cc, 0x9128, 0x11d1, 0xad,0x9b, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
220 #endif
221 #endif
222 
223 /*****************************************************************************
224  * WbemAuthenticatedLocator coclass
225  */
226 
227 DEFINE_GUID(CLSID_WbemAuthenticatedLocator, 0xcd184336, 0x9128, 0x11d1, 0xad,0x9b, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
228 
229 #ifdef __cplusplus
230 class DECLSPEC_UUID("cd184336-9128-11d1-ad9b-00c04fd8fdff") WbemAuthenticatedLocator;
231 #ifdef __CRT_UUID_DECL
232 __CRT_UUID_DECL(WbemAuthenticatedLocator, 0xcd184336, 0x9128, 0x11d1, 0xad,0x9b, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
233 #endif
234 #endif
235 
236 /*****************************************************************************
237  * WbemUnauthenticatedLocator coclass
238  */
239 
240 DEFINE_GUID(CLSID_WbemUnauthenticatedLocator, 0x443e7b79, 0xde31, 0x11d2, 0xb3,0x40, 0x00,0x10,0x4b,0xcc,0x4b,0x4a);
241 
242 #ifdef __cplusplus
243 class DECLSPEC_UUID("443e7b79-de31-11d2-b340-00104bcc4b4a") WbemUnauthenticatedLocator;
244 #ifdef __CRT_UUID_DECL
245 __CRT_UUID_DECL(WbemUnauthenticatedLocator, 0x443e7b79, 0xde31, 0x11d2, 0xb3,0x40, 0x00,0x10,0x4b,0xcc,0x4b,0x4a)
246 #endif
247 #endif
248 
249 /*****************************************************************************
250  * WbemDecoupledRegistrar coclass
251  */
252 
253 DEFINE_GUID(CLSID_WbemDecoupledRegistrar, 0x4cfc7932, 0x0f9d, 0x4bef, 0x9c,0x32, 0x8e,0xa2,0xa6,0xb5,0x6f,0xcb);
254 
255 #ifdef __cplusplus
256 class DECLSPEC_UUID("4cfc7932-0f9d-4bef-9c32-8ea2a6b56fcb") WbemDecoupledRegistrar;
257 #ifdef __CRT_UUID_DECL
258 __CRT_UUID_DECL(WbemDecoupledRegistrar, 0x4cfc7932, 0x0f9d, 0x4bef, 0x9c,0x32, 0x8e,0xa2,0xa6,0xb5,0x6f,0xcb)
259 #endif
260 #endif
261 
262 /*****************************************************************************
263  * WbemDecoupledBasicEventProvider coclass
264  */
265 
266 DEFINE_GUID(CLSID_WbemDecoupledBasicEventProvider, 0xf5f75737, 0x2843, 0x4f22, 0x93,0x3d, 0xc7,0x6a,0x97,0xcd,0xa6,0x2f);
267 
268 #ifdef __cplusplus
269 class DECLSPEC_UUID("f5f75737-2843-4f22-933d-c76a97cda62f") WbemDecoupledBasicEventProvider;
270 #ifdef __CRT_UUID_DECL
271 __CRT_UUID_DECL(WbemDecoupledBasicEventProvider, 0xf5f75737, 0x2843, 0x4f22, 0x93,0x3d, 0xc7,0x6a,0x97,0xcd,0xa6,0x2f)
272 #endif
273 #endif
274 
275 typedef enum tag_WBEM_BATCH_TYPE {
276     WBEM_FLAG_BATCH_IF_NEEDED = 0,
277     WBEM_FLAG_MUST_BATCH = 0x1,
278     WBEM_FLAG_MUST_NOT_BATCH = 0x2
279 } WBEM_BATCH_TYPE;
280 typedef enum tag_WBEM_PROVIDER_FLAGS {
281     WBEM_FLAG_OWNER_UPDATE = 0x10000
282 } WBEM_PROVIDER_FLAGS;
283 typedef enum tag_WBEM_EXTRA_RETURN_CODES {
284     WBEM_S_INITIALIZED = 0,
285     WBEM_S_LIMITED_SERVICE = 0x43001,
286     WBEM_S_INDIRECTLY_UPDATED = 0x43002,
287     WBEM_S_SUBJECT_TO_SDS = 0x43003,
288     WBEM_E_RETRY_LATER = 0x80043001,
289     WBEM_E_RESOURCE_CONTENTION = 0x80043002
290 } WBEM_EXTRA_RETURN_CODES;
291 /*****************************************************************************
292  * IWbemUnboundObjectSink interface
293  */
294 #ifndef __IWbemUnboundObjectSink_INTERFACE_DEFINED__
295 #define __IWbemUnboundObjectSink_INTERFACE_DEFINED__
296 
297 DEFINE_GUID(IID_IWbemUnboundObjectSink, 0xe246107b, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
298 #if defined(__cplusplus) && !defined(CINTERFACE)
299 MIDL_INTERFACE("e246107b-b06e-11d0-ad61-00c04fd8fdff")
300 IWbemUnboundObjectSink : public IUnknown
301 {
302     virtual HRESULT STDMETHODCALLTYPE IndicateToConsumer(
303         IWbemClassObject *pLogicalConsumer,
304         LONG lNumObjects,
305         IWbemClassObject **apObjects) = 0;
306 
307 };
308 #ifdef __CRT_UUID_DECL
309 __CRT_UUID_DECL(IWbemUnboundObjectSink, 0xe246107b, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
310 #endif
311 #else
312 typedef struct IWbemUnboundObjectSinkVtbl {
313     BEGIN_INTERFACE
314 
315     /*** IUnknown methods ***/
316     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
317         IWbemUnboundObjectSink* This,
318         REFIID riid,
319         void **ppvObject);
320 
321     ULONG (STDMETHODCALLTYPE *AddRef)(
322         IWbemUnboundObjectSink* This);
323 
324     ULONG (STDMETHODCALLTYPE *Release)(
325         IWbemUnboundObjectSink* This);
326 
327     /*** IWbemUnboundObjectSink methods ***/
328     HRESULT (STDMETHODCALLTYPE *IndicateToConsumer)(
329         IWbemUnboundObjectSink* This,
330         IWbemClassObject *pLogicalConsumer,
331         LONG lNumObjects,
332         IWbemClassObject **apObjects);
333 
334     END_INTERFACE
335 } IWbemUnboundObjectSinkVtbl;
336 interface IWbemUnboundObjectSink {
337     CONST_VTBL IWbemUnboundObjectSinkVtbl* lpVtbl;
338 };
339 
340 #ifdef COBJMACROS
341 #ifndef WIDL_C_INLINE_WRAPPERS
342 /*** IUnknown methods ***/
343 #define IWbemUnboundObjectSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
344 #define IWbemUnboundObjectSink_AddRef(This) (This)->lpVtbl->AddRef(This)
345 #define IWbemUnboundObjectSink_Release(This) (This)->lpVtbl->Release(This)
346 /*** IWbemUnboundObjectSink methods ***/
347 #define IWbemUnboundObjectSink_IndicateToConsumer(This,pLogicalConsumer,lNumObjects,apObjects) (This)->lpVtbl->IndicateToConsumer(This,pLogicalConsumer,lNumObjects,apObjects)
348 #else
349 /*** IUnknown methods ***/
350 static FORCEINLINE HRESULT IWbemUnboundObjectSink_QueryInterface(IWbemUnboundObjectSink* This,REFIID riid,void **ppvObject) {
351     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
352 }
353 static FORCEINLINE ULONG IWbemUnboundObjectSink_AddRef(IWbemUnboundObjectSink* This) {
354     return This->lpVtbl->AddRef(This);
355 }
356 static FORCEINLINE ULONG IWbemUnboundObjectSink_Release(IWbemUnboundObjectSink* This) {
357     return This->lpVtbl->Release(This);
358 }
359 /*** IWbemUnboundObjectSink methods ***/
360 static FORCEINLINE HRESULT IWbemUnboundObjectSink_IndicateToConsumer(IWbemUnboundObjectSink* This,IWbemClassObject *pLogicalConsumer,LONG lNumObjects,IWbemClassObject **apObjects) {
361     return This->lpVtbl->IndicateToConsumer(This,pLogicalConsumer,lNumObjects,apObjects);
362 }
363 #endif
364 #endif
365 
366 #endif
367 
368 HRESULT STDMETHODCALLTYPE IWbemUnboundObjectSink_IndicateToConsumer_Proxy(
369     IWbemUnboundObjectSink* This,
370     IWbemClassObject *pLogicalConsumer,
371     LONG lNumObjects,
372     IWbemClassObject **apObjects);
373 void __RPC_STUB IWbemUnboundObjectSink_IndicateToConsumer_Stub(
374     IRpcStubBuffer* This,
375     IRpcChannelBuffer* pRpcChannelBuffer,
376     PRPC_MESSAGE pRpcMessage,
377     DWORD* pdwStubPhase);
378 
379 #endif  /* __IWbemUnboundObjectSink_INTERFACE_DEFINED__ */
380 
381 /*****************************************************************************
382  * IWbemPropertyProvider interface
383  */
384 #ifndef __IWbemPropertyProvider_INTERFACE_DEFINED__
385 #define __IWbemPropertyProvider_INTERFACE_DEFINED__
386 
387 DEFINE_GUID(IID_IWbemPropertyProvider, 0xce61e841, 0x65bc, 0x11d0, 0xb6,0xbd, 0x00,0xaa,0x00,0x32,0x40,0xc7);
388 #if defined(__cplusplus) && !defined(CINTERFACE)
389 MIDL_INTERFACE("ce61e841-65bc-11d0-b6bd-00aa003240c7")
390 IWbemPropertyProvider : public IUnknown
391 {
392     virtual HRESULT STDMETHODCALLTYPE GetProperty(
393         LONG lFlags,
394         const BSTR strLocale,
395         const BSTR strClassMapping,
396         const BSTR strInstMapping,
397         const BSTR strPropMapping,
398         VARIANT *pvValue) = 0;
399 
400     virtual HRESULT STDMETHODCALLTYPE PutProperty(
401         LONG lFlags,
402         const BSTR strLocale,
403         const BSTR strClassMapping,
404         const BSTR strInstMapping,
405         const BSTR strPropMapping,
406         const VARIANT *pvValue) = 0;
407 
408 };
409 #ifdef __CRT_UUID_DECL
410 __CRT_UUID_DECL(IWbemPropertyProvider, 0xce61e841, 0x65bc, 0x11d0, 0xb6,0xbd, 0x00,0xaa,0x00,0x32,0x40,0xc7)
411 #endif
412 #else
413 typedef struct IWbemPropertyProviderVtbl {
414     BEGIN_INTERFACE
415 
416     /*** IUnknown methods ***/
417     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
418         IWbemPropertyProvider* This,
419         REFIID riid,
420         void **ppvObject);
421 
422     ULONG (STDMETHODCALLTYPE *AddRef)(
423         IWbemPropertyProvider* This);
424 
425     ULONG (STDMETHODCALLTYPE *Release)(
426         IWbemPropertyProvider* This);
427 
428     /*** IWbemPropertyProvider methods ***/
429     HRESULT (STDMETHODCALLTYPE *GetProperty)(
430         IWbemPropertyProvider* This,
431         LONG lFlags,
432         const BSTR strLocale,
433         const BSTR strClassMapping,
434         const BSTR strInstMapping,
435         const BSTR strPropMapping,
436         VARIANT *pvValue);
437 
438     HRESULT (STDMETHODCALLTYPE *PutProperty)(
439         IWbemPropertyProvider* This,
440         LONG lFlags,
441         const BSTR strLocale,
442         const BSTR strClassMapping,
443         const BSTR strInstMapping,
444         const BSTR strPropMapping,
445         const VARIANT *pvValue);
446 
447     END_INTERFACE
448 } IWbemPropertyProviderVtbl;
449 interface IWbemPropertyProvider {
450     CONST_VTBL IWbemPropertyProviderVtbl* lpVtbl;
451 };
452 
453 #ifdef COBJMACROS
454 #ifndef WIDL_C_INLINE_WRAPPERS
455 /*** IUnknown methods ***/
456 #define IWbemPropertyProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
457 #define IWbemPropertyProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
458 #define IWbemPropertyProvider_Release(This) (This)->lpVtbl->Release(This)
459 /*** IWbemPropertyProvider methods ***/
460 #define IWbemPropertyProvider_GetProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue) (This)->lpVtbl->GetProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue)
461 #define IWbemPropertyProvider_PutProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue) (This)->lpVtbl->PutProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue)
462 #else
463 /*** IUnknown methods ***/
464 static FORCEINLINE HRESULT IWbemPropertyProvider_QueryInterface(IWbemPropertyProvider* This,REFIID riid,void **ppvObject) {
465     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
466 }
467 static FORCEINLINE ULONG IWbemPropertyProvider_AddRef(IWbemPropertyProvider* This) {
468     return This->lpVtbl->AddRef(This);
469 }
470 static FORCEINLINE ULONG IWbemPropertyProvider_Release(IWbemPropertyProvider* This) {
471     return This->lpVtbl->Release(This);
472 }
473 /*** IWbemPropertyProvider methods ***/
474 static FORCEINLINE HRESULT IWbemPropertyProvider_GetProperty(IWbemPropertyProvider* This,LONG lFlags,const BSTR strLocale,const BSTR strClassMapping,const BSTR strInstMapping,const BSTR strPropMapping,VARIANT *pvValue) {
475     return This->lpVtbl->GetProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue);
476 }
477 static FORCEINLINE HRESULT IWbemPropertyProvider_PutProperty(IWbemPropertyProvider* This,LONG lFlags,const BSTR strLocale,const BSTR strClassMapping,const BSTR strInstMapping,const BSTR strPropMapping,const VARIANT *pvValue) {
478     return This->lpVtbl->PutProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue);
479 }
480 #endif
481 #endif
482 
483 #endif
484 
485 HRESULT STDMETHODCALLTYPE IWbemPropertyProvider_GetProperty_Proxy(
486     IWbemPropertyProvider* This,
487     LONG lFlags,
488     const BSTR strLocale,
489     const BSTR strClassMapping,
490     const BSTR strInstMapping,
491     const BSTR strPropMapping,
492     VARIANT *pvValue);
493 void __RPC_STUB IWbemPropertyProvider_GetProperty_Stub(
494     IRpcStubBuffer* This,
495     IRpcChannelBuffer* pRpcChannelBuffer,
496     PRPC_MESSAGE pRpcMessage,
497     DWORD* pdwStubPhase);
498 HRESULT STDMETHODCALLTYPE IWbemPropertyProvider_PutProperty_Proxy(
499     IWbemPropertyProvider* This,
500     LONG lFlags,
501     const BSTR strLocale,
502     const BSTR strClassMapping,
503     const BSTR strInstMapping,
504     const BSTR strPropMapping,
505     const VARIANT *pvValue);
506 void __RPC_STUB IWbemPropertyProvider_PutProperty_Stub(
507     IRpcStubBuffer* This,
508     IRpcChannelBuffer* pRpcChannelBuffer,
509     PRPC_MESSAGE pRpcMessage,
510     DWORD* pdwStubPhase);
511 
512 #endif  /* __IWbemPropertyProvider_INTERFACE_DEFINED__ */
513 
514 /*****************************************************************************
515  * IWbemEventProvider interface
516  */
517 #ifndef __IWbemEventProvider_INTERFACE_DEFINED__
518 #define __IWbemEventProvider_INTERFACE_DEFINED__
519 
520 DEFINE_GUID(IID_IWbemEventProvider, 0xe245105b, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
521 #if defined(__cplusplus) && !defined(CINTERFACE)
522 MIDL_INTERFACE("e245105b-b06e-11d0-ad61-00c04fd8fdff")
523 IWbemEventProvider : public IUnknown
524 {
525     virtual HRESULT STDMETHODCALLTYPE ProvideEvents(
526         IWbemObjectSink *pSink,
527         LONG lFlags) = 0;
528 
529 };
530 #ifdef __CRT_UUID_DECL
531 __CRT_UUID_DECL(IWbemEventProvider, 0xe245105b, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
532 #endif
533 #else
534 typedef struct IWbemEventProviderVtbl {
535     BEGIN_INTERFACE
536 
537     /*** IUnknown methods ***/
538     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
539         IWbemEventProvider* This,
540         REFIID riid,
541         void **ppvObject);
542 
543     ULONG (STDMETHODCALLTYPE *AddRef)(
544         IWbemEventProvider* This);
545 
546     ULONG (STDMETHODCALLTYPE *Release)(
547         IWbemEventProvider* This);
548 
549     /*** IWbemEventProvider methods ***/
550     HRESULT (STDMETHODCALLTYPE *ProvideEvents)(
551         IWbemEventProvider* This,
552         IWbemObjectSink *pSink,
553         LONG lFlags);
554 
555     END_INTERFACE
556 } IWbemEventProviderVtbl;
557 interface IWbemEventProvider {
558     CONST_VTBL IWbemEventProviderVtbl* lpVtbl;
559 };
560 
561 #ifdef COBJMACROS
562 #ifndef WIDL_C_INLINE_WRAPPERS
563 /*** IUnknown methods ***/
564 #define IWbemEventProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
565 #define IWbemEventProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
566 #define IWbemEventProvider_Release(This) (This)->lpVtbl->Release(This)
567 /*** IWbemEventProvider methods ***/
568 #define IWbemEventProvider_ProvideEvents(This,pSink,lFlags) (This)->lpVtbl->ProvideEvents(This,pSink,lFlags)
569 #else
570 /*** IUnknown methods ***/
571 static FORCEINLINE HRESULT IWbemEventProvider_QueryInterface(IWbemEventProvider* This,REFIID riid,void **ppvObject) {
572     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
573 }
574 static FORCEINLINE ULONG IWbemEventProvider_AddRef(IWbemEventProvider* This) {
575     return This->lpVtbl->AddRef(This);
576 }
577 static FORCEINLINE ULONG IWbemEventProvider_Release(IWbemEventProvider* This) {
578     return This->lpVtbl->Release(This);
579 }
580 /*** IWbemEventProvider methods ***/
581 static FORCEINLINE HRESULT IWbemEventProvider_ProvideEvents(IWbemEventProvider* This,IWbemObjectSink *pSink,LONG lFlags) {
582     return This->lpVtbl->ProvideEvents(This,pSink,lFlags);
583 }
584 #endif
585 #endif
586 
587 #endif
588 
589 HRESULT STDMETHODCALLTYPE IWbemEventProvider_ProvideEvents_Proxy(
590     IWbemEventProvider* This,
591     IWbemObjectSink *pSink,
592     LONG lFlags);
593 void __RPC_STUB IWbemEventProvider_ProvideEvents_Stub(
594     IRpcStubBuffer* This,
595     IRpcChannelBuffer* pRpcChannelBuffer,
596     PRPC_MESSAGE pRpcMessage,
597     DWORD* pdwStubPhase);
598 
599 #endif  /* __IWbemEventProvider_INTERFACE_DEFINED__ */
600 
601 /*****************************************************************************
602  * IWbemEventProviderQuerySink interface
603  */
604 #ifndef __IWbemEventProviderQuerySink_INTERFACE_DEFINED__
605 #define __IWbemEventProviderQuerySink_INTERFACE_DEFINED__
606 
607 DEFINE_GUID(IID_IWbemEventProviderQuerySink, 0x580acaf8, 0xfa1c, 0x11d0, 0xad,0x72, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
608 #if defined(__cplusplus) && !defined(CINTERFACE)
609 MIDL_INTERFACE("580acaf8-fa1c-11d0-ad72-00c04fd8fdff")
610 IWbemEventProviderQuerySink : public IUnknown
611 {
612     virtual HRESULT STDMETHODCALLTYPE NewQuery(
613         ULONG dwId,
614         WBEM_WSTR wszQueryLanguage,
615         WBEM_WSTR wszQuery) = 0;
616 
617     virtual HRESULT STDMETHODCALLTYPE CancelQuery(
618         ULONG dwId) = 0;
619 
620 };
621 #ifdef __CRT_UUID_DECL
622 __CRT_UUID_DECL(IWbemEventProviderQuerySink, 0x580acaf8, 0xfa1c, 0x11d0, 0xad,0x72, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
623 #endif
624 #else
625 typedef struct IWbemEventProviderQuerySinkVtbl {
626     BEGIN_INTERFACE
627 
628     /*** IUnknown methods ***/
629     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
630         IWbemEventProviderQuerySink* This,
631         REFIID riid,
632         void **ppvObject);
633 
634     ULONG (STDMETHODCALLTYPE *AddRef)(
635         IWbemEventProviderQuerySink* This);
636 
637     ULONG (STDMETHODCALLTYPE *Release)(
638         IWbemEventProviderQuerySink* This);
639 
640     /*** IWbemEventProviderQuerySink methods ***/
641     HRESULT (STDMETHODCALLTYPE *NewQuery)(
642         IWbemEventProviderQuerySink* This,
643         ULONG dwId,
644         WBEM_WSTR wszQueryLanguage,
645         WBEM_WSTR wszQuery);
646 
647     HRESULT (STDMETHODCALLTYPE *CancelQuery)(
648         IWbemEventProviderQuerySink* This,
649         ULONG dwId);
650 
651     END_INTERFACE
652 } IWbemEventProviderQuerySinkVtbl;
653 interface IWbemEventProviderQuerySink {
654     CONST_VTBL IWbemEventProviderQuerySinkVtbl* lpVtbl;
655 };
656 
657 #ifdef COBJMACROS
658 #ifndef WIDL_C_INLINE_WRAPPERS
659 /*** IUnknown methods ***/
660 #define IWbemEventProviderQuerySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
661 #define IWbemEventProviderQuerySink_AddRef(This) (This)->lpVtbl->AddRef(This)
662 #define IWbemEventProviderQuerySink_Release(This) (This)->lpVtbl->Release(This)
663 /*** IWbemEventProviderQuerySink methods ***/
664 #define IWbemEventProviderQuerySink_NewQuery(This,dwId,wszQueryLanguage,wszQuery) (This)->lpVtbl->NewQuery(This,dwId,wszQueryLanguage,wszQuery)
665 #define IWbemEventProviderQuerySink_CancelQuery(This,dwId) (This)->lpVtbl->CancelQuery(This,dwId)
666 #else
667 /*** IUnknown methods ***/
668 static FORCEINLINE HRESULT IWbemEventProviderQuerySink_QueryInterface(IWbemEventProviderQuerySink* This,REFIID riid,void **ppvObject) {
669     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
670 }
671 static FORCEINLINE ULONG IWbemEventProviderQuerySink_AddRef(IWbemEventProviderQuerySink* This) {
672     return This->lpVtbl->AddRef(This);
673 }
674 static FORCEINLINE ULONG IWbemEventProviderQuerySink_Release(IWbemEventProviderQuerySink* This) {
675     return This->lpVtbl->Release(This);
676 }
677 /*** IWbemEventProviderQuerySink methods ***/
678 static FORCEINLINE HRESULT IWbemEventProviderQuerySink_NewQuery(IWbemEventProviderQuerySink* This,ULONG dwId,WBEM_WSTR wszQueryLanguage,WBEM_WSTR wszQuery) {
679     return This->lpVtbl->NewQuery(This,dwId,wszQueryLanguage,wszQuery);
680 }
681 static FORCEINLINE HRESULT IWbemEventProviderQuerySink_CancelQuery(IWbemEventProviderQuerySink* This,ULONG dwId) {
682     return This->lpVtbl->CancelQuery(This,dwId);
683 }
684 #endif
685 #endif
686 
687 #endif
688 
689 HRESULT STDMETHODCALLTYPE IWbemEventProviderQuerySink_NewQuery_Proxy(
690     IWbemEventProviderQuerySink* This,
691     ULONG dwId,
692     WBEM_WSTR wszQueryLanguage,
693     WBEM_WSTR wszQuery);
694 void __RPC_STUB IWbemEventProviderQuerySink_NewQuery_Stub(
695     IRpcStubBuffer* This,
696     IRpcChannelBuffer* pRpcChannelBuffer,
697     PRPC_MESSAGE pRpcMessage,
698     DWORD* pdwStubPhase);
699 HRESULT STDMETHODCALLTYPE IWbemEventProviderQuerySink_CancelQuery_Proxy(
700     IWbemEventProviderQuerySink* This,
701     ULONG dwId);
702 void __RPC_STUB IWbemEventProviderQuerySink_CancelQuery_Stub(
703     IRpcStubBuffer* This,
704     IRpcChannelBuffer* pRpcChannelBuffer,
705     PRPC_MESSAGE pRpcMessage,
706     DWORD* pdwStubPhase);
707 
708 #endif  /* __IWbemEventProviderQuerySink_INTERFACE_DEFINED__ */
709 
710 /*****************************************************************************
711  * IWbemEventProviderSecurity interface
712  */
713 #ifndef __IWbemEventProviderSecurity_INTERFACE_DEFINED__
714 #define __IWbemEventProviderSecurity_INTERFACE_DEFINED__
715 
716 DEFINE_GUID(IID_IWbemEventProviderSecurity, 0x631f7d96, 0xd993, 0x11d2, 0xb3,0x39, 0x00,0x10,0x5a,0x1f,0x4a,0xaf);
717 #if defined(__cplusplus) && !defined(CINTERFACE)
718 MIDL_INTERFACE("631f7d96-d993-11d2-b339-00105a1f4aaf")
719 IWbemEventProviderSecurity : public IUnknown
720 {
721     virtual HRESULT STDMETHODCALLTYPE AccessCheck(
722         WBEM_CWSTR wszQueryLanguage,
723         WBEM_CWSTR wszQuery,
724         LONG lSidLength,
725         const BYTE *pSid) = 0;
726 
727 };
728 #ifdef __CRT_UUID_DECL
729 __CRT_UUID_DECL(IWbemEventProviderSecurity, 0x631f7d96, 0xd993, 0x11d2, 0xb3,0x39, 0x00,0x10,0x5a,0x1f,0x4a,0xaf)
730 #endif
731 #else
732 typedef struct IWbemEventProviderSecurityVtbl {
733     BEGIN_INTERFACE
734 
735     /*** IUnknown methods ***/
736     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
737         IWbemEventProviderSecurity* This,
738         REFIID riid,
739         void **ppvObject);
740 
741     ULONG (STDMETHODCALLTYPE *AddRef)(
742         IWbemEventProviderSecurity* This);
743 
744     ULONG (STDMETHODCALLTYPE *Release)(
745         IWbemEventProviderSecurity* This);
746 
747     /*** IWbemEventProviderSecurity methods ***/
748     HRESULT (STDMETHODCALLTYPE *AccessCheck)(
749         IWbemEventProviderSecurity* This,
750         WBEM_CWSTR wszQueryLanguage,
751         WBEM_CWSTR wszQuery,
752         LONG lSidLength,
753         const BYTE *pSid);
754 
755     END_INTERFACE
756 } IWbemEventProviderSecurityVtbl;
757 interface IWbemEventProviderSecurity {
758     CONST_VTBL IWbemEventProviderSecurityVtbl* lpVtbl;
759 };
760 
761 #ifdef COBJMACROS
762 #ifndef WIDL_C_INLINE_WRAPPERS
763 /*** IUnknown methods ***/
764 #define IWbemEventProviderSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
765 #define IWbemEventProviderSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
766 #define IWbemEventProviderSecurity_Release(This) (This)->lpVtbl->Release(This)
767 /*** IWbemEventProviderSecurity methods ***/
768 #define IWbemEventProviderSecurity_AccessCheck(This,wszQueryLanguage,wszQuery,lSidLength,pSid) (This)->lpVtbl->AccessCheck(This,wszQueryLanguage,wszQuery,lSidLength,pSid)
769 #else
770 /*** IUnknown methods ***/
771 static FORCEINLINE HRESULT IWbemEventProviderSecurity_QueryInterface(IWbemEventProviderSecurity* This,REFIID riid,void **ppvObject) {
772     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
773 }
774 static FORCEINLINE ULONG IWbemEventProviderSecurity_AddRef(IWbemEventProviderSecurity* This) {
775     return This->lpVtbl->AddRef(This);
776 }
777 static FORCEINLINE ULONG IWbemEventProviderSecurity_Release(IWbemEventProviderSecurity* This) {
778     return This->lpVtbl->Release(This);
779 }
780 /*** IWbemEventProviderSecurity methods ***/
781 static FORCEINLINE HRESULT IWbemEventProviderSecurity_AccessCheck(IWbemEventProviderSecurity* This,WBEM_CWSTR wszQueryLanguage,WBEM_CWSTR wszQuery,LONG lSidLength,const BYTE *pSid) {
782     return This->lpVtbl->AccessCheck(This,wszQueryLanguage,wszQuery,lSidLength,pSid);
783 }
784 #endif
785 #endif
786 
787 #endif
788 
789 HRESULT STDMETHODCALLTYPE IWbemEventProviderSecurity_AccessCheck_Proxy(
790     IWbemEventProviderSecurity* This,
791     WBEM_CWSTR wszQueryLanguage,
792     WBEM_CWSTR wszQuery,
793     LONG lSidLength,
794     const BYTE *pSid);
795 void __RPC_STUB IWbemEventProviderSecurity_AccessCheck_Stub(
796     IRpcStubBuffer* This,
797     IRpcChannelBuffer* pRpcChannelBuffer,
798     PRPC_MESSAGE pRpcMessage,
799     DWORD* pdwStubPhase);
800 
801 #endif  /* __IWbemEventProviderSecurity_INTERFACE_DEFINED__ */
802 
803 /*****************************************************************************
804  * IWbemProviderIdentity interface
805  */
806 #ifndef __IWbemProviderIdentity_INTERFACE_DEFINED__
807 #define __IWbemProviderIdentity_INTERFACE_DEFINED__
808 
809 DEFINE_GUID(IID_IWbemProviderIdentity, 0x631f7d97, 0xd993, 0x11d2, 0xb3,0x39, 0x00,0x10,0x5a,0x1f,0x4a,0xaf);
810 #if defined(__cplusplus) && !defined(CINTERFACE)
811 MIDL_INTERFACE("631f7d97-d993-11d2-b339-00105a1f4aaf")
812 IWbemProviderIdentity : public IUnknown
813 {
814     virtual HRESULT STDMETHODCALLTYPE SetRegistrationObject(
815         LONG lFlags,
816         IWbemClassObject *pProvReg) = 0;
817 
818 };
819 #ifdef __CRT_UUID_DECL
820 __CRT_UUID_DECL(IWbemProviderIdentity, 0x631f7d97, 0xd993, 0x11d2, 0xb3,0x39, 0x00,0x10,0x5a,0x1f,0x4a,0xaf)
821 #endif
822 #else
823 typedef struct IWbemProviderIdentityVtbl {
824     BEGIN_INTERFACE
825 
826     /*** IUnknown methods ***/
827     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
828         IWbemProviderIdentity* This,
829         REFIID riid,
830         void **ppvObject);
831 
832     ULONG (STDMETHODCALLTYPE *AddRef)(
833         IWbemProviderIdentity* This);
834 
835     ULONG (STDMETHODCALLTYPE *Release)(
836         IWbemProviderIdentity* This);
837 
838     /*** IWbemProviderIdentity methods ***/
839     HRESULT (STDMETHODCALLTYPE *SetRegistrationObject)(
840         IWbemProviderIdentity* This,
841         LONG lFlags,
842         IWbemClassObject *pProvReg);
843 
844     END_INTERFACE
845 } IWbemProviderIdentityVtbl;
846 interface IWbemProviderIdentity {
847     CONST_VTBL IWbemProviderIdentityVtbl* lpVtbl;
848 };
849 
850 #ifdef COBJMACROS
851 #ifndef WIDL_C_INLINE_WRAPPERS
852 /*** IUnknown methods ***/
853 #define IWbemProviderIdentity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
854 #define IWbemProviderIdentity_AddRef(This) (This)->lpVtbl->AddRef(This)
855 #define IWbemProviderIdentity_Release(This) (This)->lpVtbl->Release(This)
856 /*** IWbemProviderIdentity methods ***/
857 #define IWbemProviderIdentity_SetRegistrationObject(This,lFlags,pProvReg) (This)->lpVtbl->SetRegistrationObject(This,lFlags,pProvReg)
858 #else
859 /*** IUnknown methods ***/
860 static FORCEINLINE HRESULT IWbemProviderIdentity_QueryInterface(IWbemProviderIdentity* This,REFIID riid,void **ppvObject) {
861     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
862 }
863 static FORCEINLINE ULONG IWbemProviderIdentity_AddRef(IWbemProviderIdentity* This) {
864     return This->lpVtbl->AddRef(This);
865 }
866 static FORCEINLINE ULONG IWbemProviderIdentity_Release(IWbemProviderIdentity* This) {
867     return This->lpVtbl->Release(This);
868 }
869 /*** IWbemProviderIdentity methods ***/
870 static FORCEINLINE HRESULT IWbemProviderIdentity_SetRegistrationObject(IWbemProviderIdentity* This,LONG lFlags,IWbemClassObject *pProvReg) {
871     return This->lpVtbl->SetRegistrationObject(This,lFlags,pProvReg);
872 }
873 #endif
874 #endif
875 
876 #endif
877 
878 HRESULT STDMETHODCALLTYPE IWbemProviderIdentity_SetRegistrationObject_Proxy(
879     IWbemProviderIdentity* This,
880     LONG lFlags,
881     IWbemClassObject *pProvReg);
882 void __RPC_STUB IWbemProviderIdentity_SetRegistrationObject_Stub(
883     IRpcStubBuffer* This,
884     IRpcChannelBuffer* pRpcChannelBuffer,
885     PRPC_MESSAGE pRpcMessage,
886     DWORD* pdwStubPhase);
887 
888 #endif  /* __IWbemProviderIdentity_INTERFACE_DEFINED__ */
889 
890 /*****************************************************************************
891  * IWbemEventConsumerProvider interface
892  */
893 #ifndef __IWbemEventConsumerProvider_INTERFACE_DEFINED__
894 #define __IWbemEventConsumerProvider_INTERFACE_DEFINED__
895 
896 DEFINE_GUID(IID_IWbemEventConsumerProvider, 0xe246107a, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff);
897 #if defined(__cplusplus) && !defined(CINTERFACE)
898 MIDL_INTERFACE("e246107a-b06e-11d0-ad61-00c04fd8fdff")
899 IWbemEventConsumerProvider : public IUnknown
900 {
901     virtual HRESULT STDMETHODCALLTYPE FindConsumer(
902         IWbemClassObject *pLogicalConsumer,
903         IWbemUnboundObjectSink **ppConsumer) = 0;
904 
905 };
906 #ifdef __CRT_UUID_DECL
907 __CRT_UUID_DECL(IWbemEventConsumerProvider, 0xe246107a, 0xb06e, 0x11d0, 0xad,0x61, 0x00,0xc0,0x4f,0xd8,0xfd,0xff)
908 #endif
909 #else
910 typedef struct IWbemEventConsumerProviderVtbl {
911     BEGIN_INTERFACE
912 
913     /*** IUnknown methods ***/
914     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
915         IWbemEventConsumerProvider* This,
916         REFIID riid,
917         void **ppvObject);
918 
919     ULONG (STDMETHODCALLTYPE *AddRef)(
920         IWbemEventConsumerProvider* This);
921 
922     ULONG (STDMETHODCALLTYPE *Release)(
923         IWbemEventConsumerProvider* This);
924 
925     /*** IWbemEventConsumerProvider methods ***/
926     HRESULT (STDMETHODCALLTYPE *FindConsumer)(
927         IWbemEventConsumerProvider* This,
928         IWbemClassObject *pLogicalConsumer,
929         IWbemUnboundObjectSink **ppConsumer);
930 
931     END_INTERFACE
932 } IWbemEventConsumerProviderVtbl;
933 interface IWbemEventConsumerProvider {
934     CONST_VTBL IWbemEventConsumerProviderVtbl* lpVtbl;
935 };
936 
937 #ifdef COBJMACROS
938 #ifndef WIDL_C_INLINE_WRAPPERS
939 /*** IUnknown methods ***/
940 #define IWbemEventConsumerProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
941 #define IWbemEventConsumerProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
942 #define IWbemEventConsumerProvider_Release(This) (This)->lpVtbl->Release(This)
943 /*** IWbemEventConsumerProvider methods ***/
944 #define IWbemEventConsumerProvider_FindConsumer(This,pLogicalConsumer,ppConsumer) (This)->lpVtbl->FindConsumer(This,pLogicalConsumer,ppConsumer)
945 #else
946 /*** IUnknown methods ***/
947 static FORCEINLINE HRESULT IWbemEventConsumerProvider_QueryInterface(IWbemEventConsumerProvider* This,REFIID riid,void **ppvObject) {
948     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
949 }
950 static FORCEINLINE ULONG IWbemEventConsumerProvider_AddRef(IWbemEventConsumerProvider* This) {
951     return This->lpVtbl->AddRef(This);
952 }
953 static FORCEINLINE ULONG IWbemEventConsumerProvider_Release(IWbemEventConsumerProvider* This) {
954     return This->lpVtbl->Release(This);
955 }
956 /*** IWbemEventConsumerProvider methods ***/
957 static FORCEINLINE HRESULT IWbemEventConsumerProvider_FindConsumer(IWbemEventConsumerProvider* This,IWbemClassObject *pLogicalConsumer,IWbemUnboundObjectSink **ppConsumer) {
958     return This->lpVtbl->FindConsumer(This,pLogicalConsumer,ppConsumer);
959 }
960 #endif
961 #endif
962 
963 #endif
964 
965 HRESULT STDMETHODCALLTYPE IWbemEventConsumerProvider_FindConsumer_Proxy(
966     IWbemEventConsumerProvider* This,
967     IWbemClassObject *pLogicalConsumer,
968     IWbemUnboundObjectSink **ppConsumer);
969 void __RPC_STUB IWbemEventConsumerProvider_FindConsumer_Stub(
970     IRpcStubBuffer* This,
971     IRpcChannelBuffer* pRpcChannelBuffer,
972     PRPC_MESSAGE pRpcMessage,
973     DWORD* pdwStubPhase);
974 
975 #endif  /* __IWbemEventConsumerProvider_INTERFACE_DEFINED__ */
976 
977 /*****************************************************************************
978  * IWbemProviderInitSink interface
979  */
980 #ifndef __IWbemProviderInitSink_INTERFACE_DEFINED__
981 #define __IWbemProviderInitSink_INTERFACE_DEFINED__
982 
983 DEFINE_GUID(IID_IWbemProviderInitSink, 0x1be41571, 0x91dd, 0x11d1, 0xae,0xb2, 0x00,0xc0,0x4f,0xb6,0x88,0x20);
984 #if defined(__cplusplus) && !defined(CINTERFACE)
985 MIDL_INTERFACE("1be41571-91dd-11d1-aeb2-00c04fb68820")
986 IWbemProviderInitSink : public IUnknown
987 {
988     virtual HRESULT STDMETHODCALLTYPE SetStatus(
989         LONG lStatus,
990         LONG lFlags) = 0;
991 
992 };
993 #ifdef __CRT_UUID_DECL
994 __CRT_UUID_DECL(IWbemProviderInitSink, 0x1be41571, 0x91dd, 0x11d1, 0xae,0xb2, 0x00,0xc0,0x4f,0xb6,0x88,0x20)
995 #endif
996 #else
997 typedef struct IWbemProviderInitSinkVtbl {
998     BEGIN_INTERFACE
999 
1000     /*** IUnknown methods ***/
1001     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1002         IWbemProviderInitSink* This,
1003         REFIID riid,
1004         void **ppvObject);
1005 
1006     ULONG (STDMETHODCALLTYPE *AddRef)(
1007         IWbemProviderInitSink* This);
1008 
1009     ULONG (STDMETHODCALLTYPE *Release)(
1010         IWbemProviderInitSink* This);
1011 
1012     /*** IWbemProviderInitSink methods ***/
1013     HRESULT (STDMETHODCALLTYPE *SetStatus)(
1014         IWbemProviderInitSink* This,
1015         LONG lStatus,
1016         LONG lFlags);
1017 
1018     END_INTERFACE
1019 } IWbemProviderInitSinkVtbl;
1020 interface IWbemProviderInitSink {
1021     CONST_VTBL IWbemProviderInitSinkVtbl* lpVtbl;
1022 };
1023 
1024 #ifdef COBJMACROS
1025 #ifndef WIDL_C_INLINE_WRAPPERS
1026 /*** IUnknown methods ***/
1027 #define IWbemProviderInitSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1028 #define IWbemProviderInitSink_AddRef(This) (This)->lpVtbl->AddRef(This)
1029 #define IWbemProviderInitSink_Release(This) (This)->lpVtbl->Release(This)
1030 /*** IWbemProviderInitSink methods ***/
1031 #define IWbemProviderInitSink_SetStatus(This,lStatus,lFlags) (This)->lpVtbl->SetStatus(This,lStatus,lFlags)
1032 #else
1033 /*** IUnknown methods ***/
1034 static FORCEINLINE HRESULT IWbemProviderInitSink_QueryInterface(IWbemProviderInitSink* This,REFIID riid,void **ppvObject) {
1035     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1036 }
1037 static FORCEINLINE ULONG IWbemProviderInitSink_AddRef(IWbemProviderInitSink* This) {
1038     return This->lpVtbl->AddRef(This);
1039 }
1040 static FORCEINLINE ULONG IWbemProviderInitSink_Release(IWbemProviderInitSink* This) {
1041     return This->lpVtbl->Release(This);
1042 }
1043 /*** IWbemProviderInitSink methods ***/
1044 static FORCEINLINE HRESULT IWbemProviderInitSink_SetStatus(IWbemProviderInitSink* This,LONG lStatus,LONG lFlags) {
1045     return This->lpVtbl->SetStatus(This,lStatus,lFlags);
1046 }
1047 #endif
1048 #endif
1049 
1050 #endif
1051 
1052 HRESULT STDMETHODCALLTYPE IWbemProviderInitSink_SetStatus_Proxy(
1053     IWbemProviderInitSink* This,
1054     LONG lStatus,
1055     LONG lFlags);
1056 void __RPC_STUB IWbemProviderInitSink_SetStatus_Stub(
1057     IRpcStubBuffer* This,
1058     IRpcChannelBuffer* pRpcChannelBuffer,
1059     PRPC_MESSAGE pRpcMessage,
1060     DWORD* pdwStubPhase);
1061 
1062 #endif  /* __IWbemProviderInitSink_INTERFACE_DEFINED__ */
1063 
1064 /*****************************************************************************
1065  * IWbemProviderInit interface
1066  */
1067 #ifndef __IWbemProviderInit_INTERFACE_DEFINED__
1068 #define __IWbemProviderInit_INTERFACE_DEFINED__
1069 
1070 DEFINE_GUID(IID_IWbemProviderInit, 0x1be41572, 0x91dd, 0x11d1, 0xae,0xb2, 0x00,0xc0,0x4f,0xb6,0x88,0x20);
1071 #if defined(__cplusplus) && !defined(CINTERFACE)
1072 MIDL_INTERFACE("1be41572-91dd-11d1-aeb2-00c04fb68820")
1073 IWbemProviderInit : public IUnknown
1074 {
1075     virtual HRESULT STDMETHODCALLTYPE Initialize(
1076         LPWSTR wszUser,
1077         LONG lFlags,
1078         LPWSTR wszNamespace,
1079         LPWSTR wszLocale,
1080         IWbemServices *pNamespace,
1081         IWbemContext *pCtx,
1082         IWbemProviderInitSink *pInitSink) = 0;
1083 
1084 };
1085 #ifdef __CRT_UUID_DECL
1086 __CRT_UUID_DECL(IWbemProviderInit, 0x1be41572, 0x91dd, 0x11d1, 0xae,0xb2, 0x00,0xc0,0x4f,0xb6,0x88,0x20)
1087 #endif
1088 #else
1089 typedef struct IWbemProviderInitVtbl {
1090     BEGIN_INTERFACE
1091 
1092     /*** IUnknown methods ***/
1093     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1094         IWbemProviderInit* This,
1095         REFIID riid,
1096         void **ppvObject);
1097 
1098     ULONG (STDMETHODCALLTYPE *AddRef)(
1099         IWbemProviderInit* This);
1100 
1101     ULONG (STDMETHODCALLTYPE *Release)(
1102         IWbemProviderInit* This);
1103 
1104     /*** IWbemProviderInit methods ***/
1105     HRESULT (STDMETHODCALLTYPE *Initialize)(
1106         IWbemProviderInit* This,
1107         LPWSTR wszUser,
1108         LONG lFlags,
1109         LPWSTR wszNamespace,
1110         LPWSTR wszLocale,
1111         IWbemServices *pNamespace,
1112         IWbemContext *pCtx,
1113         IWbemProviderInitSink *pInitSink);
1114 
1115     END_INTERFACE
1116 } IWbemProviderInitVtbl;
1117 interface IWbemProviderInit {
1118     CONST_VTBL IWbemProviderInitVtbl* lpVtbl;
1119 };
1120 
1121 #ifdef COBJMACROS
1122 #ifndef WIDL_C_INLINE_WRAPPERS
1123 /*** IUnknown methods ***/
1124 #define IWbemProviderInit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1125 #define IWbemProviderInit_AddRef(This) (This)->lpVtbl->AddRef(This)
1126 #define IWbemProviderInit_Release(This) (This)->lpVtbl->Release(This)
1127 /*** IWbemProviderInit methods ***/
1128 #define IWbemProviderInit_Initialize(This,wszUser,lFlags,wszNamespace,wszLocale,pNamespace,pCtx,pInitSink) (This)->lpVtbl->Initialize(This,wszUser,lFlags,wszNamespace,wszLocale,pNamespace,pCtx,pInitSink)
1129 #else
1130 /*** IUnknown methods ***/
1131 static FORCEINLINE HRESULT IWbemProviderInit_QueryInterface(IWbemProviderInit* This,REFIID riid,void **ppvObject) {
1132     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1133 }
1134 static FORCEINLINE ULONG IWbemProviderInit_AddRef(IWbemProviderInit* This) {
1135     return This->lpVtbl->AddRef(This);
1136 }
1137 static FORCEINLINE ULONG IWbemProviderInit_Release(IWbemProviderInit* This) {
1138     return This->lpVtbl->Release(This);
1139 }
1140 /*** IWbemProviderInit methods ***/
1141 static FORCEINLINE HRESULT IWbemProviderInit_Initialize(IWbemProviderInit* This,LPWSTR wszUser,LONG lFlags,LPWSTR wszNamespace,LPWSTR wszLocale,IWbemServices *pNamespace,IWbemContext *pCtx,IWbemProviderInitSink *pInitSink) {
1142     return This->lpVtbl->Initialize(This,wszUser,lFlags,wszNamespace,wszLocale,pNamespace,pCtx,pInitSink);
1143 }
1144 #endif
1145 #endif
1146 
1147 #endif
1148 
1149 HRESULT STDMETHODCALLTYPE IWbemProviderInit_Initialize_Proxy(
1150     IWbemProviderInit* This,
1151     LPWSTR wszUser,
1152     LONG lFlags,
1153     LPWSTR wszNamespace,
1154     LPWSTR wszLocale,
1155     IWbemServices *pNamespace,
1156     IWbemContext *pCtx,
1157     IWbemProviderInitSink *pInitSink);
1158 void __RPC_STUB IWbemProviderInit_Initialize_Stub(
1159     IRpcStubBuffer* This,
1160     IRpcChannelBuffer* pRpcChannelBuffer,
1161     PRPC_MESSAGE pRpcMessage,
1162     DWORD* pdwStubPhase);
1163 
1164 #endif  /* __IWbemProviderInit_INTERFACE_DEFINED__ */
1165 
1166 /*****************************************************************************
1167  * IWbemHiPerfProvider interface
1168  */
1169 #ifndef __IWbemHiPerfProvider_INTERFACE_DEFINED__
1170 #define __IWbemHiPerfProvider_INTERFACE_DEFINED__
1171 
1172 DEFINE_GUID(IID_IWbemHiPerfProvider, 0x49353c93, 0x516b, 0x11d1, 0xae,0xa6, 0x00,0xc0,0x4f,0xb6,0x88,0x20);
1173 #if defined(__cplusplus) && !defined(CINTERFACE)
1174 MIDL_INTERFACE("49353c93-516b-11d1-aea6-00c04fb68820")
1175 IWbemHiPerfProvider : public IUnknown
1176 {
1177     virtual HRESULT STDMETHODCALLTYPE QueryInstances(
1178         IWbemServices *pNamespace,
1179         WCHAR *wszClass,
1180         LONG lFlags,
1181         IWbemContext *pCtx,
1182         IWbemObjectSink *pSink) = 0;
1183 
1184     virtual HRESULT STDMETHODCALLTYPE CreateRefresher(
1185         IWbemServices *pNamespace,
1186         LONG lFlags,
1187         IWbemRefresher **ppRefresher) = 0;
1188 
1189     virtual HRESULT STDMETHODCALLTYPE CreateRefreshableObject(
1190         IWbemServices *pNamespace,
1191         IWbemObjectAccess *pTemplate,
1192         IWbemRefresher *pRefresher,
1193         LONG lFlags,
1194         IWbemContext *pContext,
1195         IWbemObjectAccess **ppRefreshable,
1196         LONG *plId) = 0;
1197 
1198     virtual HRESULT STDMETHODCALLTYPE StopRefreshing(
1199         IWbemRefresher *pRefresher,
1200         LONG lId,
1201         LONG lFlags) = 0;
1202 
1203     virtual HRESULT STDMETHODCALLTYPE CreateRefreshableEnum(
1204         IWbemServices *pNamespace,
1205         LPCWSTR wszClass,
1206         IWbemRefresher *pRefresher,
1207         LONG lFlags,
1208         IWbemContext *pContext,
1209         IWbemHiPerfEnum *pHiPerfEnum,
1210         LONG *plId) = 0;
1211 
1212     virtual HRESULT STDMETHODCALLTYPE GetObjects(
1213         IWbemServices *pNamespace,
1214         LONG lNumObjects,
1215         IWbemObjectAccess **apObj,
1216         LONG lFlags,
1217         IWbemContext *pContext) = 0;
1218 
1219 };
1220 #ifdef __CRT_UUID_DECL
1221 __CRT_UUID_DECL(IWbemHiPerfProvider, 0x49353c93, 0x516b, 0x11d1, 0xae,0xa6, 0x00,0xc0,0x4f,0xb6,0x88,0x20)
1222 #endif
1223 #else
1224 typedef struct IWbemHiPerfProviderVtbl {
1225     BEGIN_INTERFACE
1226 
1227     /*** IUnknown methods ***/
1228     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1229         IWbemHiPerfProvider* This,
1230         REFIID riid,
1231         void **ppvObject);
1232 
1233     ULONG (STDMETHODCALLTYPE *AddRef)(
1234         IWbemHiPerfProvider* This);
1235 
1236     ULONG (STDMETHODCALLTYPE *Release)(
1237         IWbemHiPerfProvider* This);
1238 
1239     /*** IWbemHiPerfProvider methods ***/
1240     HRESULT (STDMETHODCALLTYPE *QueryInstances)(
1241         IWbemHiPerfProvider* This,
1242         IWbemServices *pNamespace,
1243         WCHAR *wszClass,
1244         LONG lFlags,
1245         IWbemContext *pCtx,
1246         IWbemObjectSink *pSink);
1247 
1248     HRESULT (STDMETHODCALLTYPE *CreateRefresher)(
1249         IWbemHiPerfProvider* This,
1250         IWbemServices *pNamespace,
1251         LONG lFlags,
1252         IWbemRefresher **ppRefresher);
1253 
1254     HRESULT (STDMETHODCALLTYPE *CreateRefreshableObject)(
1255         IWbemHiPerfProvider* This,
1256         IWbemServices *pNamespace,
1257         IWbemObjectAccess *pTemplate,
1258         IWbemRefresher *pRefresher,
1259         LONG lFlags,
1260         IWbemContext *pContext,
1261         IWbemObjectAccess **ppRefreshable,
1262         LONG *plId);
1263 
1264     HRESULT (STDMETHODCALLTYPE *StopRefreshing)(
1265         IWbemHiPerfProvider* This,
1266         IWbemRefresher *pRefresher,
1267         LONG lId,
1268         LONG lFlags);
1269 
1270     HRESULT (STDMETHODCALLTYPE *CreateRefreshableEnum)(
1271         IWbemHiPerfProvider* This,
1272         IWbemServices *pNamespace,
1273         LPCWSTR wszClass,
1274         IWbemRefresher *pRefresher,
1275         LONG lFlags,
1276         IWbemContext *pContext,
1277         IWbemHiPerfEnum *pHiPerfEnum,
1278         LONG *plId);
1279 
1280     HRESULT (STDMETHODCALLTYPE *GetObjects)(
1281         IWbemHiPerfProvider* This,
1282         IWbemServices *pNamespace,
1283         LONG lNumObjects,
1284         IWbemObjectAccess **apObj,
1285         LONG lFlags,
1286         IWbemContext *pContext);
1287 
1288     END_INTERFACE
1289 } IWbemHiPerfProviderVtbl;
1290 interface IWbemHiPerfProvider {
1291     CONST_VTBL IWbemHiPerfProviderVtbl* lpVtbl;
1292 };
1293 
1294 #ifdef COBJMACROS
1295 #ifndef WIDL_C_INLINE_WRAPPERS
1296 /*** IUnknown methods ***/
1297 #define IWbemHiPerfProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1298 #define IWbemHiPerfProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
1299 #define IWbemHiPerfProvider_Release(This) (This)->lpVtbl->Release(This)
1300 /*** IWbemHiPerfProvider methods ***/
1301 #define IWbemHiPerfProvider_QueryInstances(This,pNamespace,wszClass,lFlags,pCtx,pSink) (This)->lpVtbl->QueryInstances(This,pNamespace,wszClass,lFlags,pCtx,pSink)
1302 #define IWbemHiPerfProvider_CreateRefresher(This,pNamespace,lFlags,ppRefresher) (This)->lpVtbl->CreateRefresher(This,pNamespace,lFlags,ppRefresher)
1303 #define IWbemHiPerfProvider_CreateRefreshableObject(This,pNamespace,pTemplate,pRefresher,lFlags,pContext,ppRefreshable,plId) (This)->lpVtbl->CreateRefreshableObject(This,pNamespace,pTemplate,pRefresher,lFlags,pContext,ppRefreshable,plId)
1304 #define IWbemHiPerfProvider_StopRefreshing(This,pRefresher,lId,lFlags) (This)->lpVtbl->StopRefreshing(This,pRefresher,lId,lFlags)
1305 #define IWbemHiPerfProvider_CreateRefreshableEnum(This,pNamespace,wszClass,pRefresher,lFlags,pContext,pHiPerfEnum,plId) (This)->lpVtbl->CreateRefreshableEnum(This,pNamespace,wszClass,pRefresher,lFlags,pContext,pHiPerfEnum,plId)
1306 #define IWbemHiPerfProvider_GetObjects(This,pNamespace,lNumObjects,apObj,lFlags,pContext) (This)->lpVtbl->GetObjects(This,pNamespace,lNumObjects,apObj,lFlags,pContext)
1307 #else
1308 /*** IUnknown methods ***/
1309 static FORCEINLINE HRESULT IWbemHiPerfProvider_QueryInterface(IWbemHiPerfProvider* This,REFIID riid,void **ppvObject) {
1310     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1311 }
1312 static FORCEINLINE ULONG IWbemHiPerfProvider_AddRef(IWbemHiPerfProvider* This) {
1313     return This->lpVtbl->AddRef(This);
1314 }
1315 static FORCEINLINE ULONG IWbemHiPerfProvider_Release(IWbemHiPerfProvider* This) {
1316     return This->lpVtbl->Release(This);
1317 }
1318 /*** IWbemHiPerfProvider methods ***/
1319 static FORCEINLINE HRESULT IWbemHiPerfProvider_QueryInstances(IWbemHiPerfProvider* This,IWbemServices *pNamespace,WCHAR *wszClass,LONG lFlags,IWbemContext *pCtx,IWbemObjectSink *pSink) {
1320     return This->lpVtbl->QueryInstances(This,pNamespace,wszClass,lFlags,pCtx,pSink);
1321 }
1322 static FORCEINLINE HRESULT IWbemHiPerfProvider_CreateRefresher(IWbemHiPerfProvider* This,IWbemServices *pNamespace,LONG lFlags,IWbemRefresher **ppRefresher) {
1323     return This->lpVtbl->CreateRefresher(This,pNamespace,lFlags,ppRefresher);
1324 }
1325 static FORCEINLINE HRESULT IWbemHiPerfProvider_CreateRefreshableObject(IWbemHiPerfProvider* This,IWbemServices *pNamespace,IWbemObjectAccess *pTemplate,IWbemRefresher *pRefresher,LONG lFlags,IWbemContext *pContext,IWbemObjectAccess **ppRefreshable,LONG *plId) {
1326     return This->lpVtbl->CreateRefreshableObject(This,pNamespace,pTemplate,pRefresher,lFlags,pContext,ppRefreshable,plId);
1327 }
1328 static FORCEINLINE HRESULT IWbemHiPerfProvider_StopRefreshing(IWbemHiPerfProvider* This,IWbemRefresher *pRefresher,LONG lId,LONG lFlags) {
1329     return This->lpVtbl->StopRefreshing(This,pRefresher,lId,lFlags);
1330 }
1331 static FORCEINLINE HRESULT IWbemHiPerfProvider_CreateRefreshableEnum(IWbemHiPerfProvider* This,IWbemServices *pNamespace,LPCWSTR wszClass,IWbemRefresher *pRefresher,LONG lFlags,IWbemContext *pContext,IWbemHiPerfEnum *pHiPerfEnum,LONG *plId) {
1332     return This->lpVtbl->CreateRefreshableEnum(This,pNamespace,wszClass,pRefresher,lFlags,pContext,pHiPerfEnum,plId);
1333 }
1334 static FORCEINLINE HRESULT IWbemHiPerfProvider_GetObjects(IWbemHiPerfProvider* This,IWbemServices *pNamespace,LONG lNumObjects,IWbemObjectAccess **apObj,LONG lFlags,IWbemContext *pContext) {
1335     return This->lpVtbl->GetObjects(This,pNamespace,lNumObjects,apObj,lFlags,pContext);
1336 }
1337 #endif
1338 #endif
1339 
1340 #endif
1341 
1342 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_QueryInstances_Proxy(
1343     IWbemHiPerfProvider* This,
1344     IWbemServices *pNamespace,
1345     WCHAR *wszClass,
1346     LONG lFlags,
1347     IWbemContext *pCtx,
1348     IWbemObjectSink *pSink);
1349 void __RPC_STUB IWbemHiPerfProvider_QueryInstances_Stub(
1350     IRpcStubBuffer* This,
1351     IRpcChannelBuffer* pRpcChannelBuffer,
1352     PRPC_MESSAGE pRpcMessage,
1353     DWORD* pdwStubPhase);
1354 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefresher_Proxy(
1355     IWbemHiPerfProvider* This,
1356     IWbemServices *pNamespace,
1357     LONG lFlags,
1358     IWbemRefresher **ppRefresher);
1359 void __RPC_STUB IWbemHiPerfProvider_CreateRefresher_Stub(
1360     IRpcStubBuffer* This,
1361     IRpcChannelBuffer* pRpcChannelBuffer,
1362     PRPC_MESSAGE pRpcMessage,
1363     DWORD* pdwStubPhase);
1364 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefreshableObject_Proxy(
1365     IWbemHiPerfProvider* This,
1366     IWbemServices *pNamespace,
1367     IWbemObjectAccess *pTemplate,
1368     IWbemRefresher *pRefresher,
1369     LONG lFlags,
1370     IWbemContext *pContext,
1371     IWbemObjectAccess **ppRefreshable,
1372     LONG *plId);
1373 void __RPC_STUB IWbemHiPerfProvider_CreateRefreshableObject_Stub(
1374     IRpcStubBuffer* This,
1375     IRpcChannelBuffer* pRpcChannelBuffer,
1376     PRPC_MESSAGE pRpcMessage,
1377     DWORD* pdwStubPhase);
1378 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_StopRefreshing_Proxy(
1379     IWbemHiPerfProvider* This,
1380     IWbemRefresher *pRefresher,
1381     LONG lId,
1382     LONG lFlags);
1383 void __RPC_STUB IWbemHiPerfProvider_StopRefreshing_Stub(
1384     IRpcStubBuffer* This,
1385     IRpcChannelBuffer* pRpcChannelBuffer,
1386     PRPC_MESSAGE pRpcMessage,
1387     DWORD* pdwStubPhase);
1388 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefreshableEnum_Proxy(
1389     IWbemHiPerfProvider* This,
1390     IWbemServices *pNamespace,
1391     LPCWSTR wszClass,
1392     IWbemRefresher *pRefresher,
1393     LONG lFlags,
1394     IWbemContext *pContext,
1395     IWbemHiPerfEnum *pHiPerfEnum,
1396     LONG *plId);
1397 void __RPC_STUB IWbemHiPerfProvider_CreateRefreshableEnum_Stub(
1398     IRpcStubBuffer* This,
1399     IRpcChannelBuffer* pRpcChannelBuffer,
1400     PRPC_MESSAGE pRpcMessage,
1401     DWORD* pdwStubPhase);
1402 HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_GetObjects_Proxy(
1403     IWbemHiPerfProvider* This,
1404     IWbemServices *pNamespace,
1405     LONG lNumObjects,
1406     IWbemObjectAccess **apObj,
1407     LONG lFlags,
1408     IWbemContext *pContext);
1409 void __RPC_STUB IWbemHiPerfProvider_GetObjects_Stub(
1410     IRpcStubBuffer* This,
1411     IRpcChannelBuffer* pRpcChannelBuffer,
1412     PRPC_MESSAGE pRpcMessage,
1413     DWORD* pdwStubPhase);
1414 
1415 #endif  /* __IWbemHiPerfProvider_INTERFACE_DEFINED__ */
1416 
1417 /*****************************************************************************
1418  * IWbemDecoupledRegistrar interface
1419  */
1420 #ifndef __IWbemDecoupledRegistrar_INTERFACE_DEFINED__
1421 #define __IWbemDecoupledRegistrar_INTERFACE_DEFINED__
1422 
1423 DEFINE_GUID(IID_IWbemDecoupledRegistrar, 0x1005cbcf, 0xe64f, 0x4646, 0xbc,0xd3, 0x3a,0x08,0x9d,0x8a,0x84,0xb4);
1424 #if defined(__cplusplus) && !defined(CINTERFACE)
1425 MIDL_INTERFACE("1005cbcf-e64f-4646-bcd3-3a089d8a84b4")
1426 IWbemDecoupledRegistrar : public IUnknown
1427 {
1428     virtual HRESULT STDMETHODCALLTYPE Register(
1429         LONG a_Flags,
1430         IWbemContext *a_Context,
1431         LPCWSTR a_User,
1432         LPCWSTR a_Locale,
1433         LPCWSTR a_Scope,
1434         LPCWSTR a_Registration,
1435         IUnknown *pIUnknown) = 0;
1436 
1437     virtual HRESULT STDMETHODCALLTYPE UnRegister(
1438         ) = 0;
1439 
1440 };
1441 #ifdef __CRT_UUID_DECL
1442 __CRT_UUID_DECL(IWbemDecoupledRegistrar, 0x1005cbcf, 0xe64f, 0x4646, 0xbc,0xd3, 0x3a,0x08,0x9d,0x8a,0x84,0xb4)
1443 #endif
1444 #else
1445 typedef struct IWbemDecoupledRegistrarVtbl {
1446     BEGIN_INTERFACE
1447 
1448     /*** IUnknown methods ***/
1449     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1450         IWbemDecoupledRegistrar* This,
1451         REFIID riid,
1452         void **ppvObject);
1453 
1454     ULONG (STDMETHODCALLTYPE *AddRef)(
1455         IWbemDecoupledRegistrar* This);
1456 
1457     ULONG (STDMETHODCALLTYPE *Release)(
1458         IWbemDecoupledRegistrar* This);
1459 
1460     /*** IWbemDecoupledRegistrar methods ***/
1461     HRESULT (STDMETHODCALLTYPE *Register)(
1462         IWbemDecoupledRegistrar* This,
1463         LONG a_Flags,
1464         IWbemContext *a_Context,
1465         LPCWSTR a_User,
1466         LPCWSTR a_Locale,
1467         LPCWSTR a_Scope,
1468         LPCWSTR a_Registration,
1469         IUnknown *pIUnknown);
1470 
1471     HRESULT (STDMETHODCALLTYPE *UnRegister)(
1472         IWbemDecoupledRegistrar* This);
1473 
1474     END_INTERFACE
1475 } IWbemDecoupledRegistrarVtbl;
1476 interface IWbemDecoupledRegistrar {
1477     CONST_VTBL IWbemDecoupledRegistrarVtbl* lpVtbl;
1478 };
1479 
1480 #ifdef COBJMACROS
1481 #ifndef WIDL_C_INLINE_WRAPPERS
1482 /*** IUnknown methods ***/
1483 #define IWbemDecoupledRegistrar_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1484 #define IWbemDecoupledRegistrar_AddRef(This) (This)->lpVtbl->AddRef(This)
1485 #define IWbemDecoupledRegistrar_Release(This) (This)->lpVtbl->Release(This)
1486 /*** IWbemDecoupledRegistrar methods ***/
1487 #define IWbemDecoupledRegistrar_Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown) (This)->lpVtbl->Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown)
1488 #define IWbemDecoupledRegistrar_UnRegister(This) (This)->lpVtbl->UnRegister(This)
1489 #else
1490 /*** IUnknown methods ***/
1491 static FORCEINLINE HRESULT IWbemDecoupledRegistrar_QueryInterface(IWbemDecoupledRegistrar* This,REFIID riid,void **ppvObject) {
1492     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1493 }
1494 static FORCEINLINE ULONG IWbemDecoupledRegistrar_AddRef(IWbemDecoupledRegistrar* This) {
1495     return This->lpVtbl->AddRef(This);
1496 }
1497 static FORCEINLINE ULONG IWbemDecoupledRegistrar_Release(IWbemDecoupledRegistrar* This) {
1498     return This->lpVtbl->Release(This);
1499 }
1500 /*** IWbemDecoupledRegistrar methods ***/
1501 static FORCEINLINE HRESULT IWbemDecoupledRegistrar_Register(IWbemDecoupledRegistrar* This,LONG a_Flags,IWbemContext *a_Context,LPCWSTR a_User,LPCWSTR a_Locale,LPCWSTR a_Scope,LPCWSTR a_Registration,IUnknown *pIUnknown) {
1502     return This->lpVtbl->Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown);
1503 }
1504 static FORCEINLINE HRESULT IWbemDecoupledRegistrar_UnRegister(IWbemDecoupledRegistrar* This) {
1505     return This->lpVtbl->UnRegister(This);
1506 }
1507 #endif
1508 #endif
1509 
1510 #endif
1511 
1512 HRESULT STDMETHODCALLTYPE IWbemDecoupledRegistrar_Register_Proxy(
1513     IWbemDecoupledRegistrar* This,
1514     LONG a_Flags,
1515     IWbemContext *a_Context,
1516     LPCWSTR a_User,
1517     LPCWSTR a_Locale,
1518     LPCWSTR a_Scope,
1519     LPCWSTR a_Registration,
1520     IUnknown *pIUnknown);
1521 void __RPC_STUB IWbemDecoupledRegistrar_Register_Stub(
1522     IRpcStubBuffer* This,
1523     IRpcChannelBuffer* pRpcChannelBuffer,
1524     PRPC_MESSAGE pRpcMessage,
1525     DWORD* pdwStubPhase);
1526 HRESULT STDMETHODCALLTYPE IWbemDecoupledRegistrar_UnRegister_Proxy(
1527     IWbemDecoupledRegistrar* This);
1528 void __RPC_STUB IWbemDecoupledRegistrar_UnRegister_Stub(
1529     IRpcStubBuffer* This,
1530     IRpcChannelBuffer* pRpcChannelBuffer,
1531     PRPC_MESSAGE pRpcMessage,
1532     DWORD* pdwStubPhase);
1533 
1534 #endif  /* __IWbemDecoupledRegistrar_INTERFACE_DEFINED__ */
1535 
1536 /*****************************************************************************
1537  * IWbemDecoupledBasicEventProvider interface
1538  */
1539 #ifndef __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__
1540 #define __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__
1541 
1542 DEFINE_GUID(IID_IWbemDecoupledBasicEventProvider, 0x86336d20, 0xca11, 0x4786, 0x9e,0xf1, 0xbc,0x8a,0x94,0x6b,0x42,0xfc);
1543 #if defined(__cplusplus) && !defined(CINTERFACE)
1544 MIDL_INTERFACE("86336d20-ca11-4786-9ef1-bc8a946b42fc")
1545 IWbemDecoupledBasicEventProvider : public IWbemDecoupledRegistrar
1546 {
1547     virtual HRESULT STDMETHODCALLTYPE GetSink(
1548         LONG a_Flags,
1549         IWbemContext *a_Context,
1550         IWbemObjectSink **a_Sink) = 0;
1551 
1552     virtual HRESULT STDMETHODCALLTYPE GetService(
1553         LONG a_Flags,
1554         IWbemContext *a_Context,
1555         IWbemServices **a_Service) = 0;
1556 
1557 };
1558 #ifdef __CRT_UUID_DECL
1559 __CRT_UUID_DECL(IWbemDecoupledBasicEventProvider, 0x86336d20, 0xca11, 0x4786, 0x9e,0xf1, 0xbc,0x8a,0x94,0x6b,0x42,0xfc)
1560 #endif
1561 #else
1562 typedef struct IWbemDecoupledBasicEventProviderVtbl {
1563     BEGIN_INTERFACE
1564 
1565     /*** IUnknown methods ***/
1566     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1567         IWbemDecoupledBasicEventProvider* This,
1568         REFIID riid,
1569         void **ppvObject);
1570 
1571     ULONG (STDMETHODCALLTYPE *AddRef)(
1572         IWbemDecoupledBasicEventProvider* This);
1573 
1574     ULONG (STDMETHODCALLTYPE *Release)(
1575         IWbemDecoupledBasicEventProvider* This);
1576 
1577     /*** IWbemDecoupledRegistrar methods ***/
1578     HRESULT (STDMETHODCALLTYPE *Register)(
1579         IWbemDecoupledBasicEventProvider* This,
1580         LONG a_Flags,
1581         IWbemContext *a_Context,
1582         LPCWSTR a_User,
1583         LPCWSTR a_Locale,
1584         LPCWSTR a_Scope,
1585         LPCWSTR a_Registration,
1586         IUnknown *pIUnknown);
1587 
1588     HRESULT (STDMETHODCALLTYPE *UnRegister)(
1589         IWbemDecoupledBasicEventProvider* This);
1590 
1591     /*** IWbemDecoupledBasicEventProvider methods ***/
1592     HRESULT (STDMETHODCALLTYPE *GetSink)(
1593         IWbemDecoupledBasicEventProvider* This,
1594         LONG a_Flags,
1595         IWbemContext *a_Context,
1596         IWbemObjectSink **a_Sink);
1597 
1598     HRESULT (STDMETHODCALLTYPE *GetService)(
1599         IWbemDecoupledBasicEventProvider* This,
1600         LONG a_Flags,
1601         IWbemContext *a_Context,
1602         IWbemServices **a_Service);
1603 
1604     END_INTERFACE
1605 } IWbemDecoupledBasicEventProviderVtbl;
1606 interface IWbemDecoupledBasicEventProvider {
1607     CONST_VTBL IWbemDecoupledBasicEventProviderVtbl* lpVtbl;
1608 };
1609 
1610 #ifdef COBJMACROS
1611 #ifndef WIDL_C_INLINE_WRAPPERS
1612 /*** IUnknown methods ***/
1613 #define IWbemDecoupledBasicEventProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1614 #define IWbemDecoupledBasicEventProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
1615 #define IWbemDecoupledBasicEventProvider_Release(This) (This)->lpVtbl->Release(This)
1616 /*** IWbemDecoupledRegistrar methods ***/
1617 #define IWbemDecoupledBasicEventProvider_Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown) (This)->lpVtbl->Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown)
1618 #define IWbemDecoupledBasicEventProvider_UnRegister(This) (This)->lpVtbl->UnRegister(This)
1619 /*** IWbemDecoupledBasicEventProvider methods ***/
1620 #define IWbemDecoupledBasicEventProvider_GetSink(This,a_Flags,a_Context,a_Sink) (This)->lpVtbl->GetSink(This,a_Flags,a_Context,a_Sink)
1621 #define IWbemDecoupledBasicEventProvider_GetService(This,a_Flags,a_Context,a_Service) (This)->lpVtbl->GetService(This,a_Flags,a_Context,a_Service)
1622 #else
1623 /*** IUnknown methods ***/
1624 static FORCEINLINE HRESULT IWbemDecoupledBasicEventProvider_QueryInterface(IWbemDecoupledBasicEventProvider* This,REFIID riid,void **ppvObject) {
1625     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1626 }
1627 static FORCEINLINE ULONG IWbemDecoupledBasicEventProvider_AddRef(IWbemDecoupledBasicEventProvider* This) {
1628     return This->lpVtbl->AddRef(This);
1629 }
1630 static FORCEINLINE ULONG IWbemDecoupledBasicEventProvider_Release(IWbemDecoupledBasicEventProvider* This) {
1631     return This->lpVtbl->Release(This);
1632 }
1633 /*** IWbemDecoupledRegistrar methods ***/
1634 static FORCEINLINE HRESULT IWbemDecoupledBasicEventProvider_Register(IWbemDecoupledBasicEventProvider* This,LONG a_Flags,IWbemContext *a_Context,LPCWSTR a_User,LPCWSTR a_Locale,LPCWSTR a_Scope,LPCWSTR a_Registration,IUnknown *pIUnknown) {
1635     return This->lpVtbl->Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,pIUnknown);
1636 }
1637 static FORCEINLINE HRESULT IWbemDecoupledBasicEventProvider_UnRegister(IWbemDecoupledBasicEventProvider* This) {
1638     return This->lpVtbl->UnRegister(This);
1639 }
1640 /*** IWbemDecoupledBasicEventProvider methods ***/
1641 static FORCEINLINE HRESULT IWbemDecoupledBasicEventProvider_GetSink(IWbemDecoupledBasicEventProvider* This,LONG a_Flags,IWbemContext *a_Context,IWbemObjectSink **a_Sink) {
1642     return This->lpVtbl->GetSink(This,a_Flags,a_Context,a_Sink);
1643 }
1644 static FORCEINLINE HRESULT IWbemDecoupledBasicEventProvider_GetService(IWbemDecoupledBasicEventProvider* This,LONG a_Flags,IWbemContext *a_Context,IWbemServices **a_Service) {
1645     return This->lpVtbl->GetService(This,a_Flags,a_Context,a_Service);
1646 }
1647 #endif
1648 #endif
1649 
1650 #endif
1651 
1652 HRESULT STDMETHODCALLTYPE IWbemDecoupledBasicEventProvider_GetSink_Proxy(
1653     IWbemDecoupledBasicEventProvider* This,
1654     LONG a_Flags,
1655     IWbemContext *a_Context,
1656     IWbemObjectSink **a_Sink);
1657 void __RPC_STUB IWbemDecoupledBasicEventProvider_GetSink_Stub(
1658     IRpcStubBuffer* This,
1659     IRpcChannelBuffer* pRpcChannelBuffer,
1660     PRPC_MESSAGE pRpcMessage,
1661     DWORD* pdwStubPhase);
1662 HRESULT STDMETHODCALLTYPE IWbemDecoupledBasicEventProvider_GetService_Proxy(
1663     IWbemDecoupledBasicEventProvider* This,
1664     LONG a_Flags,
1665     IWbemContext *a_Context,
1666     IWbemServices **a_Service);
1667 void __RPC_STUB IWbemDecoupledBasicEventProvider_GetService_Stub(
1668     IRpcStubBuffer* This,
1669     IRpcChannelBuffer* pRpcChannelBuffer,
1670     PRPC_MESSAGE pRpcMessage,
1671     DWORD* pdwStubPhase);
1672 
1673 #endif  /* __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__ */
1674 
1675 /*****************************************************************************
1676  * IWbemEventSink interface
1677  */
1678 #ifndef __IWbemEventSink_INTERFACE_DEFINED__
1679 #define __IWbemEventSink_INTERFACE_DEFINED__
1680 
1681 DEFINE_GUID(IID_IWbemEventSink, 0x3ae0080a, 0x7e3a, 0x4366, 0xbf,0x89, 0x0f,0xee,0xdc,0x93,0x16,0x59);
1682 #if defined(__cplusplus) && !defined(CINTERFACE)
1683 MIDL_INTERFACE("3ae0080a-7e3a-4366-bf89-0feedc931659")
1684 IWbemEventSink : public IWbemObjectSink
1685 {
1686     virtual HRESULT STDMETHODCALLTYPE SetSinkSecurity(
1687         LONG lSDLength,
1688         BYTE *pSD) = 0;
1689 
1690     virtual HRESULT STDMETHODCALLTYPE IsActive(
1691         ) = 0;
1692 
1693     virtual HRESULT STDMETHODCALLTYPE GetRestrictedSink(
1694         LONG lNumQueries,
1695         const LPCWSTR *awszQueries,
1696         IUnknown *pCallback,
1697         IWbemEventSink **ppSink) = 0;
1698 
1699     virtual HRESULT STDMETHODCALLTYPE SetBatchingParameters(
1700         LONG lFlags,
1701         DWORD dwMaxBufferSize,
1702         DWORD dwMaxSendLatency) = 0;
1703 
1704 };
1705 #ifdef __CRT_UUID_DECL
1706 __CRT_UUID_DECL(IWbemEventSink, 0x3ae0080a, 0x7e3a, 0x4366, 0xbf,0x89, 0x0f,0xee,0xdc,0x93,0x16,0x59)
1707 #endif
1708 #else
1709 typedef struct IWbemEventSinkVtbl {
1710     BEGIN_INTERFACE
1711 
1712     /*** IUnknown methods ***/
1713     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1714         IWbemEventSink* This,
1715         REFIID riid,
1716         void **ppvObject);
1717 
1718     ULONG (STDMETHODCALLTYPE *AddRef)(
1719         IWbemEventSink* This);
1720 
1721     ULONG (STDMETHODCALLTYPE *Release)(
1722         IWbemEventSink* This);
1723 
1724     /*** IWbemObjectSink methods ***/
1725     HRESULT (STDMETHODCALLTYPE *Indicate)(
1726         IWbemEventSink* This,
1727         LONG lObjectCount,
1728         IWbemClassObject **apObjArray);
1729 
1730     HRESULT (STDMETHODCALLTYPE *SetStatus)(
1731         IWbemEventSink* This,
1732         LONG lFlags,
1733         HRESULT hResult,
1734         BSTR strParam,
1735         IWbemClassObject *pObjParam);
1736 
1737     /*** IWbemEventSink methods ***/
1738     HRESULT (STDMETHODCALLTYPE *SetSinkSecurity)(
1739         IWbemEventSink* This,
1740         LONG lSDLength,
1741         BYTE *pSD);
1742 
1743     HRESULT (STDMETHODCALLTYPE *IsActive)(
1744         IWbemEventSink* This);
1745 
1746     HRESULT (STDMETHODCALLTYPE *GetRestrictedSink)(
1747         IWbemEventSink* This,
1748         LONG lNumQueries,
1749         const LPCWSTR *awszQueries,
1750         IUnknown *pCallback,
1751         IWbemEventSink **ppSink);
1752 
1753     HRESULT (STDMETHODCALLTYPE *SetBatchingParameters)(
1754         IWbemEventSink* This,
1755         LONG lFlags,
1756         DWORD dwMaxBufferSize,
1757         DWORD dwMaxSendLatency);
1758 
1759     END_INTERFACE
1760 } IWbemEventSinkVtbl;
1761 interface IWbemEventSink {
1762     CONST_VTBL IWbemEventSinkVtbl* lpVtbl;
1763 };
1764 
1765 #ifdef COBJMACROS
1766 #ifndef WIDL_C_INLINE_WRAPPERS
1767 /*** IUnknown methods ***/
1768 #define IWbemEventSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1769 #define IWbemEventSink_AddRef(This) (This)->lpVtbl->AddRef(This)
1770 #define IWbemEventSink_Release(This) (This)->lpVtbl->Release(This)
1771 /*** IWbemObjectSink methods ***/
1772 #define IWbemEventSink_Indicate(This,lObjectCount,apObjArray) (This)->lpVtbl->Indicate(This,lObjectCount,apObjArray)
1773 #define IWbemEventSink_SetStatus(This,lFlags,hResult,strParam,pObjParam) (This)->lpVtbl->SetStatus(This,lFlags,hResult,strParam,pObjParam)
1774 /*** IWbemEventSink methods ***/
1775 #define IWbemEventSink_SetSinkSecurity(This,lSDLength,pSD) (This)->lpVtbl->SetSinkSecurity(This,lSDLength,pSD)
1776 #define IWbemEventSink_IsActive(This) (This)->lpVtbl->IsActive(This)
1777 #define IWbemEventSink_GetRestrictedSink(This,lNumQueries,awszQueries,pCallback,ppSink) (This)->lpVtbl->GetRestrictedSink(This,lNumQueries,awszQueries,pCallback,ppSink)
1778 #define IWbemEventSink_SetBatchingParameters(This,lFlags,dwMaxBufferSize,dwMaxSendLatency) (This)->lpVtbl->SetBatchingParameters(This,lFlags,dwMaxBufferSize,dwMaxSendLatency)
1779 #else
1780 /*** IUnknown methods ***/
1781 static FORCEINLINE HRESULT IWbemEventSink_QueryInterface(IWbemEventSink* This,REFIID riid,void **ppvObject) {
1782     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1783 }
1784 static FORCEINLINE ULONG IWbemEventSink_AddRef(IWbemEventSink* This) {
1785     return This->lpVtbl->AddRef(This);
1786 }
1787 static FORCEINLINE ULONG IWbemEventSink_Release(IWbemEventSink* This) {
1788     return This->lpVtbl->Release(This);
1789 }
1790 /*** IWbemObjectSink methods ***/
1791 static FORCEINLINE HRESULT IWbemEventSink_Indicate(IWbemEventSink* This,LONG lObjectCount,IWbemClassObject **apObjArray) {
1792     return This->lpVtbl->Indicate(This,lObjectCount,apObjArray);
1793 }
1794 static FORCEINLINE HRESULT IWbemEventSink_SetStatus(IWbemEventSink* This,LONG lFlags,HRESULT hResult,BSTR strParam,IWbemClassObject *pObjParam) {
1795     return This->lpVtbl->SetStatus(This,lFlags,hResult,strParam,pObjParam);
1796 }
1797 /*** IWbemEventSink methods ***/
1798 static FORCEINLINE HRESULT IWbemEventSink_SetSinkSecurity(IWbemEventSink* This,LONG lSDLength,BYTE *pSD) {
1799     return This->lpVtbl->SetSinkSecurity(This,lSDLength,pSD);
1800 }
1801 static FORCEINLINE HRESULT IWbemEventSink_IsActive(IWbemEventSink* This) {
1802     return This->lpVtbl->IsActive(This);
1803 }
1804 static FORCEINLINE HRESULT IWbemEventSink_GetRestrictedSink(IWbemEventSink* This,LONG lNumQueries,const LPCWSTR *awszQueries,IUnknown *pCallback,IWbemEventSink **ppSink) {
1805     return This->lpVtbl->GetRestrictedSink(This,lNumQueries,awszQueries,pCallback,ppSink);
1806 }
1807 static FORCEINLINE HRESULT IWbemEventSink_SetBatchingParameters(IWbemEventSink* This,LONG lFlags,DWORD dwMaxBufferSize,DWORD dwMaxSendLatency) {
1808     return This->lpVtbl->SetBatchingParameters(This,lFlags,dwMaxBufferSize,dwMaxSendLatency);
1809 }
1810 #endif
1811 #endif
1812 
1813 #endif
1814 
1815 HRESULT STDMETHODCALLTYPE IWbemEventSink_SetSinkSecurity_Proxy(
1816     IWbemEventSink* This,
1817     LONG lSDLength,
1818     BYTE *pSD);
1819 void __RPC_STUB IWbemEventSink_SetSinkSecurity_Stub(
1820     IRpcStubBuffer* This,
1821     IRpcChannelBuffer* pRpcChannelBuffer,
1822     PRPC_MESSAGE pRpcMessage,
1823     DWORD* pdwStubPhase);
1824 HRESULT STDMETHODCALLTYPE IWbemEventSink_IsActive_Proxy(
1825     IWbemEventSink* This);
1826 void __RPC_STUB IWbemEventSink_IsActive_Stub(
1827     IRpcStubBuffer* This,
1828     IRpcChannelBuffer* pRpcChannelBuffer,
1829     PRPC_MESSAGE pRpcMessage,
1830     DWORD* pdwStubPhase);
1831 HRESULT STDMETHODCALLTYPE IWbemEventSink_GetRestrictedSink_Proxy(
1832     IWbemEventSink* This,
1833     LONG lNumQueries,
1834     const LPCWSTR *awszQueries,
1835     IUnknown *pCallback,
1836     IWbemEventSink **ppSink);
1837 void __RPC_STUB IWbemEventSink_GetRestrictedSink_Stub(
1838     IRpcStubBuffer* This,
1839     IRpcChannelBuffer* pRpcChannelBuffer,
1840     PRPC_MESSAGE pRpcMessage,
1841     DWORD* pdwStubPhase);
1842 HRESULT STDMETHODCALLTYPE IWbemEventSink_SetBatchingParameters_Proxy(
1843     IWbemEventSink* This,
1844     LONG lFlags,
1845     DWORD dwMaxBufferSize,
1846     DWORD dwMaxSendLatency);
1847 void __RPC_STUB IWbemEventSink_SetBatchingParameters_Stub(
1848     IRpcStubBuffer* This,
1849     IRpcChannelBuffer* pRpcChannelBuffer,
1850     PRPC_MESSAGE pRpcMessage,
1851     DWORD* pdwStubPhase);
1852 
1853 #endif  /* __IWbemEventSink_INTERFACE_DEFINED__ */
1854 
1855 #endif
1856 /* Begin additional prototypes for all interfaces */
1857 
1858 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
1859 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
1860 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
1861 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
1862 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
1863 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
1864 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
1865 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
1866 
1867 /* End additional prototypes */
1868 
1869 #ifdef __cplusplus
1870 }
1871 #endif
1872 
1873 #endif /* __wbemprov_h__ */
1874