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