Vijay Kiran Kamuju : include: Add IWbemRefresher related interfaces.

Alexandre Julliard julliard at winehq.org
Wed Apr 29 16:11:13 CDT 2020


Module: wine
Branch: master
Commit: 5d4db497adbb86c31a2d23dc857a8f1987e64331
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=5d4db497adbb86c31a2d23dc857a8f1987e64331

Author: Vijay Kiran Kamuju <infyquest at gmail.com>
Date:   Wed Apr 29 12:50:40 2020 +0200

include: Add IWbemRefresher related interfaces.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49044
Signed-off-by: Vijay Kiran Kamuju <infyquest at gmail.com>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/wbemcli.idl | 151 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 151 insertions(+)

diff --git a/include/wbemcli.idl b/include/wbemcli.idl
index 5b5ca61bec..4a2c1f785c 100644
--- a/include/wbemcli.idl
+++ b/include/wbemcli.idl
@@ -255,6 +255,12 @@ typedef [v1_enum] enum tag_CIMTYPE_ENUMERATION
     CIM_FLAG_ARRAY = 0x2000
 } CIMTYPE_ENUMERATION;
 
+typedef [v1_enum] enum tag_WBEM_REFRESHER_FLAGS
+{
+    WBEM_FLAG_REFRESH_AUTO_RECONNECT     = 0,
+    WBEM_FLAG_REFRESH_NO_AUTO_RECONNECT  = 1
+} WBEM_REFRESHER_FLAGS;
+
 typedef long CIMTYPE;
 
 [
@@ -761,6 +767,141 @@ interface IWbemUnsecuredApartment : IUnsecuredApartment
         [out] IWbemObjectSink **stub);
 };
 
+[
+    object,
+    restricted,
+    local,
+    uuid(49353c9a-516b-11d1-aea6-00c04fb68820)
+]
+interface IWbemObjectAccess : IWbemClassObject
+{
+    HRESULT GetPropertyHandle(
+        [in, string] LPCWSTR wszPropertyName,
+        [out] CIMTYPE *pType,
+        [out] long *plHandle);
+
+    HRESULT WritePropertyValue(
+        [in] long lHandle,
+        [in] long lNumBytes,
+        [in, size_is(lNumBytes)] const byte *aData);
+
+    HRESULT ReadPropertyValue(
+        [in] long lHandle,
+        [in] long lBufferSize,
+        [out] long *plNumBytes,
+        [out, size_is(lBufferSize), length_is(*plNumBytes)] byte *aData);
+
+    HRESULT ReadDWORD(
+        [in] long lHandle,
+        [out] DWORD *pdw);
+
+    HRESULT WriteDWORD(
+        [in] long lHandle,
+        [in] DWORD dw);
+
+    HRESULT ReadQWORD(
+        [in] long lHandle,
+        [out] unsigned __int64 *pqw);
+
+    HRESULT WriteQWORD(
+        [in] long lHandle,
+        [in] unsigned __int64 qw);
+
+    HRESULT GetPropertyInfoByHandle(
+        [in] long lHandle,
+        [out] BSTR *pstrName,
+        [out] CIMTYPE *pType);
+
+    HRESULT Lock(
+        [in] long lFlags);
+
+    HRESULT Unlock(
+        [in] long lFlags);
+};
+
+[
+    object,
+    restricted,
+    local,
+    uuid(49353c99-516b-11d1-aea6-00c04fb68820)
+]
+interface IWbemRefresher : IUnknown
+{
+    HRESULT Refresh(
+        [in] long lFlags);
+};
+
+[
+    object,
+    restricted,
+    local,
+    uuid(2705c288-79ae-11d2-b348-00105a1f8177)
+]
+interface IWbemHiPerfEnum : IUnknown
+{
+    HRESULT AddObjects(
+        [in] long lFlags,
+        [in] ULONG uNumObjects,
+        [in, size_is(uNumObjects)] long *apIds,
+        [in, size_is(uNumObjects)] IWbemObjectAccess **apObj);
+
+    HRESULT RemoveObjects(
+        [in] long lFlags,
+        [in] ULONG uNumObjects,
+        [in, size_is(uNumObjects)] long *apIds);
+
+    HRESULT GetObjects(
+        [in] long lFlags,
+        [in] ULONG uNumObjects,
+        [out, size_is(uNumObjects), length_is(*puReturned)] IWbemObjectAccess **apObj,
+        [out] ULONG *puReturned);
+
+    HRESULT RemoveAll(
+        [in] long lFlags);
+};
+
+[
+    object,
+    restricted,
+    local,
+    uuid(49353c92-516b-11d1-aea6-00c04fb68820)
+]
+interface IWbemConfigureRefresher : IUnknown
+{
+    HRESULT AddObjectByPath(
+        [in] IWbemServices *pNamespace,
+        [in, string] LPCWSTR wszPath,
+        [in] long lFlags,
+        [in] IWbemContext *pContext,
+        [out] IWbemClassObject **ppRefreshable,
+        [out] long *plId);
+
+    HRESULT AddObjectByTemplate(
+        [in] IWbemServices *pNamespace,
+        [in] IWbemClassObject *pTemplate,
+        [in] long lFlags,
+        [in] IWbemContext *pContext,
+        [out] IWbemClassObject **ppRefreshable,
+        [out] long *plId);
+
+    HRESULT AddRefresher(
+        [in] IWbemRefresher *pRefresher,
+        [in] long lFlags,
+        [out] long *plId);
+
+    HRESULT Remove(
+        [in] long lId,
+        [in] long lFlags);
+
+    HRESULT AddEnum(
+        [in] IWbemServices *pNamespace,
+        [in, string] LPCWSTR wszClassName,
+        [in] long lFlags,
+        [in] IWbemContext *pContext,
+        [out] IWbemHiPerfEnum **ppEnum,
+        [out] long *plId);
+};
+
 [
     uuid(49bd2028-1523-11d1-ad79-00c04fd8fdff)
 ]
@@ -785,3 +926,13 @@ coclass WbemStatusCodeText
 {
     interface IWbemStatusCodeText;
 };
+
+[
+    uuid(c71566f2-561e-11d1-ad87-00c04fd8fdff)
+]
+coclass WbemRefresher
+{
+    interface IMarshal;
+    interface IWbemRefresher;
+    interface IWbemConfigureRefresher;
+};




More information about the wine-cvs mailing list