| 1 |
cpp_quote("/**") |
| 2 |
cpp_quote(" * This file is part of the mingw-w64 runtime package.") |
| 3 |
cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") |
| 4 |
cpp_quote(" */") |
| 5 |
cpp_quote("") |
| 6 |
|
| 7 |
import "objidl.idl"; |
| 8 |
import "oleidl.idl"; |
| 9 |
import "oaidl.idl"; |
| 10 |
import "wbemcli.idl"; |
| 11 |
|
| 12 |
cpp_quote("#include <winapifamily.h>") |
| 13 |
cpp_quote("") |
| 14 |
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") |
| 15 |
|
| 16 |
typedef VARIANT WBEM_VARIANT; |
| 17 |
typedef [string] LPWSTR WBEM_WSTR; |
| 18 |
typedef [string] LPCWSTR WBEM_CWSTR; |
| 19 |
|
| 20 |
typedef [v1_enum] enum tag_WBEM_PROVIDER_REQUIREMENTS_TYPE { |
| 21 |
WBEM_REQUIREMENTS_START_POSTFILTER = 0, |
| 22 |
WBEM_REQUIREMENTS_STOP_POSTFILTER = 1, |
| 23 |
WBEM_REQUIREMENTS_RECHECK_SUBSCRIPTIONS = 2 |
| 24 |
} WBEM_PROVIDER_REQUIREMENTS_TYPE; |
| 25 |
|
| 26 |
interface IWbemPropertyProvider; |
| 27 |
interface IWbemUnboundObjectSink; |
| 28 |
interface IWbemEventProvider; |
| 29 |
interface IWbemEventProviderQuerySink; |
| 30 |
interface IWbemEventProviderSecurity; |
| 31 |
interface IWbemEventConsumerProvider; |
| 32 |
interface IWbemProviderInitSink; |
| 33 |
interface IWbemProviderInit; |
| 34 |
interface IWbemHiPerfProvider; |
| 35 |
interface IWbemDecoupledRegistrar; |
| 36 |
|
| 37 |
[uuid (092df710-7010-11d1-ad90-00c04fd8fdff)] |
| 38 |
library WbemProviders_v1 { |
| 39 |
[uuid (cb8555cc-9128-11d1-ad9b-00c04fd8fdff)] |
| 40 |
coclass WbemAdministrativeLocator { |
| 41 |
interface IWbemLocator; |
| 42 |
}; |
| 43 |
|
| 44 |
[uuid (cd184336-9128-11d1-ad9b-00c04fd8fdff)] |
| 45 |
coclass WbemAuthenticatedLocator { |
| 46 |
interface IWbemLocator; |
| 47 |
}; |
| 48 |
|
| 49 |
[uuid (443e7b79-DE31-11d2-B340-00104bcc4b4a)] |
| 50 |
coclass WbemUnauthenticatedLocator { |
| 51 |
interface IWbemLocator; |
| 52 |
}; |
| 53 |
|
| 54 |
[uuid (4cfc7932-0f9d-4bef-9c32-8ea2a6b56fcb)] |
| 55 |
coclass WbemDecoupledRegistrar { |
| 56 |
interface IWbemDecoupledRegistrar; |
| 57 |
}; |
| 58 |
|
| 59 |
[uuid (f5f75737-2843-4f22-933d-c76a97cda62f)] |
| 60 |
coclass WbemDecoupledBasicEventProvider { |
| 61 |
interface IWbemDecoupledBasicEventProvider; |
| 62 |
}; |
| 63 |
}; |
| 64 |
|
| 65 |
typedef [v1_enum] enum tag_WBEM_BATCH_TYPE { |
| 66 |
WBEM_FLAG_BATCH_IF_NEEDED = 0, |
| 67 |
WBEM_FLAG_MUST_BATCH = 0x1, |
| 68 |
WBEM_FLAG_MUST_NOT_BATCH = 0x2 |
| 69 |
} WBEM_BATCH_TYPE; |
| 70 |
|
| 71 |
typedef enum tag_WBEM_PROVIDER_FLAGS { |
| 72 |
WBEM_FLAG_OWNER_UPDATE = 0x10000 |
| 73 |
} WBEM_PROVIDER_FLAGS; |
| 74 |
|
| 75 |
typedef enum tag_WBEM_EXTRA_RETURN_CODES { |
| 76 |
WBEM_S_INITIALIZED = 0, |
| 77 |
WBEM_S_LIMITED_SERVICE = 0x43001, |
| 78 |
WBEM_S_INDIRECTLY_UPDATED, |
| 79 |
WBEM_S_SUBJECT_TO_SDS, |
| 80 |
WBEM_E_RETRY_LATER = 0x80043001, |
| 81 |
WBEM_E_RESOURCE_CONTENTION |
| 82 |
} WBEM_EXTRA_RETURN_CODES; |
| 83 |
|
| 84 |
[object, restricted, uuid (e246107b-b06e-11d0-ad61-00c04fd8fdff)] |
| 85 |
interface IWbemUnboundObjectSink : IUnknown { |
| 86 |
HRESULT IndicateToConsumer ([in] IWbemClassObject *pLogicalConsumer,[in] long lNumObjects,[in, size_is (lNumObjects)] IWbemClassObject **apObjects); |
| 87 |
}; |
| 88 |
|
| 89 |
[object, restricted, uuid (ce61e841-65bc-11d0-b6bd-00aa003240c7)] |
| 90 |
interface IWbemPropertyProvider : IUnknown { |
| 91 |
HRESULT GetProperty ([in] long lFlags,[in] const BSTR strLocale,[in] const BSTR strClassMapping,[in] const BSTR strInstMapping,[in] const BSTR strPropMapping,[out] VARIANT *pvValue); |
| 92 |
HRESULT PutProperty ([in] long lFlags,[in] const BSTR strLocale,[in] const BSTR strClassMapping,[in] const BSTR strInstMapping,[in] const BSTR strPropMapping,[in] const VARIANT *pvValue); |
| 93 |
}; |
| 94 |
|
| 95 |
[object, restricted, uuid (e245105b-b06e-11d0-ad61-00c04fd8fdff)] |
| 96 |
interface IWbemEventProvider : IUnknown { |
| 97 |
HRESULT ProvideEvents ([in] IWbemObjectSink *pSink,[in] long lFlags); |
| 98 |
}; |
| 99 |
|
| 100 |
[object, restricted, uuid (580acaf8-fa1c-11d0-ad72-00c04fd8fdff)] |
| 101 |
interface IWbemEventProviderQuerySink : IUnknown { |
| 102 |
HRESULT NewQuery ([in] unsigned long dwId,[in] WBEM_WSTR wszQueryLanguage,[in] WBEM_WSTR wszQuery); |
| 103 |
HRESULT CancelQuery ([in] unsigned long dwId); |
| 104 |
}; |
| 105 |
|
| 106 |
[object, restricted, uuid (631f7d96-d993-11d2-b339-00105a1f4aaf)] |
| 107 |
interface IWbemEventProviderSecurity : IUnknown { |
| 108 |
HRESULT AccessCheck ([in] WBEM_CWSTR wszQueryLanguage,[in] WBEM_CWSTR wszQuery,[in] long lSidLength,[in, size_is (lSidLength), unique] const BYTE *pSid); |
| 109 |
}; |
| 110 |
|
| 111 |
[object, restricted, uuid (631f7d97-d993-11d2-b339-00105a1f4aaf)] |
| 112 |
interface IWbemProviderIdentity : IUnknown { |
| 113 |
HRESULT SetRegistrationObject ([in] long lFlags,[in] IWbemClassObject *pProvReg); |
| 114 |
}; |
| 115 |
|
| 116 |
[object, restricted, uuid (e246107a-b06e-11d0-ad61-00c04fd8fdff)] |
| 117 |
interface IWbemEventConsumerProvider : IUnknown { |
| 118 |
HRESULT FindConsumer ([in] IWbemClassObject *pLogicalConsumer,[out] IWbemUnboundObjectSink **ppConsumer); |
| 119 |
}; |
| 120 |
|
| 121 |
[object, uuid (1be41571-91dd-11d1-aeb2-00c04fb68820)] |
| 122 |
interface IWbemProviderInitSink : IUnknown { |
| 123 |
HRESULT SetStatus ([in] LONG lStatus,[in] LONG lFlags); |
| 124 |
}; |
| 125 |
|
| 126 |
[object, uuid (1be41572-91dd-11d1-aeb2-00c04fb68820)] |
| 127 |
interface IWbemProviderInit : IUnknown { |
| 128 |
HRESULT Initialize ([in, unique, string] LPWSTR wszUser,[in] LONG lFlags,[in, string] LPWSTR wszNamespace,[in, unique, string] LPWSTR wszLocale,[in] IWbemServices *pNamespace,[in] IWbemContext *pCtx,[in] IWbemProviderInitSink *pInitSink); |
| 129 |
}; |
| 130 |
|
| 131 |
[object, local, restricted, uuid (49353c93-516b-11d1-aea6-00c04fb68820)] |
| 132 |
interface IWbemHiPerfProvider : IUnknown { |
| 133 |
HRESULT QueryInstances ([in] IWbemServices *pNamespace,[in, string] WCHAR *wszClass,[in] long lFlags,[in] IWbemContext *pCtx,[in] IWbemObjectSink *pSink); |
| 134 |
HRESULT CreateRefresher ([in] IWbemServices *pNamespace,[in] long lFlags,[out] IWbemRefresher **ppRefresher); |
| 135 |
HRESULT CreateRefreshableObject ([in] IWbemServices *pNamespace,[in] IWbemObjectAccess *pTemplate,[in] IWbemRefresher *pRefresher,[in] long lFlags,[in] IWbemContext *pContext,[out] IWbemObjectAccess **ppRefreshable,[out] long *plId); |
| 136 |
HRESULT StopRefreshing ([in] IWbemRefresher *pRefresher,[in] long lId,[in] long lFlags); |
| 137 |
HRESULT CreateRefreshableEnum ([in] IWbemServices *pNamespace,[in, string] LPCWSTR wszClass,[in] IWbemRefresher *pRefresher,[in] long lFlags,[in] IWbemContext *pContext,[in] IWbemHiPerfEnum *pHiPerfEnum,[out] long *plId); |
| 138 |
HRESULT GetObjects ([in] IWbemServices *pNamespace,[in] long lNumObjects,[in, out, size_is (lNumObjects)] IWbemObjectAccess **apObj,[in] long lFlags,[in] IWbemContext *pContext); |
| 139 |
}; |
| 140 |
|
| 141 |
[object, local, uuid (1005cbcf-e64f-4646-bcd3-3a089d8a84b4)] |
| 142 |
interface IWbemDecoupledRegistrar : IUnknown { |
| 143 |
HRESULT Register ([in] long a_Flags,[in] IWbemContext *a_Context,[in] LPCWSTR a_User,[in] LPCWSTR a_Locale,[in] LPCWSTR a_Scope,[in] LPCWSTR a_Registration,[in] IUnknown *pIUnknown); |
| 144 |
HRESULT UnRegister (); |
| 145 |
}; |
| 146 |
|
| 147 |
[object, local, uuid (86336d20-ca11-4786-9ef1-bc8a946b42fc)] |
| 148 |
interface IWbemDecoupledBasicEventProvider : IWbemDecoupledRegistrar { |
| 149 |
HRESULT GetSink ([in] long a_Flags,[in] IWbemContext *a_Context,[out] IWbemObjectSink **a_Sink); |
| 150 |
HRESULT GetService ([in] long a_Flags,[in] IWbemContext *a_Context,[out] IWbemServices **a_Service); |
| 151 |
}; |
| 152 |
|
| 153 |
[object, restricted, uuid (3ae0080a-7e3a-4366-bf89-0feedc931659)] |
| 154 |
interface IWbemEventSink : IWbemObjectSink { |
| 155 |
HRESULT SetSinkSecurity ([in] long lSDLength,[in, size_is (lSDLength)] BYTE *pSD); |
| 156 |
HRESULT IsActive (); |
| 157 |
HRESULT GetRestrictedSink ([in] long lNumQueries,[in, size_is (lNumQueries), string] const LPCWSTR *awszQueries,[in] IUnknown *pCallback,[out] IWbemEventSink **ppSink); |
| 158 |
HRESULT SetBatchingParameters ([in] LONG lFlags,[in] DWORD dwMaxBufferSize,[in] DWORD dwMaxSendLatency); |
| 159 |
}; |
| 160 |
|
| 161 |
cpp_quote("#endif") |