From: Vijay Kiran Kamuju Subject: [PATCH] include: Add IWbemRefresher related interfaces Message-Id: Date: Wed, 29 Apr 2020 13:05:00 +0200 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49044 Signed-off-by: Vijay Kiran Kamuju From c02c7a11fc828144789cd991e01523f26848d4d4 Mon Sep 17 00:00:00 2001 From: Vijay Kiran Kamuju Date: Wed, 29 Apr 2020 12:50:40 +0200 Subject: [PATCH] include: Add IWbemRefresher related interfaces Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49044 Signed-off-by: Vijay Kiran Kamuju --- include/wbemcli.idl | 148 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 148 insertions(+) diff --git a/include/wbemcli.idl b/include/wbemcli.idl index 5b5ca61bec..4ce79f7846 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,138 @@ 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); +}; + +[ + 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 +923,13 @@ coclass WbemStatusCodeText { interface IWbemStatusCodeText; }; + +[ + uuid(c71566f2-561e-11d1-ad87-00c04fd8fdff) +] +coclass WbemRefresher +{ + interface IMarshal; + interface IWbemRefresher; + interface IWbemConfigureRefresher; +}; -- 2.26.2