Nikolay Sivov : dxgi: Add IDXGIDevice2 stub.

Alexandre Julliard julliard at winehq.org
Mon May 14 17:20:08 CDT 2018


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue May  1 08:21:18 2018 +0300

dxgi: Add IDXGIDevice2 stub.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dxgi/device.c        | 30 ++++++++++++++++++++++++++++++
 include/wine/winedxgi.idl |  2 +-
 2 files changed, 31 insertions(+), 1 deletion(-)

diff --git a/dlls/dxgi/device.c b/dlls/dxgi/device.c
index 5a810fa..2c85c1d 100644
--- a/dlls/dxgi/device.c
+++ b/dlls/dxgi/device.c
@@ -41,6 +41,7 @@ static HRESULT STDMETHODCALLTYPE dxgi_device_QueryInterface(IWineDXGIDevice *ifa
             || IsEqualGUID(riid, &IID_IDXGIObject)
             || IsEqualGUID(riid, &IID_IDXGIDevice)
             || IsEqualGUID(riid, &IID_IDXGIDevice1)
+            || IsEqualGUID(riid, &IID_IDXGIDevice2)
             || IsEqualGUID(riid, &IID_IWineDXGIDevice))
     {
         IUnknown_AddRef(iface);
@@ -275,6 +276,31 @@ static HRESULT STDMETHODCALLTYPE dxgi_device_GetMaximumFrameLatency(IWineDXGIDev
     return E_NOTIMPL;
 }
 
+static HRESULT STDMETHODCALLTYPE dxgi_device_OfferResources(IWineDXGIDevice *iface, UINT resource_count,
+        IDXGIResource * const *resources, DXGI_OFFER_RESOURCE_PRIORITY priority)
+{
+    FIXME("iface %p, resource_count %u, resources %p, priority %u stub!\n", iface, resource_count,
+        resources, priority);
+
+    return E_NOTIMPL;
+}
+
+static HRESULT STDMETHODCALLTYPE dxgi_device_ReclaimResources(IWineDXGIDevice *iface, UINT resource_count,
+        IDXGIResource * const *resources, BOOL *discarded)
+{
+    FIXME("iface %p, resource_count %u, resources %p, discarded %p stub!\n", iface, resource_count,
+        resources, discarded);
+
+    return E_NOTIMPL;
+}
+
+static HRESULT STDMETHODCALLTYPE dxgi_device_EnqueueSetEvent(IWineDXGIDevice *iface, HANDLE event)
+{
+    FIXME("iface %p, event %p stub!\n", iface, event);
+
+    return E_NOTIMPL;
+}
+
 /* IWineDXGIDevice methods */
 
 static HRESULT STDMETHODCALLTYPE dxgi_device_create_surface(IWineDXGIDevice *iface,
@@ -355,6 +381,10 @@ static const struct IWineDXGIDeviceVtbl dxgi_device_vtbl =
     /* IDXGIDevice1 methods */
     dxgi_device_SetMaximumFrameLatency,
     dxgi_device_GetMaximumFrameLatency,
+    /* IDXGIDevice2 methods */
+    dxgi_device_OfferResources,
+    dxgi_device_ReclaimResources,
+    dxgi_device_EnqueueSetEvent,
     /* IWineDXGIDevice methods */
     dxgi_device_create_surface,
     dxgi_device_create_swapchain,
diff --git a/include/wine/winedxgi.idl b/include/wine/winedxgi.idl
index 2c57342..3a1d6fa 100644
--- a/include/wine/winedxgi.idl
+++ b/include/wine/winedxgi.idl
@@ -25,7 +25,7 @@ import "dxgi1_5.idl";
     local,
     uuid(3e1ff30b-c951-48c3-b010-0fb49f3dca71)
 ]
-interface IWineDXGIDevice : IDXGIDevice1
+interface IWineDXGIDevice : IDXGIDevice2
 {
     HRESULT create_surface(
         [in] struct wined3d_texture *wined3d_texture,




More information about the wine-cvs mailing list