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