Stefan Dösinger : wined3d: Add the remaining IWineD3DDevice methods.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Apr 18 05:13:33 CDT 2006


Module: wine
Branch: refs/heads/master
Commit: 80bdb24cad10d617437ec56a882dd4e885a1e88d
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=80bdb24cad10d617437ec56a882dd4e885a1e88d

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Mon Apr 17 17:51:21 2006 +0200

wined3d: Add the remaining IWineD3DDevice methods.

---

 dlls/wined3d/device.c            |   24 ++++++++++++++++++++++++
 include/wine/wined3d_interface.h |   20 ++++++++++++++++++++
 2 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 4cded18..4002313 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -1698,6 +1698,26 @@ HRESULT WINAPI IWineD3DDeviceImpl_Uninit
     return WINED3DERR_INVALIDCALL;
 }
 
+HRESULT WINAPI IWineD3DDeviceImpl_EnumDisplayModes(IWineD3DDevice *iface, DWORD Flags, UINT Width, UINT Height, WINED3DFORMAT pixelformat, LPVOID context, D3DCB_ENUMDISPLAYMODESCALLBACK callback) {
+    FIXME("This call is a d3d7 merge stub. It will be implemented later\n");
+    return WINED3DERR_INVALIDCALL;
+}
+
+HRESULT WINAPI IWineD3DDeviceImpl_SetDisplayMode(IWineD3DDevice *iface, UINT iSwapChain, WINED3DDISPLAYMODE* pMode) {
+    FIXME("This call is a d3d7 merge stub. It will be implemented later\n");
+    return WINED3DERR_INVALIDCALL;
+}
+
+HRESULT WINAPI IWineD3DDeviceImpl_EnumZBufferFormats(IWineD3DDevice *iface, D3DCB_ENUMPIXELFORMATS Callback, void *Context) {
+    FIXME("This call is a d3d7 merge stub. It will be implemented later\n");
+    return WINED3DERR_INVALIDCALL;
+}
+
+HRESULT WINAPI IWineD3DDeviceImpl_EnumTextureFormats(IWineD3DDevice *iface, D3DCB_ENUMPIXELFORMATS Callback, void *Context) {
+    FIXME("This call is a d3d7 merge stub. It will be implemented later\n");
+    return WINED3DERR_INVALIDCALL;
+}
+
 HRESULT WINAPI IWineD3DDeviceImpl_GetDirect3D(IWineD3DDevice *iface, IWineD3D **ppD3D) {
    IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
    *ppD3D= This->wineD3D;
@@ -6843,6 +6863,7 @@ const IWineD3DDeviceVtbl IWineD3DDevice_
     /*** Odd functions **/
     IWineD3DDeviceImpl_Init3D,
     IWineD3DDeviceImpl_Uninit3D,
+    IWineD3DDeviceImpl_EnumDisplayModes,
     IWineD3DDeviceImpl_EvictManagedResources,
     IWineD3DDeviceImpl_GetAvailableTextureMem,
     IWineD3DDeviceImpl_GetBackBuffer,
@@ -6850,6 +6871,7 @@ const IWineD3DDeviceVtbl IWineD3DDevice_
     IWineD3DDeviceImpl_GetDeviceCaps,
     IWineD3DDeviceImpl_GetDirect3D,
     IWineD3DDeviceImpl_GetDisplayMode,
+    IWineD3DDeviceImpl_SetDisplayMode,
     IWineD3DDeviceImpl_GetHWND,
     IWineD3DDeviceImpl_SetHWND,
     IWineD3DDeviceImpl_GetNumberOfSwapChains,
@@ -6861,6 +6883,8 @@ const IWineD3DDeviceVtbl IWineD3DDevice_
     IWineD3DDeviceImpl_SetCursorPosition,
     IWineD3DDeviceImpl_ShowCursor,
     IWineD3DDeviceImpl_TestCooperativeLevel,
+    IWineD3DDeviceImpl_EnumZBufferFormats,
+    IWineD3DDeviceImpl_EnumTextureFormats,
     /*** Getters and setters **/
     IWineD3DDeviceImpl_SetClipPlane,
     IWineD3DDeviceImpl_GetClipPlane,
diff --git a/include/wine/wined3d_interface.h b/include/wine/wined3d_interface.h
index af58fb4..2c590eb 100644
--- a/include/wine/wined3d_interface.h
+++ b/include/wine/wined3d_interface.h
@@ -4,6 +4,7 @@
  * Copyright 2002-2003 The wine-d3d team
  * Copyright 2002-2003 Raphael Junqueira
  * Copyright 2005 Oliver Stieber
+ * Copyright 2006 Stefan Dösinger for CodeWeavers
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -260,6 +261,17 @@ typedef HRESULT WINAPI (*D3DCB_CREATEADD
                                                struct IWineD3DSwapChain **pSwapChain
                                                );
 
+typedef HRESULT WINAPI (*D3DCB_ENUMPIXELFORMATS) (struct IUnknown *pDevice,
+                                                  WINED3DFORMAT fmt,
+                                                  void *Context);
+
+typedef HRESULT WINAPI (*D3DCB_ENUMDISPLAYMODESCALLBACK) (IUnknown *pDevice,
+                                                          UINT Width,
+                                                          UINT Height,
+                                                          WINED3DFORMAT Pixelformat,
+                                                          FLOAT Refresh,
+                                                          LPVOID context);
+
 /*****************************************************************************
  * IWineD3DBase interface
  */
@@ -373,6 +385,7 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
     STDMETHOD_(HRESULT,CreatePalette)(THIS_ DWORD Flags, PALETTEENTRY *PalEnt, struct IWineD3DPalette **Palette, IUnknown *Parent);
     STDMETHOD(Init3D)(THIS_ WINED3DPRESENT_PARAMETERS* pPresentationParameters, D3DCB_CREATEADDITIONALSWAPCHAIN D3DCB_CreateAdditionalSwapChain);
     STDMETHOD(Uninit3D)(THIS);
+    STDMETHOD(EnumDisplayModes)(THIS_ DWORD Flags, UINT Width, UINT Height, WINED3DFORMAT Format, void *context, D3DCB_ENUMDISPLAYMODESCALLBACK cb) PURE;
     STDMETHOD(EvictManagedResources)(THIS) PURE;
     STDMETHOD_(UINT, GetAvailableTextureMem)(THIS) PURE;
     STDMETHOD(GetBackBuffer)(THIS_ UINT iSwapChain, UINT BackBuffer, WINED3DBACKBUFFER_TYPE, struct IWineD3DSurface** ppBackBuffer) PURE;
@@ -380,6 +393,7 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
     STDMETHOD(GetDeviceCaps)(THIS_ WINED3DCAPS* pCaps) PURE;
     STDMETHOD(GetDirect3D)(THIS_ IWineD3D** ppD3D) PURE;
     STDMETHOD(GetDisplayMode)(THIS_ UINT iSwapChain, WINED3DDISPLAYMODE* pMode) PURE;
+    STDMETHOD(SetDisplayMode)(THIS_ UINT iSwapChain, WINED3DDISPLAYMODE* pMode) PURE;
     STDMETHOD(GetHWND)(THIS_ HWND *hwnd) PURE;
     STDMETHOD(SetHWND)(THIS_ HWND hwnd) PURE;
     STDMETHOD_(UINT, GetNumberOfSwapChains)(THIS) PURE;
@@ -391,6 +405,8 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
     STDMETHOD_(void, SetCursorPosition)(THIS_ int XScreenSpace, int YScreenSpace, DWORD Flags) PURE;
     STDMETHOD_(BOOL, ShowCursor)(THIS_ BOOL bShow) PURE;
     STDMETHOD(TestCooperativeLevel)(THIS) PURE;
+    STDMETHOD(EnumZBufferFormats)(THIS_ D3DCB_ENUMPIXELFORMATS Callback, void *Context) PURE;
+    STDMETHOD(EnumTextureFormats)(THIS_ D3DCB_ENUMPIXELFORMATS Callback, void *Context) PURE;
     STDMETHOD(SetClipPlane)(THIS_ DWORD  Index,CONST float * pPlane) PURE;
     STDMETHOD(GetClipPlane)(THIS_ DWORD  Index,float * pPlane) PURE;
     STDMETHOD(SetClipStatus)(THIS_ CONST WINED3DCLIPSTATUS * pClipStatus) PURE;
@@ -517,6 +533,7 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
 #define IWineD3DDevice_CreatePalette(p, a, b, c, d)             (p)->lpVtbl->CreatePalette(p, a, b, c, d)
 #define IWineD3DDevice_Init3D(p, a, b)                          (p)->lpVtbl->Init3D(p, a, b)
 #define IWineD3DDevice_Uninit3D(p)                              (p)->lpVtbl->Uninit3D(p)
+#define IWineD3DDevice_EnumDisplayModes(p,a,b,c,d,e,f)          (p)->lpVtbl->EnumDisplayModes(p,a,b,c,d,e,f)
 #define IWineD3DDevice_EvictManagedResources(p)                 (p)->lpVtbl->EvictManagedResources(p)
 #define IWineD3DDevice_GetAvailableTextureMem(p)                (p)->lpVtbl->GetAvailableTextureMem(p)
 #define IWineD3DDevice_GetBackBuffer(p,a,b,c,d)                 (p)->lpVtbl->GetBackBuffer(p,a,b,c,d)
@@ -524,6 +541,7 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
 #define IWineD3DDevice_GetDeviceCaps(p,a)                       (p)->lpVtbl->GetDeviceCaps(p,a)
 #define IWineD3DDevice_GetDirect3D(p,a)                         (p)->lpVtbl->GetDirect3D(p,a)
 #define IWineD3DDevice_GetDisplayMode(p,a,b)                    (p)->lpVtbl->GetDisplayMode(p,a,b)
+#define IWineD3DDevice_SetDisplayMode(p,a,b)                    (p)->lpVtbl->SetDisplayMode(p,a,b)
 #define IWineD3DDevice_GetHWND(p, a)                            (p)->lpVtbl->GetHWND(p, a)
 #define IWineD3DDevice_SetHWND(p, a)                            (p)->lpVtbl->SetHWND(p, a)
 #define IWineD3DDevice_GetNumberOfSwapChains(p)                 (p)->lpVtbl->GetNumberOfSwapChains(p)
@@ -535,6 +553,8 @@ DECLARE_INTERFACE_(IWineD3DDevice,IWineD
 #define IWineD3DDevice_TestCooperativeLevel(p)                  (p)->lpVtbl->TestCooperativeLevel(p)
 #define IWineD3DDevice_SetFVF(p,a)                              (p)->lpVtbl->SetFVF(p,a)
 #define IWineD3DDevice_GetFVF(p,a)                              (p)->lpVtbl->GetFVF(p,a)
+#define IWineD3DDevice_EnumZBufferFormats(p, a, b)              (p)->lpVtbl->EnumZBufferFormats(p, a, b)
+#define IWineD3DDevice_EnumTextureFormats(p, a, b)              (p)->lpVtbl->EnumTextureFormats(p, a, b)
 #define IWineD3DDevice_SetClipPlane(p,a,b)                      (p)->lpVtbl->SetClipPlane(p,a,b)
 #define IWineD3DDevice_GetClipPlane(p,a,b)                      (p)->lpVtbl->GetClipPlane(p,a,b)
 #define IWineD3DDevice_SetClipStatus(p,a)                       (p)->lpVtbl->SetClipStatus(p,a)




More information about the wine-cvs mailing list