Module: wine Branch: master Commit: 56692e9c5d0a63458cb5551535fab5bcd6674ce9 URL: http://source.winehq.org/git/wine.git/?a=commit;h=56692e9c5d0a63458cb5551535...
Author: Henri Verbeet hverbeet@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 */