Alistair Leslie-Hughes : d3dx10_43: Add ID3DX10ThreadPump interface.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Sep 16 09:54:07 CDT 2015


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

Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date:   Wed Jul 15 13:37:50 2015 +1000

d3dx10_43: Add ID3DX10ThreadPump interface.

---

 include/Makefile.in    |  1 +
 include/d3dx10core.idl | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+)

diff --git a/include/Makefile.in b/include/Makefile.in
index b1104ee..84a6381 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -32,6 +32,7 @@ PUBLIC_IDL_H_SRCS = \
 	d3d11_1.idl \
 	d3d11sdklayers.idl \
 	d3dcommon.idl \
+	d3dx10core.idl \
 	ddstream.idl \
 	devicetopology.idl \
 	dimm.idl \
diff --git a/include/d3dx10core.idl b/include/d3dx10core.idl
new file mode 100644
index 0000000..f0d8ff6
--- /dev/null
+++ b/include/d3dx10core.idl
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2015 Alistair Leslie-Hughes
+ *
+ * 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
+ */
+
+import "oaidl.idl";
+import "ocidl.idl";
+import "dxgi.idl";
+import "d3dcommon.idl";
+
+[
+    object,
+    local,
+    pointer_default(unique)
+]
+interface ID3DX10DataLoader
+{
+    HRESULT Load();
+    HRESULT Decompress([out] void **data, [in] SIZE_T *bytes);
+    HRESULT Destroy();
+};
+
+[
+    object,
+    local,
+    pointer_default(unique)
+]
+interface ID3DX10DataProcessor
+{
+    HRESULT Process([in] void *data, [in] SIZE_T bytes);
+    HRESULT CreateDeviceObject([out] void **dataobject);
+    HRESULT Destroy();
+};
+
+
+[
+    object,
+    local,
+    pointer_default(unique),
+    uuid(c93fecfa-6967-478a-abbc-402d90621fcb)
+]
+interface ID3DX10ThreadPump : IUnknown
+{
+    HRESULT AddWorkItem([in] ID3DX10DataLoader *loader, [in] ID3DX10DataProcessor *processor,
+                        [in] HRESULT *result, [out] void **object);
+    UINT GetWorkItemCount();
+
+    HRESULT WaitForAllItems();
+    HRESULT ProcessDeviceWorkItems([in] UINT count);
+
+    HRESULT PurgeAllItems();
+    HRESULT GetQueueStatus([in] UINT *queue, [in] UINT *processqueue, [in] UINT *devicequeue);
+};




More information about the wine-cvs mailing list