Henri Verbeet : dxgi: Add a stub for DXGID3D10RegisterLayers.

Alexandre Julliard julliard at winehq.org
Thu Nov 13 08:51:41 CST 2008


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed Nov 12 15:43:46 2008 +0100

dxgi: Add a stub for DXGID3D10RegisterLayers.

---

 dlls/dxgi/dxgi.spec      |    1 +
 dlls/dxgi/dxgi_main.c    |    7 +++++++
 dlls/dxgi/dxgi_private.h |   32 ++++++++++++++++++++++++++++++++
 3 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/dlls/dxgi/dxgi.spec b/dlls/dxgi/dxgi.spec
index 1c5069d..974b830 100644
--- a/dlls/dxgi/dxgi.spec
+++ b/dlls/dxgi/dxgi.spec
@@ -1 +1,2 @@
 @ stdcall CreateDXGIFactory(ptr ptr)
+@ stdcall DXGID3D10RegisterLayers(ptr long)
diff --git a/dlls/dxgi/dxgi_main.c b/dlls/dxgi/dxgi_main.c
index 44b4eee..62e6f92 100644
--- a/dlls/dxgi/dxgi_main.c
+++ b/dlls/dxgi/dxgi_main.c
@@ -62,3 +62,10 @@ HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory)
 
     return hr;
 }
+
+HRESULT WINAPI DXGID3D10RegisterLayers(const struct dxgi_device_layer *layers, UINT layer_count)
+{
+    FIXME("layers %p, layer_count %u stub!\n", layers, layer_count);
+
+    return E_NOTIMPL;
+}
diff --git a/dlls/dxgi/dxgi_private.h b/dlls/dxgi/dxgi_private.h
index 2c828e3..051cd87 100644
--- a/dlls/dxgi/dxgi_private.h
+++ b/dlls/dxgi/dxgi_private.h
@@ -63,4 +63,36 @@ struct dxgi_swapchain
     LONG refcount;
 };
 
+/* Layered device */
+enum dxgi_device_layer_id
+{
+    DXGI_DEVICE_LAYER_DEBUG1        = 0x8,
+    DXGI_DEVICE_LAYER_THREAD_SAFE   = 0x10,
+    DXGI_DEVICE_LAYER_DEBUG2        = 0x20,
+    DXGI_DEVICE_LAYER_SWITCH_TO_REF = 0x30,
+    DXGI_DEVICE_LAYER_D3D10_DEVICE  = 0xffffffff,
+};
+
+struct layer_get_size_args
+{
+    DWORD unknown0;
+    DWORD unknown1;
+    DWORD *unknown2;
+    DWORD *unknown3;
+    IDXGIAdapter *adapter;
+    WORD interface_major;
+    WORD interface_minor;
+    WORD version_build;
+    WORD version_revision;
+};
+
+struct dxgi_device_layer
+{
+    enum dxgi_device_layer_id id;
+    HRESULT (WINAPI *init)(enum dxgi_device_layer_id id, DWORD *count, DWORD *values);
+    UINT (WINAPI *get_size)(enum dxgi_device_layer_id id, struct layer_get_size_args *args, DWORD unknown0);
+    HRESULT (WINAPI *create)(enum dxgi_device_layer_id id, void **layer_base, DWORD unknown0,
+            void *device_object, REFIID riid, void **device_layer);
+};
+
 #endif /* __WINE_DXGI_PRIVATE_H */




More information about the wine-cvs mailing list