Henri Verbeet : d3d10: Add a debug function for D3D10_DRIVER_TYPE.

Alexandre Julliard julliard at winehq.org
Tue Oct 21 07:06:14 CDT 2008


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Mon Oct 20 15:28:08 2008 +0200

d3d10: Add a debug function for D3D10_DRIVER_TYPE.

---

 dlls/d3d10/Makefile.in     |    3 ++-
 dlls/d3d10/d3d10_main.c    |    7 ++-----
 dlls/d3d10/d3d10_private.h |   33 +++++++++++++++++++++++++++++++++
 dlls/d3d10/utils.c         |   43 +++++++++++++++++++++++++++++++++++++++++++
 include/Makefile.in        |    1 +
 include/d3d10.idl          |    2 +-
 include/d3d10misc.h        |   39 +++++++++++++++++++++++++++++++++++++++
 7 files changed, 121 insertions(+), 7 deletions(-)

diff --git a/dlls/d3d10/Makefile.in b/dlls/d3d10/Makefile.in
index d9bb511..0acf4c0 100644
--- a/dlls/d3d10/Makefile.in
+++ b/dlls/d3d10/Makefile.in
@@ -7,7 +7,8 @@ IMPORTLIB = d3d10
 IMPORTS   = dxguid uuid wined3d kernel32
 
 C_SRCS = \
-	d3d10_main.c
+	d3d10_main.c \
+	utils.c
 
 RC_SRCS = version.rc
 
diff --git a/dlls/d3d10/d3d10_main.c b/dlls/d3d10/d3d10_main.c
index 8d80c41..c0a65f4 100644
--- a/dlls/d3d10/d3d10_main.c
+++ b/dlls/d3d10/d3d10_main.c
@@ -20,12 +20,9 @@
  */
 
 #include "config.h"
-#include <stdarg.h>
+#include "wine/port.h"
 
-#include "windef.h"
-#include "winbase.h"
-#include "winuser.h"
-#include "wine/debug.h"
+#include "d3d10_private.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(d3d10);
 
diff --git a/dlls/d3d10/d3d10_private.h b/dlls/d3d10/d3d10_private.h
new file mode 100644
index 0000000..6c6bf12
--- /dev/null
+++ b/dlls/d3d10/d3d10_private.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2008 Henri Verbeet for CodeWeavers
+ *
+ * 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
+ */
+
+#ifndef __WINE_D3D10_PRIVATE_H
+#define __WINE_D3D10_PRIVATE_H
+
+#include "wine/debug.h"
+
+#include "winbase.h"
+#include "winuser.h"
+#include "objbase.h"
+
+#include "d3d10.h"
+
+/* TRACE helper functions */
+const char *debug_d3d10_driver_type(D3D10_DRIVER_TYPE driver_type);
+
+#endif /* __WINE_D3D10_PRIVATE_H */
diff --git a/dlls/d3d10/utils.c b/dlls/d3d10/utils.c
new file mode 100644
index 0000000..461056b
--- /dev/null
+++ b/dlls/d3d10/utils.c
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2008 Henri Verbeet for CodeWeavers
+ *
+ * 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 "config.h"
+#include "wine/port.h"
+
+#include "d3d10_private.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(d3d10);
+
+#define WINE_D3D10_TO_STR(x) case x: return #x
+
+const char *debug_d3d10_driver_type(D3D10_DRIVER_TYPE driver_type)
+{
+    switch(driver_type)
+    {
+        WINE_D3D10_TO_STR(D3D10_DRIVER_TYPE_HARDWARE);
+        WINE_D3D10_TO_STR(D3D10_DRIVER_TYPE_REFERENCE);
+        WINE_D3D10_TO_STR(D3D10_DRIVER_TYPE_NULL);
+        WINE_D3D10_TO_STR(D3D10_DRIVER_TYPE_SOFTWARE);
+        default:
+            FIXME("Unrecognized D3D10_DRIVER_TYPE %#x\n", driver_type);
+            return "unrecognized";
+    }
+}
+
+#undef WINE_D3D10_TO_STR
diff --git a/include/Makefile.in b/include/Makefile.in
index d7e85f4..c70e6db 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -112,6 +112,7 @@ SRCDIR_INCLUDES = \
 	custcntl.h \
 	cvconst.h \
 	d3d.h \
+	d3d10misc.h \
 	d3d8.h \
 	d3d8caps.h \
 	d3d8types.h \
diff --git a/include/d3d10.idl b/include/d3d10.idl
index 032063f..ad90ede 100644
--- a/include/d3d10.idl
+++ b/include/d3d10.idl
@@ -1533,7 +1533,7 @@ interface ID3D10Multithread : IUnknown
         BOOL GetMultithreadProtected();
 }
 
-/* TODO: Include "d310misc.h" as soon as it exists */
+cpp_quote("#include <d3d10misc.h>")
 /* TODO: Include "d310effect.h" as soon as it exists */
 /* TODO: Include "d310shader.h" as soon as it exists */
 /* TODO: Include "d310sdklayers.h" as soon as it exists */
diff --git a/include/d3d10misc.h b/include/d3d10misc.h
new file mode 100644
index 0000000..69b8069
--- /dev/null
+++ b/include/d3d10misc.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2008 Henri Verbeet for CodeWeavers
+ *
+ * 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
+ */
+
+#ifndef __D3D10MISC_H__
+#define __D3D10MISC_H__
+
+#include "d3d10.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum D3D10_DRIVER_TYPE {
+    D3D10_DRIVER_TYPE_HARDWARE  = 0,
+    D3D10_DRIVER_TYPE_REFERENCE = 1,
+    D3D10_DRIVER_TYPE_NULL      = 2,
+    D3D10_DRIVER_TYPE_SOFTWARE  = 3,
+} D3D10_DRIVER_TYPE;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __D3D10MISC_H__ */




More information about the wine-cvs mailing list