Rico Schüller : d3d10: Add the ID3D10ShaderReflectionConstantBuffer interface.

Alexandre Julliard julliard at winehq.org
Fri Jul 23 10:05:46 CDT 2010


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

Author: Rico Schüller <kgbricola at web.de>
Date:   Wed Jul 21 20:44:47 2010 +0200

d3d10: Add the ID3D10ShaderReflectionConstantBuffer interface.

---

 include/d3d10shader.h |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/include/d3d10shader.h b/include/d3d10shader.h
index 862810f..fef32e7 100644
--- a/include/d3d10shader.h
+++ b/include/d3d10shader.h
@@ -130,6 +130,15 @@ typedef struct _D3D10_SIGNATURE_PARAMETER_DESC
     BYTE ReadWriteMask;
 } D3D10_SIGNATURE_PARAMETER_DESC;
 
+typedef struct _D3D10_SHADER_BUFFER_DESC
+{
+    LPCSTR Name;
+    D3D10_CBUFFER_TYPE Type;
+    UINT Variables;
+    UINT Size;
+    UINT uFlags;
+} D3D10_SHADER_BUFFER_DESC;
+
 typedef struct _D3D10_SHADER_VARIABLE_DESC
 {
     LPCSTR Name;
@@ -172,6 +181,17 @@ DECLARE_INTERFACE(ID3D10ShaderReflectionVariable)
 };
 #undef INTERFACE
 
+DEFINE_GUID(IID_ID3D10ShaderReflectionConstantBuffer, 0x66c66a94, 0xdddd, 0x4b62, 0xa6, 0x6a, 0xf0, 0xda, 0x33, 0xc2, 0xb4, 0xd0);
+
+#define INTERFACE ID3D10ShaderReflectionConstantBuffer
+DECLARE_INTERFACE(ID3D10ShaderReflectionConstantBuffer)
+{
+    STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_BUFFER_DESC *desc) PURE;
+    STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByIndex)(THIS_ UINT index) PURE;
+    STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByName)(THIS_ LPCSTR name) PURE;
+};
+#undef INTERFACE
+
 LPCSTR WINAPI D3D10GetVertexShaderProfile(ID3D10Device *device);
 LPCSTR WINAPI D3D10GetGeometryShaderProfile(ID3D10Device *device);
 LPCSTR WINAPI D3D10GetPixelShaderProfile(ID3D10Device *device);




More information about the wine-cvs mailing list