Biswapriyo Nath : include: Add some function declarations in propvarutil.h.

Alexandre Julliard julliard at winehq.org
Fri Jul 9 16:45:34 CDT 2021


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

Author: Biswapriyo Nath <nathbappai at gmail.com>
Date:   Fri Jul  9 19:30:42 2021 +0530

include: Add some function declarations in propvarutil.h.

Signed-off-by: Biswapriyo Nath <nathbappai at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/propvarutil.h | 77 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 72 insertions(+), 5 deletions(-)

diff --git a/include/propvarutil.h b/include/propvarutil.h
index e0a21faf8c7..972cf48a019 100644
--- a/include/propvarutil.h
+++ b/include/propvarutil.h
@@ -74,6 +74,7 @@ HRESULT WINAPI PropVariantToGUID(const PROPVARIANT *ppropvar, GUID *guid);
 HRESULT WINAPI VariantToGUID(const VARIANT *pvar, GUID *guid);
 INT WINAPI PropVariantCompareEx(REFPROPVARIANT propvar1, REFPROPVARIANT propvar2,
                                 PROPVAR_COMPARE_UNIT uint, PROPVAR_COMPARE_FLAGS flags);
+HRESULT WINAPI InitPropVariantFromFileTime(const FILETIME *pftIn, PROPVARIANT *ppropvar);
 
 HRESULT WINAPI PropVariantToDouble(REFPROPVARIANT propvarIn, double *ret);
 HRESULT WINAPI PropVariantToInt16(REFPROPVARIANT propvarIn, SHORT *ret);
@@ -92,8 +93,17 @@ HRESULT WINAPI PropVariantToStringAlloc(REFPROPVARIANT propvarIn, WCHAR **ret);
 #ifdef __cplusplus
 
 HRESULT InitPropVariantFromBoolean(BOOL fVal, PROPVARIANT *ppropvar);
-HRESULT InitPropVariantFromString(PCWSTR psz, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromInt16(SHORT nVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromUInt16(USHORT uiVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromInt32(LONG lVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromUInt32(ULONG ulVal, PROPVARIANT *ppropvar);
 HRESULT InitPropVariantFromInt64(LONGLONG llVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromUInt64(ULONGLONG ullVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromDouble(DOUBLE dblVal, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromString(PCWSTR psz, PROPVARIANT *ppropvar);
+HRESULT InitPropVariantFromGUIDAsBuffer(REFGUID guid, PROPVARIANT *ppropvar);
+BOOL IsPropVariantVector(REFPROPVARIANT propvar);
+BOOL IsPropVariantString(REFPROPVARIANT propvar);
 
 #ifndef NO_PROPVAR_INLINES
 
@@ -104,6 +114,55 @@ inline HRESULT InitPropVariantFromBoolean(BOOL fVal, PROPVARIANT *ppropvar)
     return S_OK;
 }
 
+inline HRESULT InitPropVariantFromInt16(SHORT nVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_I2;
+    ppropvar->iVal = nVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromUInt16(USHORT uiVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_UI2;
+    ppropvar->uiVal = uiVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromInt32(LONG lVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_I4;
+    ppropvar->lVal = lVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromUInt32(ULONG ulVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_UI4;
+    ppropvar->ulVal = ulVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromInt64(LONGLONG llVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_I8;
+    ppropvar->hVal.QuadPart = llVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromUInt64(ULONGLONG ullVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_UI8;
+    ppropvar->uhVal.QuadPart = ullVal;
+    return S_OK;
+}
+
+inline HRESULT InitPropVariantFromDouble(DOUBLE dblVal, PROPVARIANT *ppropvar)
+{
+    ppropvar->vt = VT_R8;
+    ppropvar->dblVal = dblVal;
+    return S_OK;
+}
+
 inline HRESULT InitPropVariantFromString(PCWSTR psz, PROPVARIANT *ppropvar)
 {
     HRESULT hres;
@@ -117,11 +176,19 @@ inline HRESULT InitPropVariantFromString(PCWSTR psz, PROPVARIANT *ppropvar)
     return hres;
 }
 
-inline HRESULT InitPropVariantFromInt64(LONGLONG llVal, PROPVARIANT *ppropvar)
+inline HRESULT InitPropVariantFromGUIDAsBuffer(REFGUID guid, PROPVARIANT *ppropvar)
 {
-    ppropvar->vt = VT_I8;
-    ppropvar->hVal.QuadPart = llVal;
-    return S_OK;
+    return InitPropVariantFromBuffer(guid, sizeof(GUID), ppropvar);
+}
+
+inline BOOL IsPropVariantVector(REFPROPVARIANT propvar)
+{
+    return (propvar.vt & (VT_ARRAY | VT_VECTOR));
+}
+
+inline BOOL IsPropVariantString(REFPROPVARIANT propvar)
+{
+    return (PropVariantToStringWithDefault(propvar, NULL) != NULL);
 }
 
 #endif /* NO_PROPVAR_INLINES */




More information about the wine-cvs mailing list