Austin English : d3d11: Add a stub for D3D11CreateDevice.

Alexandre Julliard julliard at winehq.org
Wed Feb 13 13:54:29 CST 2013


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

Author: Austin English <austinenglish at gmail.com>
Date:   Tue Feb 12 15:44:15 2013 -0800

d3d11: Add a stub for D3D11CreateDevice.

---

 dlls/d3d11/Makefile.in  |    3 ++
 dlls/d3d11/d3d11.spec   |    2 +-
 dlls/d3d11/d3d11_main.c |   56 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 60 insertions(+), 1 deletions(-)

diff --git a/dlls/d3d11/Makefile.in b/dlls/d3d11/Makefile.in
index ef3c5a0..da7bbe6 100644
--- a/dlls/d3d11/Makefile.in
+++ b/dlls/d3d11/Makefile.in
@@ -1,3 +1,6 @@
 MODULE    = d3d11.dll
 
+C_SRCS = \
+	d3d11_main.c
+
 @MAKE_DLL_RULES@
diff --git a/dlls/d3d11/d3d11.spec b/dlls/d3d11/d3d11.spec
index 0ff00d2..ffe0712 100644
--- a/dlls/d3d11/d3d11.spec
+++ b/dlls/d3d11/d3d11.spec
@@ -2,7 +2,7 @@
 @ stub D3D11CoreCreateLayeredDevice
 @ stub D3D11CoreGetLayeredDeviceSize
 @ stub D3D11CoreRegisterLayers
-@ stub D3D11CreateDevice
+@ stdcall D3D11CreateDevice(ptr long ptr long long long long ptr ptr ptr)
 @ stub D3D11CreateDeviceAndSwapChain
 @ stub D3DKMTCloseAdapter
 @ stub D3DKMTCreateAllocation
diff --git a/dlls/d3d11/d3d11_main.c b/dlls/d3d11/d3d11_main.c
new file mode 100644
index 0000000..4091bca
--- /dev/null
+++ b/dlls/d3d11/d3d11_main.c
@@ -0,0 +1,56 @@
+/*
+ * Direct3D 11
+ *
+ * Copyright 2013 Austin English
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ *
+ */
+
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "d3d11.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(d3d11);
+
+const char *debug_d3d_driver_type(D3D_DRIVER_TYPE driver_type)
+{
+    switch(driver_type)
+    {
+#define D3D11_TO_STR(x) case x: return #x
+        D3D11_TO_STR(D3D_DRIVER_TYPE_UNKNOWN);
+        D3D11_TO_STR(D3D_DRIVER_TYPE_HARDWARE);
+        D3D11_TO_STR(D3D_DRIVER_TYPE_REFERENCE);
+        D3D11_TO_STR(D3D_DRIVER_TYPE_NULL);
+        D3D11_TO_STR(D3D_DRIVER_TYPE_SOFTWARE);
+        D3D11_TO_STR(D3D_DRIVER_TYPE_WARP);
+#undef D3D11_TO_STR
+        default:
+            return wine_dbg_sprintf("Unrecognized D3D_DRIVER_TYPE %#x\n", driver_type);
+    }
+}
+
+HRESULT WINAPI D3D11CreateDevice(IDXGIAdapter *adapter, D3D_DRIVER_TYPE driver_type, HMODULE swrast, UINT flags,
+                                 const D3D_FEATURE_LEVEL feature_levels, UINT levels, UINT sdk_version,
+                                 ID3D11Device **device, D3D_FEATURE_LEVEL *feature_level, ID3D11DeviceContext **context)
+{
+    FIXME("stub: adapter %p, driver_type %s, swrast %p, flags %#x, feature_levels %d, levels %#x, sdk_version %d, "
+          "device %p, feature_level %p, context %p\n", adapter, debug_d3d_driver_type(driver_type), swrast,
+          flags, feature_levels, levels, sdk_version, device, feature_level, context);
+    return E_OUTOFMEMORY;
+}




More information about the wine-cvs mailing list