Henri Verbeet : dxgi: Add the IDXGIDevice interface.

Alexandre Julliard julliard at winehq.org
Thu Oct 23 08:38:07 CDT 2008


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

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed Oct 22 17:41:16 2008 +0200

dxgi: Add the IDXGIDevice interface.

---

 include/dxgi.idl |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/include/dxgi.idl b/include/dxgi.idl
index 8e5563e..1f0c25e 100644
--- a/include/dxgi.idl
+++ b/include/dxgi.idl
@@ -38,6 +38,12 @@ typedef enum DXGI_SWAP_EFFECT {
     DXGI_SWAP_EFFECT_SEQUENTIAL = 1,
 } DXGI_SWAP_EFFECT;
 
+typedef enum DXGI_RESIDENCY {
+    DXGI_RESIDENCY_FULLY_RESIDENT               = 1,
+    DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY    = 2,
+    DXGI_RESIDENCY_EVICTED_TO_DISK              = 3,
+} DXGI_RESIDENCY;
+
 typedef struct DXGI_SURFACE_DESC {
     UINT Width;
     UINT Height;
@@ -89,6 +95,10 @@ typedef struct DXGI_SWAP_CHAIN_DESC {
     UINT Flags;
 } DXGI_SWAP_CHAIN_DESC;
 
+typedef struct DXGI_SHARED_RESOURCE {
+    HANDLE Handle;
+} DXGI_SHARED_RESOURCE;
+
 [
     object,
     local,
@@ -294,3 +304,33 @@ interface IDXGIFactory : IDXGIObject
 }
 
 [local] HRESULT CreateDXGIFactory(REFIID riid, void **factory);
+
+[
+    object,
+    local,
+    uuid(54ec77fa-1377-44e6-8c32-88fd5f44c84c)
+]
+interface IDXGIDevice : IDXGIObject
+{
+    HRESULT GetAdapter(
+        [out] IDXGIAdapter **adapter
+    );
+    HRESULT CreateSurface(
+        [in] const DXGI_SURFACE_DESC *desc,
+        [in] UINT surface_count,
+        [in] DXGI_USAGE usage,
+        [in] const DXGI_SHARED_RESOURCE *shared_resource,
+        [out] IDXGISurface **surface
+    );
+    HRESULT QueryResourceResidency(
+        [in] IUnknown *const *resources,
+        [out] DXGI_RESIDENCY *residency,
+        [in] UINT resource_count
+    );
+    HRESULT SetGPUThreadPriority(
+        [in] INT priority
+    );
+    HRESULT GetGPUThreadPriority(
+        [out] INT *priority
+    );
+}




More information about the wine-cvs mailing list