Henri Verbeet : dxgi: Add a separate function for dxgi_adapter initialization.

Alexandre Julliard julliard at winehq.org
Fri Sep 11 10:52:20 CDT 2009


Module: wine
Branch: master
Commit: 7170a20239fc74fdb9ac6c69734070cb405abc7f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7170a20239fc74fdb9ac6c69734070cb405abc7f

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Thu Sep 10 16:57:19 2009 +0200

dxgi: Add a separate function for dxgi_adapter initialization.

---

 dlls/dxgi/adapter.c      |   10 +++++++++-
 dlls/dxgi/dxgi_main.c    |    5 +----
 dlls/dxgi/dxgi_private.h |    3 ++-
 3 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/dlls/dxgi/adapter.c b/dlls/dxgi/adapter.c
index d2c64ad..2bc5fcc 100644
--- a/dlls/dxgi/adapter.c
+++ b/dlls/dxgi/adapter.c
@@ -142,7 +142,7 @@ static UINT STDMETHODCALLTYPE dxgi_adapter_get_ordinal(IWineDXGIAdapter *iface)
     return This->ordinal;
 }
 
-const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl =
+static const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl =
 {
     /* IUnknown methods */
     dxgi_adapter_QueryInterface,
@@ -160,3 +160,11 @@ const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl =
     /* IWineDXGIAdapter methods */
     dxgi_adapter_get_ordinal,
 };
+
+void dxgi_adapter_init(struct dxgi_adapter *adapter, IDXGIFactory *parent, UINT ordinal)
+{
+    adapter->vtbl = &dxgi_adapter_vtbl;
+    adapter->parent = parent;
+    adapter->refcount = 1;
+    adapter->ordinal = ordinal;
+}
diff --git a/dlls/dxgi/dxgi_main.c b/dlls/dxgi/dxgi_main.c
index f4acef3..876a85c 100644
--- a/dlls/dxgi/dxgi_main.c
+++ b/dlls/dxgi/dxgi_main.c
@@ -129,10 +129,7 @@ HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory)
             goto fail;
         }
 
-        adapter->vtbl = &dxgi_adapter_vtbl;
-        adapter->refcount = 1;
-        adapter->ordinal = i;
-        adapter->parent = (IDXGIFactory *)object;
+        dxgi_adapter_init(adapter, (IDXGIFactory *)object, i);
         object->adapters[i] = (IDXGIAdapter *)adapter;
     }
 
diff --git a/dlls/dxgi/dxgi_private.h b/dlls/dxgi/dxgi_private.h
index 54446ef..a5b62b8 100644
--- a/dlls/dxgi/dxgi_private.h
+++ b/dlls/dxgi/dxgi_private.h
@@ -64,7 +64,6 @@ struct dxgi_device
 };
 
 /* IDXGIAdapter */
-extern const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl;
 struct dxgi_adapter
 {
     const struct IWineDXGIAdapterVtbl *vtbl;
@@ -73,6 +72,8 @@ struct dxgi_adapter
     UINT ordinal;
 };
 
+void dxgi_adapter_init(struct dxgi_adapter *adapter, IDXGIFactory *parent, UINT ordinal);
+
 /* IDXGISwapChain */
 extern const struct IDXGISwapChainVtbl dxgi_swapchain_vtbl;
 struct dxgi_swapchain




More information about the wine-cvs mailing list