From 9782b29faa129e4bac5931a929602f18d2eb56ce Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Fonseca?= Date: Sat, 14 Apr 2012 22:02:42 +0100 Subject: [PATCH] Use ObjPointers consistenty. --- specs/d3d.py | 53 ++++----- specs/d3d10.py | 142 +++++++++++----------- specs/d3d10_1.py | 10 +- specs/d3d10misc.py | 6 +- specs/d3d10sdklayers.py | 4 +- specs/d3d11.py | 256 ++++++++++++++++++++-------------------- specs/d3d11sdklayers.py | 8 +- specs/d3d11shader.py | 30 ++--- specs/d3d8.py | 28 ++--- specs/d3d9.py | 4 +- specs/ddraw.py | 63 +++++----- specs/dxgi.py | 38 +++--- specs/winapi.py | 2 +- wrappers/trace.py | 35 +++--- 14 files changed, 338 insertions(+), 341 deletions(-) diff --git a/specs/d3d.py b/specs/d3d.py index 2684e6b..c390501 100644 --- a/specs/d3d.py +++ b/specs/d3d.py @@ -30,9 +30,6 @@ from ddraw import * from d3dtypes import * from d3dcaps import * -def OutPointer(type): - return Out(Pointer(type), "out") - d3dnextFlags = Flags(DWORD, [ "D3DNEXT_NEXT", "D3DNEXT_HEAD", @@ -155,31 +152,31 @@ IDirect3DViewport3 = Interface("IDirect3DViewport3", IDirect3DViewport2) IDirect3DVertexBuffer = Interface("IDirect3DVertexBuffer", IUnknown) IDirect3DVertexBuffer7 = Interface("IDirect3DVertexBuffer7", IUnknown) -LPUNKNOWN = Pointer(IUnknown) - -LPDIRECT3D = Pointer(IDirect3D) -LPDIRECT3DDEVICE = Pointer(IDirect3DDevice) -LPDIRECT3DEXECUTEBUFFER = Pointer(IDirect3DExecuteBuffer) -LPDIRECT3DLIGHT = Pointer(IDirect3DLight) -LPDIRECT3DMATERIAL = Pointer(IDirect3DMaterial) -LPDIRECT3DTEXTURE = Pointer(IDirect3DTexture) -LPDIRECT3DVIEWPORT = Pointer(IDirect3DViewport) - -LPDIRECT3D2 = Pointer(IDirect3D2) -LPDIRECT3DDEVICE2 = Pointer(IDirect3DDevice2) -LPDIRECT3DMATERIAL2 = Pointer(IDirect3DMaterial2) -LPDIRECT3DTEXTURE2 = Pointer(IDirect3DTexture2) -LPDIRECT3DVIEWPORT2 = Pointer(IDirect3DViewport2) - -LPDIRECT3D3 = Pointer(IDirect3D3) -LPDIRECT3DDEVICE3 = Pointer(IDirect3DDevice3) -LPDIRECT3DMATERIAL3 = Pointer(IDirect3DMaterial3) -LPDIRECT3DVIEWPORT3 = Pointer(IDirect3DViewport3) -LPDIRECT3DVERTEXBUFFER = Pointer(IDirect3DVertexBuffer) - -LPDIRECT3D7 = Pointer(IDirect3D7) -LPDIRECT3DDEVICE7 = Pointer(IDirect3DDevice7) -LPDIRECT3DVERTEXBUFFER7 = Pointer(IDirect3DVertexBuffer7) +LPUNKNOWN = ObjPointer(IUnknown) + +LPDIRECT3D = ObjPointer(IDirect3D) +LPDIRECT3DDEVICE = ObjPointer(IDirect3DDevice) +LPDIRECT3DEXECUTEBUFFER = ObjPointer(IDirect3DExecuteBuffer) +LPDIRECT3DLIGHT = ObjPointer(IDirect3DLight) +LPDIRECT3DMATERIAL = ObjPointer(IDirect3DMaterial) +LPDIRECT3DTEXTURE = ObjPointer(IDirect3DTexture) +LPDIRECT3DVIEWPORT = ObjPointer(IDirect3DViewport) + +LPDIRECT3D2 = ObjPointer(IDirect3D2) +LPDIRECT3DDEVICE2 = ObjPointer(IDirect3DDevice2) +LPDIRECT3DMATERIAL2 = ObjPointer(IDirect3DMaterial2) +LPDIRECT3DTEXTURE2 = ObjPointer(IDirect3DTexture2) +LPDIRECT3DVIEWPORT2 = ObjPointer(IDirect3DViewport2) + +LPDIRECT3D3 = ObjPointer(IDirect3D3) +LPDIRECT3DDEVICE3 = ObjPointer(IDirect3DDevice3) +LPDIRECT3DMATERIAL3 = ObjPointer(IDirect3DMaterial3) +LPDIRECT3DVIEWPORT3 = ObjPointer(IDirect3DViewport3) +LPDIRECT3DVERTEXBUFFER = ObjPointer(IDirect3DVertexBuffer) + +LPDIRECT3D7 = ObjPointer(IDirect3D7) +LPDIRECT3DDEVICE7 = ObjPointer(IDirect3DDevice7) +LPDIRECT3DVERTEXBUFFER7 = ObjPointer(IDirect3DVertexBuffer7) IDirect3D.methods += [ Method(HRESULT, "Initialize", [(REFCLSID, "riid")]), diff --git a/specs/d3d10.py b/specs/d3d10.py index 474437d..a72d321 100644 --- a/specs/d3d10.py +++ b/specs/d3d10.py @@ -687,7 +687,7 @@ ID3D10Device = Interface("ID3D10Device", IUnknown) ID3D10Multithread = Interface("ID3D10Multithread", IUnknown) ID3D10DeviceChild.methods += [ - Method(Void, "GetDevice", [Out(Pointer(Pointer(ID3D10Device)), "ppDevice")]), + Method(Void, "GetDevice", [Out(Pointer(ObjPointer(ID3D10Device)), "ppDevice")]), Method(HRESULT, "GetPrivateData", [(REFGUID, "guid"), Out(Pointer(UINT), "pDataSize"), Out(OpaquePointer(Void), "pData")]), Method(HRESULT, "SetPrivateData", [(REFGUID, "guid"), (UINT, "DataSize"), (OpaqueBlob(Const(Void), "DataSize"), "pData")]), Method(HRESULT, "SetPrivateDataInterface", [(REFGUID, "guid"), (OpaquePointer(Const(IUnknown)), "pData")]), @@ -724,7 +724,7 @@ ID3D10Texture3D.methods += [ ] ID3D10View.methods += [ - Method(Void, "GetResource", [Out(Pointer(Pointer(ID3D10Resource)), "ppResource")]), + Method(Void, "GetResource", [Out(Pointer(ObjPointer(ID3D10Resource)), "ppResource")]), ] ID3D10DepthStencilView.methods += [ @@ -771,64 +771,64 @@ ID3D10Query.methods += [ ] ID3D10Device.methods += [ - Method(Void, "VSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(Pointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "PSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(Pointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "PSSetShader", [(Pointer(ID3D10PixelShader), "pPixelShader")]), - Method(Void, "PSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(Pointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), - Method(Void, "VSSetShader", [(Pointer(ID3D10VertexShader), "pVertexShader")]), + Method(Void, "VSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(ObjPointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "PSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(ObjPointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "PSSetShader", [(ObjPointer(ID3D10PixelShader), "pPixelShader")]), + Method(Void, "PSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(ObjPointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), + Method(Void, "VSSetShader", [(ObjPointer(ID3D10VertexShader), "pVertexShader")]), Method(Void, "DrawIndexed", [(UINT, "IndexCount"), (UINT, "StartIndexLocation"), (INT, "BaseVertexLocation")]), Method(Void, "Draw", [(UINT, "VertexCount"), (UINT, "StartVertexLocation")]), - Method(Void, "PSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(Pointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "IASetInputLayout", [(Pointer(ID3D10InputLayout), "pInputLayout")]), - Method(Void, "IASetVertexBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(Pointer(ID3D10Buffer)), "NumBuffers"), "ppVertexBuffers"), (Array(Const(UINT), "NumBuffers"), "pStrides"), (Array(Const(UINT), "NumBuffers"), "pOffsets")]), - Method(Void, "IASetIndexBuffer", [(Pointer(ID3D10Buffer), "pIndexBuffer"), (DXGI_FORMAT, "Format"), (UINT, "Offset")]), + Method(Void, "PSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(ObjPointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "IASetInputLayout", [(ObjPointer(ID3D10InputLayout), "pInputLayout")]), + Method(Void, "IASetVertexBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(ObjPointer(ID3D10Buffer)), "NumBuffers"), "ppVertexBuffers"), (Array(Const(UINT), "NumBuffers"), "pStrides"), (Array(Const(UINT), "NumBuffers"), "pOffsets")]), + Method(Void, "IASetIndexBuffer", [(ObjPointer(ID3D10Buffer), "pIndexBuffer"), (DXGI_FORMAT, "Format"), (UINT, "Offset")]), Method(Void, "DrawIndexedInstanced", [(UINT, "IndexCountPerInstance"), (UINT, "InstanceCount"), (UINT, "StartIndexLocation"), (INT, "BaseVertexLocation"), (UINT, "StartInstanceLocation")]), Method(Void, "DrawInstanced", [(UINT, "VertexCountPerInstance"), (UINT, "InstanceCount"), (UINT, "StartVertexLocation"), (UINT, "StartInstanceLocation")]), - Method(Void, "GSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(Pointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "GSSetShader", [(Pointer(ID3D10GeometryShader), "pShader")]), + Method(Void, "GSSetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), (Array(Const(ObjPointer(ID3D10Buffer)), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "GSSetShader", [(ObjPointer(ID3D10GeometryShader), "pShader")]), Method(Void, "IASetPrimitiveTopology", [(D3D10_PRIMITIVE_TOPOLOGY, "Topology")]), - Method(Void, "VSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(Pointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "VSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(Pointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), - Method(Void, "SetPredication", [(Pointer(ID3D10Predicate), "pPredicate"), (BOOL, "PredicateValue")]), - Method(Void, "GSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(Pointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "GSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(Pointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), - Method(Void, "OMSetRenderTargets", [(UINT, "NumViews"), (Array(Const(Pointer(ID3D10RenderTargetView)), "NumViews"), "ppRenderTargetViews"), (Pointer(ID3D10DepthStencilView), "pDepthStencilView")]), - Method(Void, "OMSetBlendState", [(Pointer(ID3D10BlendState), "pBlendState"), (Array(Const(FLOAT), 4), "BlendFactor"), (UINT, "SampleMask")]), - Method(Void, "OMSetDepthStencilState", [(Pointer(ID3D10DepthStencilState), "pDepthStencilState"), (UINT, "StencilRef")]), - Method(Void, "SOSetTargets", [(UINT, "NumBuffers"), (Array(Const(Pointer(ID3D10Buffer)), "NumBuffers"), "ppSOTargets"), (Array(Const(UINT), "NumBuffers"), "pOffsets")]), + Method(Void, "VSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(ObjPointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "VSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(ObjPointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), + Method(Void, "SetPredication", [(ObjPointer(ID3D10Predicate), "pPredicate"), (BOOL, "PredicateValue")]), + Method(Void, "GSSetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), (Array(Const(ObjPointer(ID3D10ShaderResourceView)), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "GSSetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), (Array(Const(ObjPointer(ID3D10SamplerState)), "NumSamplers"), "ppSamplers")]), + Method(Void, "OMSetRenderTargets", [(UINT, "NumViews"), (Array(Const(ObjPointer(ID3D10RenderTargetView)), "NumViews"), "ppRenderTargetViews"), (ObjPointer(ID3D10DepthStencilView), "pDepthStencilView")]), + Method(Void, "OMSetBlendState", [(ObjPointer(ID3D10BlendState), "pBlendState"), (Array(Const(FLOAT), 4), "BlendFactor"), (UINT, "SampleMask")]), + Method(Void, "OMSetDepthStencilState", [(ObjPointer(ID3D10DepthStencilState), "pDepthStencilState"), (UINT, "StencilRef")]), + Method(Void, "SOSetTargets", [(UINT, "NumBuffers"), (Array(Const(ObjPointer(ID3D10Buffer)), "NumBuffers"), "ppSOTargets"), (Array(Const(UINT), "NumBuffers"), "pOffsets")]), Method(Void, "DrawAuto", []), - Method(Void, "RSSetState", [(Pointer(ID3D10RasterizerState), "pRasterizerState")]), + Method(Void, "RSSetState", [(ObjPointer(ID3D10RasterizerState), "pRasterizerState")]), Method(Void, "RSSetViewports", [(UINT, "NumViewports"), (Array(Const(D3D10_VIEWPORT), "NumViewports"), "pViewports")]), Method(Void, "RSSetScissorRects", [(UINT, "NumRects"), (Array(Const(D3D10_RECT), "NumRects"), "pRects")]), - Method(Void, "CopySubresourceRegion", [(Pointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (UINT, "DstX"), (UINT, "DstY"), (UINT, "DstZ"), (Pointer(ID3D10Resource), "pSrcResource"), (UINT, "SrcSubresource"), (Pointer(Const(D3D10_BOX)), "pSrcBox")]), - Method(Void, "CopyResource", [(Pointer(ID3D10Resource), "pDstResource"), (Pointer(ID3D10Resource), "pSrcResource")]), - Method(Void, "UpdateSubresource", [(Pointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (Pointer(Const(D3D10_BOX)), "pDstBox"), (OpaquePointer(Const(Void)), "pSrcData"), (UINT, "SrcRowPitch"), (UINT, "SrcDepthPitch")]), - Method(Void, "ClearRenderTargetView", [(Pointer(ID3D10RenderTargetView), "pRenderTargetView"), (Array(Const(FLOAT), 4), "ColorRGBA")]), - Method(Void, "ClearDepthStencilView", [(Pointer(ID3D10DepthStencilView), "pDepthStencilView"), (D3D10_CLEAR_FLAG, "ClearFlags"), (FLOAT, "Depth"), (UINT8, "Stencil")]), - Method(Void, "GenerateMips", [(Pointer(ID3D10ShaderResourceView), "pShaderResourceView")]), - Method(Void, "ResolveSubresource", [(Pointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (Pointer(ID3D10Resource), "pSrcResource"), (UINT, "SrcSubresource"), (DXGI_FORMAT, "Format")]), - Method(Void, "VSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(Pointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "PSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(Pointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "PSGetShader", [Out(Pointer(Pointer(ID3D10PixelShader)), "ppPixelShader")]), - Method(Void, "PSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(Pointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), - Method(Void, "VSGetShader", [Out(Pointer(Pointer(ID3D10VertexShader)), "ppVertexShader")]), - Method(Void, "PSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(Pointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "IAGetInputLayout", [Out(Pointer(Pointer(ID3D10InputLayout)), "ppInputLayout")]), - Method(Void, "IAGetVertexBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(Pointer(ID3D10Buffer), "NumBuffers"), "ppVertexBuffers"), Out(Array(UINT, "NumBuffers"), "pStrides"), Out(Array(UINT, "NumBuffers"), "pOffsets")]), - Method(Void, "IAGetIndexBuffer", [Out(Pointer(Pointer(ID3D10Buffer)), "pIndexBuffer"), Out(Pointer(DXGI_FORMAT), "Format"), Out(Pointer(UINT), "Offset")]), - Method(Void, "GSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(Pointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), - Method(Void, "GSGetShader", [Out(Pointer(Pointer(ID3D10GeometryShader)), "ppGeometryShader")]), + Method(Void, "CopySubresourceRegion", [(ObjPointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (UINT, "DstX"), (UINT, "DstY"), (UINT, "DstZ"), (ObjPointer(ID3D10Resource), "pSrcResource"), (UINT, "SrcSubresource"), (Pointer(Const(D3D10_BOX)), "pSrcBox")]), + Method(Void, "CopyResource", [(ObjPointer(ID3D10Resource), "pDstResource"), (ObjPointer(ID3D10Resource), "pSrcResource")]), + Method(Void, "UpdateSubresource", [(ObjPointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (Pointer(Const(D3D10_BOX)), "pDstBox"), (OpaquePointer(Const(Void)), "pSrcData"), (UINT, "SrcRowPitch"), (UINT, "SrcDepthPitch")]), + Method(Void, "ClearRenderTargetView", [(ObjPointer(ID3D10RenderTargetView), "pRenderTargetView"), (Array(Const(FLOAT), 4), "ColorRGBA")]), + Method(Void, "ClearDepthStencilView", [(ObjPointer(ID3D10DepthStencilView), "pDepthStencilView"), (D3D10_CLEAR_FLAG, "ClearFlags"), (FLOAT, "Depth"), (UINT8, "Stencil")]), + Method(Void, "GenerateMips", [(ObjPointer(ID3D10ShaderResourceView), "pShaderResourceView")]), + Method(Void, "ResolveSubresource", [(ObjPointer(ID3D10Resource), "pDstResource"), (UINT, "DstSubresource"), (ObjPointer(ID3D10Resource), "pSrcResource"), (UINT, "SrcSubresource"), (DXGI_FORMAT, "Format")]), + Method(Void, "VSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(ObjPointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "PSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(ObjPointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "PSGetShader", [Out(Pointer(ObjPointer(ID3D10PixelShader)), "ppPixelShader")]), + Method(Void, "PSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(ObjPointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), + Method(Void, "VSGetShader", [Out(Pointer(ObjPointer(ID3D10VertexShader)), "ppVertexShader")]), + Method(Void, "PSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(ObjPointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "IAGetInputLayout", [Out(Pointer(ObjPointer(ID3D10InputLayout)), "ppInputLayout")]), + Method(Void, "IAGetVertexBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(ObjPointer(ID3D10Buffer), "NumBuffers"), "ppVertexBuffers"), Out(Array(UINT, "NumBuffers"), "pStrides"), Out(Array(UINT, "NumBuffers"), "pOffsets")]), + Method(Void, "IAGetIndexBuffer", [Out(Pointer(ObjPointer(ID3D10Buffer)), "pIndexBuffer"), Out(Pointer(DXGI_FORMAT), "Format"), Out(Pointer(UINT), "Offset")]), + Method(Void, "GSGetConstantBuffers", [(UINT, "StartSlot"), (UINT, "NumBuffers"), Out(Array(ObjPointer(ID3D10Buffer), "NumBuffers"), "ppConstantBuffers")]), + Method(Void, "GSGetShader", [Out(Pointer(ObjPointer(ID3D10GeometryShader)), "ppGeometryShader")]), Method(Void, "IAGetPrimitiveTopology", [Out(Pointer(D3D10_PRIMITIVE_TOPOLOGY), "pTopology")]), - Method(Void, "VSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(Pointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "VSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(Pointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), - Method(Void, "GetPredication", [Out(Pointer(Pointer(ID3D10Predicate)), "ppPredicate"), Out(Pointer(BOOL), "pPredicateValue")]), - Method(Void, "GSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(Pointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), - Method(Void, "GSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(Pointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), - Method(Void, "OMGetRenderTargets", [(UINT, "NumViews"), Out(Array(Pointer(ID3D10RenderTargetView), "NumViews"), "ppRenderTargetViews"), Out(Pointer(Pointer(ID3D10DepthStencilView)), "ppDepthStencilView")]), - Method(Void, "OMGetBlendState", [Out(Pointer(Pointer(ID3D10BlendState)), "ppBlendState"), Out(Array(FLOAT, 4), "BlendFactor"), Out(Pointer(UINT), "pSampleMask")]), - Method(Void, "OMGetDepthStencilState", [Out(Pointer(Pointer(ID3D10DepthStencilState)), "ppDepthStencilState"), Out(Pointer(UINT), "pStencilRef")]), - Method(Void, "SOGetTargets", [(UINT, "NumBuffers"), Out(Array(Pointer(ID3D10Buffer), "NumBuffers"), "ppSOTargets"), Out(Array(UINT, "NumBuffers"), "pOffsets")]), - Method(Void, "RSGetState", [Out(Pointer(Pointer(ID3D10RasterizerState)), "ppRasterizerState")]), + Method(Void, "VSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(ObjPointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "VSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(ObjPointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), + Method(Void, "GetPredication", [Out(Pointer(ObjPointer(ID3D10Predicate)), "ppPredicate"), Out(Pointer(BOOL), "pPredicateValue")]), + Method(Void, "GSGetShaderResources", [(UINT, "StartSlot"), (UINT, "NumViews"), Out(Array(ObjPointer(ID3D10ShaderResourceView), "NumViews"), "ppShaderResourceViews")]), + Method(Void, "GSGetSamplers", [(UINT, "StartSlot"), (UINT, "NumSamplers"), Out(Array(ObjPointer(ID3D10SamplerState), "NumSamplers"), "ppSamplers")]), + Method(Void, "OMGetRenderTargets", [(UINT, "NumViews"), Out(Array(ObjPointer(ID3D10RenderTargetView), "NumViews"), "ppRenderTargetViews"), Out(Pointer(ObjPointer(ID3D10DepthStencilView)), "ppDepthStencilView")]), + Method(Void, "OMGetBlendState", [Out(Pointer(ObjPointer(ID3D10BlendState)), "ppBlendState"), Out(Array(FLOAT, 4), "BlendFactor"), Out(Pointer(UINT), "pSampleMask")]), + Method(Void, "OMGetDepthStencilState", [Out(Pointer(ObjPointer(ID3D10DepthStencilState)), "ppDepthStencilState"), Out(Pointer(UINT), "pStencilRef")]), + Method(Void, "SOGetTargets", [(UINT, "NumBuffers"), Out(Array(ObjPointer(ID3D10Buffer), "NumBuffers"), "ppSOTargets"), Out(Array(UINT, "NumBuffers"), "pOffsets")]), + Method(Void, "RSGetState", [Out(Pointer(ObjPointer(ID3D10RasterizerState)), "ppRasterizerState")]), Method(Void, "RSGetViewports", [Out(Pointer(UINT), "NumViewports"), Out(Array(D3D10_VIEWPORT, "*NumViewports"), "pViewports")]), Method(Void, "RSGetScissorRects", [Out(Pointer(UINT), "NumRects"), Out(Array(D3D10_RECT, "*NumRects"), "pRects")]), Method(HRESULT, "GetDeviceRemovedReason", []), @@ -839,31 +839,31 @@ ID3D10Device.methods += [ Method(HRESULT, "SetPrivateDataInterface", [(REFGUID, "guid"), (OpaquePointer(Const(IUnknown)), "pData")]), Method(Void, "ClearState", []), Method(Void, "Flush", []), - Method(HRESULT, "CreateBuffer", [(Pointer(Const(D3D10_BUFFER_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(Pointer(ID3D10Buffer)), "ppBuffer")]), - Method(HRESULT, "CreateTexture1D", [(Pointer(Const(D3D10_TEXTURE1D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(Pointer(ID3D10Texture1D)), "ppTexture1D")]), - Method(HRESULT, "CreateTexture2D", [(Pointer(Const(D3D10_TEXTURE2D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(Pointer(ID3D10Texture2D)), "ppTexture2D")]), - Method(HRESULT, "CreateTexture3D", [(Pointer(Const(D3D10_TEXTURE3D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(Pointer(ID3D10Texture3D)), "ppTexture3D")]), - Method(HRESULT, "CreateShaderResourceView", [(Pointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_SHADER_RESOURCE_VIEW_DESC)), "pDesc"), Out(Pointer(Pointer(ID3D10ShaderResourceView)), "ppSRView")]), - Method(HRESULT, "CreateRenderTargetView", [(Pointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_RENDER_TARGET_VIEW_DESC)), "pDesc"), Out(Pointer(Pointer(ID3D10RenderTargetView)), "ppRTView")]), - Method(HRESULT, "CreateDepthStencilView", [(Pointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_DEPTH_STENCIL_VIEW_DESC)), "pDesc"), Out(Pointer(Pointer(ID3D10DepthStencilView)), "ppDepthStencilView")]), - Method(HRESULT, "CreateInputLayout", [(Array(Const(D3D10_INPUT_ELEMENT_DESC), "NumElements"), "pInputElementDescs"), (UINT, "NumElements"), (Blob(Const(Void), "BytecodeLength"), "pShaderBytecodeWithInputSignature"), (SIZE_T, "BytecodeLength"), Out(Pointer(Pointer(ID3D10InputLayout)), "ppInputLayout")]), - Method(HRESULT, "CreateVertexShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(Pointer(ID3D10VertexShader)), "ppVertexShader")]), - Method(HRESULT, "CreateGeometryShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(Pointer(ID3D10GeometryShader)), "ppGeometryShader")]), - Method(HRESULT, "CreateGeometryShaderWithStreamOutput", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), (Array(Const(D3D10_SO_DECLARATION_ENTRY), "NumEntries"), "pSODeclaration"), (UINT, "NumEntries"), (UINT, "OutputStreamStride"), Out(Pointer(Pointer(ID3D10GeometryShader)), "ppGeometryShader")]), - Method(HRESULT, "CreatePixelShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(Pointer(ID3D10PixelShader)), "ppPixelShader")]), - Method(HRESULT, "CreateBlendState", [(Pointer(Const(D3D10_BLEND_DESC)), "pBlendStateDesc"), Out(Pointer(Pointer(ID3D10BlendState)), "ppBlendState")]), - Method(HRESULT, "CreateDepthStencilState", [(Pointer(Const(D3D10_DEPTH_STENCIL_DESC)), "pDepthStencilDesc"), Out(Pointer(Pointer(ID3D10DepthStencilState)), "ppDepthStencilState")]), - Method(HRESULT, "CreateRasterizerState", [(Pointer(Const(D3D10_RASTERIZER_DESC)), "pRasterizerDesc"), Out(Pointer(Pointer(ID3D10RasterizerState)), "ppRasterizerState")]), - Method(HRESULT, "CreateSamplerState", [(Pointer(Const(D3D10_SAMPLER_DESC)), "pSamplerDesc"), Out(Pointer(Pointer(ID3D10SamplerState)), "ppSamplerState")]), - Method(HRESULT, "CreateQuery", [(Pointer(Const(D3D10_QUERY_DESC)), "pQueryDesc"), Out(Pointer(Pointer(ID3D10Query)), "ppQuery")]), - Method(HRESULT, "CreatePredicate", [(Pointer(Const(D3D10_QUERY_DESC)), "pPredicateDesc"), Out(Pointer(Pointer(ID3D10Predicate)), "ppPredicate")]), - Method(HRESULT, "CreateCounter", [(Pointer(Const(D3D10_COUNTER_DESC)), "pCounterDesc"), Out(Pointer(Pointer(ID3D10Counter)), "ppCounter")]), + Method(HRESULT, "CreateBuffer", [(Pointer(Const(D3D10_BUFFER_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(ObjPointer(ID3D10Buffer)), "ppBuffer")]), + Method(HRESULT, "CreateTexture1D", [(Pointer(Const(D3D10_TEXTURE1D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(ObjPointer(ID3D10Texture1D)), "ppTexture1D")]), + Method(HRESULT, "CreateTexture2D", [(Pointer(Const(D3D10_TEXTURE2D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(ObjPointer(ID3D10Texture2D)), "ppTexture2D")]), + Method(HRESULT, "CreateTexture3D", [(Pointer(Const(D3D10_TEXTURE3D_DESC)), "pDesc"), (Pointer(Const(D3D10_SUBRESOURCE_DATA)), "pInitialData"), Out(Pointer(ObjPointer(ID3D10Texture3D)), "ppTexture3D")]), + Method(HRESULT, "CreateShaderResourceView", [(ObjPointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_SHADER_RESOURCE_VIEW_DESC)), "pDesc"), Out(Pointer(ObjPointer(ID3D10ShaderResourceView)), "ppSRView")]), + Method(HRESULT, "CreateRenderTargetView", [(ObjPointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_RENDER_TARGET_VIEW_DESC)), "pDesc"), Out(Pointer(ObjPointer(ID3D10RenderTargetView)), "ppRTView")]), + Method(HRESULT, "CreateDepthStencilView", [(ObjPointer(ID3D10Resource), "pResource"), (Pointer(Const(D3D10_DEPTH_STENCIL_VIEW_DESC)), "pDesc"), Out(Pointer(ObjPointer(ID3D10DepthStencilView)), "ppDepthStencilView")]), + Method(HRESULT, "CreateInputLayout", [(Array(Const(D3D10_INPUT_ELEMENT_DESC), "NumElements"), "pInputElementDescs"), (UINT, "NumElements"), (Blob(Const(Void), "BytecodeLength"), "pShaderBytecodeWithInputSignature"), (SIZE_T, "BytecodeLength"), Out(Pointer(ObjPointer(ID3D10InputLayout)), "ppInputLayout")]), + Method(HRESULT, "CreateVertexShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(ObjPointer(ID3D10VertexShader)), "ppVertexShader")]), + Method(HRESULT, "CreateGeometryShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(ObjPointer(ID3D10GeometryShader)), "ppGeometryShader")]), + Method(HRESULT, "CreateGeometryShaderWithStreamOutput", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), (Array(Const(D3D10_SO_DECLARATION_ENTRY), "NumEntries"), "pSODeclaration"), (UINT, "NumEntries"), (UINT, "OutputStreamStride"), Out(Pointer(ObjPointer(ID3D10GeometryShader)), "ppGeometryShader")]), + Method(HRESULT, "CreatePixelShader", [(Blob(Const(Void), "BytecodeLength"), "pShaderBytecode"), (SIZE_T, "BytecodeLength"), Out(Pointer(ObjPointer(ID3D10PixelShader)), "ppPixelShader")]), + Method(HRESULT, "CreateBlendState", [(Pointer(Const(D3D10_BLEND_DESC)), "pBlendStateDesc"), Out(Pointer(ObjPointer(ID3D10BlendState)), "ppBlendState")]), + Method(HRESULT, "CreateDepthStencilState", [(Pointer(Const(D3D10_DEPTH_STENCIL_DESC)), "pDepthStencilDesc"), Out(Pointer(ObjPointer(ID3D10DepthStencilState)), "ppDepthStencilState")]), + Method(HRESULT, "CreateRasterizerState", [(Pointer(Const(D3D10_RASTERIZER_DESC)), "pRasterizerDesc"), Out(Pointer(ObjPointer(ID3D10RasterizerState)), "ppRasterizerState")]), + Method(HRESULT, "CreateSamplerState", [(Pointer(Const(D3D10_SAMPLER_DESC)), "pSamplerDesc"), Out(Pointer(ObjPointer(ID3D10SamplerState)), "ppSamplerState")]), + Method(HRESULT, "CreateQuery", [(Pointer(Const(D3D10_QUERY_DESC)), "pQueryDesc"), Out(Pointer(ObjPointer(ID3D10Query)), "ppQuery")]), + Method(HRESULT, "CreatePredicate", [(Pointer(Const(D3D10_QUERY_DESC)), "pPredicateDesc"), Out(Pointer(ObjPointer(ID3D10Predicate)), "ppPredicate")]), + Method(HRESULT, "CreateCounter", [(Pointer(Const(D3D10_COUNTER_DESC)), "pCounterDesc"), Out(Pointer(ObjPointer(ID3D10Counter)), "ppCounter")]), Method(HRESULT, "CheckFormatSupport", [(DXGI_FORMAT, "Format"), Out(Pointer(UINT), "pFormatSupport")]), Method(HRESULT, "CheckMultisampleQualityLevels", [(DXGI_FORMAT, "Format"), (UINT, "SampleCount"), Out(Pointer(UINT), "pNumQualityLevels")]), Method(Void, "CheckCounterInfo", [Out(Pointer(D3D10_COUNTER_INFO), "pCounterInfo")]), Method(HRESULT, "CheckCounter", [(Pointer(Const(D3D10_COUNTER_DESC)), "pDesc"), Out(Pointer(D3D10_COUNTER_TYPE), "pType"), Out(Pointer(UINT), "pActiveCounters"), Out(LPSTR, "szName"), Out(Pointer(UINT), "pNameLength"), Out(LPSTR, "szUnits"), Out(Pointer(UINT), "pUnitsLength"), Out(LPSTR, "szDescription"), Out(Pointer(UINT), "pDescriptionLength")]), Method(D3D10_CREATE_DEVICE_FLAG, "GetCreationFlags", []), - Method(HRESULT, "OpenSharedResource", [(HANDLE, "hResource"), (REFIID, "ReturnedInterface"), Out(Pointer(OpaquePointer(Void)), "ppResource")]), + Method(HRESULT, "OpenSharedResource", [(HANDLE, "hResource"), (REFIID, "ReturnedInterface"), Out(Pointer(ObjPointer(Void)), "ppResource")]), Method(Void, "SetTextFilterSize", [(UINT, "Width"), (UINT, "Height")]), Method(Void, "GetTextFilterSize", [Out(Pointer(UINT), "pWidth"), Out(Pointer(UINT), "pHeight")]), ] diff --git a/specs/d3d10_1.py b/specs/d3d10_1.py index c9bda7e..82adf72 100644 --- a/specs/d3d10_1.py +++ b/specs/d3d10_1.py @@ -30,7 +30,7 @@ from d3d10sdklayers import * from d3d10 import * ID3D10Blob = Interface("ID3D10Blob", IUnknown) -LPD3D10BLOB = Pointer(ID3D10Blob) +LPD3D10BLOB = ObjPointer(ID3D10Blob) ID3D10Blob.methods += [ Method(LPVOID, "GetBufferPointer", []), @@ -104,15 +104,15 @@ ID3D10ShaderResourceView1.methods += [ ID3D10Device1 = Interface("ID3D10Device1", ID3D10Device) ID3D10Device1.methods += [ - Method(HRESULT, "CreateShaderResourceView1", [(Pointer(ID3D10Resource), "pResource"), Out(Pointer(Const(D3D10_SHADER_RESOURCE_VIEW_DESC1)), "pDesc"), Out(Pointer(Pointer(ID3D10ShaderResourceView1)), "ppSRView")]), - Method(HRESULT, "CreateBlendState1", [(Pointer(Const(D3D10_BLEND_DESC1)), "pBlendStateDesc"), Out(Pointer(Pointer(ID3D10BlendState1)), "ppBlendState")]), + Method(HRESULT, "CreateShaderResourceView1", [(ObjPointer(ID3D10Resource), "pResource"), Out(Pointer(Const(D3D10_SHADER_RESOURCE_VIEW_DESC1)), "pDesc"), Out(Pointer(ObjPointer(ID3D10ShaderResourceView1)), "ppSRView")]), + Method(HRESULT, "CreateBlendState1", [(Pointer(Const(D3D10_BLEND_DESC1)), "pBlendStateDesc"), Out(Pointer(ObjPointer(ID3D10BlendState1)), "ppBlendState")]), Method(D3D10_FEATURE_LEVEL1, "GetFeatureLevel", []), ] d3d10_1 = API("d3d10_1") d3d10_1.addFunctions([ - StdFunction(HRESULT, "D3D10CreateDevice1", [(Pointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (D3D10_FEATURE_LEVEL1, "HardwareLevel"), (UINT, "SDKVersion"), Out(Pointer(Pointer(ID3D10Device1)), "ppDevice")]), - StdFunction(HRESULT, "D3D10CreateDeviceAndSwapChain1", [(Pointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (D3D10_FEATURE_LEVEL1, "HardwareLevel"), (UINT, "SDKVersion"), (Pointer(DXGI_SWAP_CHAIN_DESC), "pSwapChainDesc"), Out(Pointer(Pointer(IDXGISwapChain)), "ppSwapChain"), Out(Pointer(Pointer(ID3D10Device1)), "ppDevice")]), + StdFunction(HRESULT, "D3D10CreateDevice1", [(ObjPointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (D3D10_FEATURE_LEVEL1, "HardwareLevel"), (UINT, "SDKVersion"), Out(Pointer(ObjPointer(ID3D10Device1)), "ppDevice")]), + StdFunction(HRESULT, "D3D10CreateDeviceAndSwapChain1", [(ObjPointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (D3D10_FEATURE_LEVEL1, "HardwareLevel"), (UINT, "SDKVersion"), (Pointer(DXGI_SWAP_CHAIN_DESC), "pSwapChainDesc"), Out(Pointer(ObjPointer(IDXGISwapChain)), "ppSwapChain"), Out(Pointer(ObjPointer(ID3D10Device1)), "ppDevice")]), StdFunction(HRESULT, "D3D10CreateBlob", [(SIZE_T, "NumBytes"), Out(Pointer(LPD3D10BLOB), "ppBuffer")]), ]) diff --git a/specs/d3d10misc.py b/specs/d3d10misc.py index 41ee2e3..bc3452f 100644 --- a/specs/d3d10misc.py +++ b/specs/d3d10misc.py @@ -31,7 +31,7 @@ from d3d10 import * ID3D10Blob = Interface("ID3D10Blob", IUnknown) -LPD3D10BLOB = Pointer(ID3D10Blob) +LPD3D10BLOB = ObjPointer(ID3D10Blob) ID3D10Blob.methods += [ Method(LPVOID, "GetBufferPointer", []), @@ -50,8 +50,8 @@ D3D10_DRIVER_TYPE = Enum("D3D10_DRIVER_TYPE", [ d3d10 = API("d3d10") d3d10.addFunctions([ - StdFunction(HRESULT, "D3D10CreateDevice", [(Pointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (UINT, "SDKVersion"), Out(Pointer(Pointer(ID3D10Device)), "ppDevice")]), - StdFunction(HRESULT, "D3D10CreateDeviceAndSwapChain", [(Pointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (UINT, "SDKVersion"), (Pointer(DXGI_SWAP_CHAIN_DESC), "pSwapChainDesc"), Out(Pointer(Pointer(IDXGISwapChain)), "ppSwapChain"), Out(Pointer(Pointer(ID3D10Device)), "ppDevice")]), + StdFunction(HRESULT, "D3D10CreateDevice", [(ObjPointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (UINT, "SDKVersion"), Out(Pointer(ObjPointer(ID3D10Device)), "ppDevice")]), + StdFunction(HRESULT, "D3D10CreateDeviceAndSwapChain", [(ObjPointer(IDXGIAdapter), "pAdapter"), (D3D10_DRIVER_TYPE, "DriverType"), (HMODULE, "Software"), (D3D10_CREATE_DEVICE_FLAG, "Flags"), (UINT, "SDKVersion"), (Pointer(DXGI_SWAP_CHAIN_DESC), "pSwapChainDesc"), Out(Pointer(ObjPointer(IDXGISwapChain)), "ppSwapChain"), Out(Pointer(ObjPointer(ID3D10Device)), "ppDevice")]), StdFunction(HRESULT, "D3D10CreateBlob", [(SIZE_T, "NumBytes"), Out(Pointer(LPD3D10BLOB), "ppBuffer")]), ]) diff --git a/specs/d3d10sdklayers.py b/specs/d3d10sdklayers.py index a1c4ce1..7fb2fdf 100644 --- a/specs/d3d10sdklayers.py +++ b/specs/d3d10sdklayers.py @@ -38,8 +38,8 @@ ID3D10Debug.methods += [ Method(UINT, "GetFeatureMask", []), Method(HRESULT, "SetPresentPerRenderOpDelay", [(UINT, "Milliseconds")]), Method(UINT, "GetPresentPerRenderOpDelay", []), - Method(HRESULT, "SetSwapChain", [(Pointer(IDXGISwapChain), "pSwapChain")]), - Method(HRESULT, "GetSwapChain", [Out(Pointer(Pointer(IDXGISwapChain)), "ppSwapChain")]), + Method(HRESULT, "SetSwapChain", [(ObjPointer(IDXGISwapChain), "pSwapChain")]), + Method(HRESULT, "GetSwapChain", [Out(Pointer(ObjPointer(IDXGISwapChain)), "ppSwapChain")]), Method(HRESULT, "Validate", []), ] diff --git a/specs/d3d11.py b/specs/d3d11.py index 3a09296..014c6d0 100644 --- a/specs/d3d11.py +++ b/specs/d3d11.py @@ -331,10 +331,10 @@ D3D11_BOX = Struct('D3D11_BOX', [ ]) ID3D11DeviceChild.methods += [ - StdMethod(Void, 'GetDevice', [Out(Pointer(Pointer(ID3D11Device)), 'ppDevice')]), + StdMethod(Void, 'GetDevice', [Out(Pointer(ObjPointer(ID3D11Device)), 'ppDevice')]), StdMethod(HRESULT, 'GetPrivateData', [(REFGUID, 'guid'), Out(Pointer(UINT), 'pDataSize'), Out(OpaquePointer(Void), 'pData')]), StdMethod(HRESULT, 'SetPrivateData', [(REFGUID, 'guid'), (UINT, 'DataSize'), (OpaqueBlob(Const(Void), 'DataSize'), 'pData')]), - StdMethod(HRESULT, 'SetPrivateDataInterface', [(REFGUID, 'guid'), (Pointer(Const(IUnknown)), 'pData')]), + StdMethod(HRESULT, 'SetPrivateDataInterface', [(REFGUID, 'guid'), (OpaquePointer(Const(IUnknown)), 'pData')]), ] D3D11_COMPARISON_FUNC = Enum('D3D11_COMPARISON_FUNC', [ @@ -549,7 +549,7 @@ D3D11_TEXTURECUBE_FACE = Enum('D3D11_TEXTURECUBE_FACE', [ ]) ID3D11View.methods += [ - StdMethod(Void, 'GetResource', [Out(Pointer(Pointer(ID3D11Resource)), 'ppResource')]), + StdMethod(Void, 'GetResource', [Out(Pointer(ObjPointer(ID3D11Resource)), 'ppResource')]), ] D3D11_BUFFER_SRV = Struct('D3D11_BUFFER_SRV', [ @@ -1010,15 +1010,15 @@ D3D11_CLASS_INSTANCE_DESC = Struct('D3D11_CLASS_INSTANCE_DESC', [ ID3D11ClassInstance.methods += [ - StdMethod(Void, 'GetClassLinkage', [Out(Pointer(Pointer(ID3D11ClassLinkage)), 'ppLinkage')]), + StdMethod(Void, 'GetClassLinkage', [Out(Pointer(ObjPointer(ID3D11ClassLinkage)), 'ppLinkage')]), StdMethod(Void, 'GetDesc', [Out(Pointer(D3D11_CLASS_INSTANCE_DESC), 'pDesc')]), StdMethod(Void, 'GetInstanceName', [Out(LPSTR, 'pInstanceName'), Out(Pointer(SIZE_T), 'pBufferLength')]), StdMethod(Void, 'GetTypeName', [Out(LPSTR, 'pTypeName'), Out(Pointer(SIZE_T), 'pBufferLength')]), ] ID3D11ClassLinkage.methods += [ - StdMethod(HRESULT, 'GetClassInstance', [(LPCSTR, 'pClassInstanceName'), (UINT, 'InstanceIndex'), Out(Pointer(Pointer(ID3D11ClassInstance)), 'ppInstance')]), - StdMethod(HRESULT, 'CreateClassInstance', [(LPCSTR, 'pClassTypeName'), (UINT, 'ConstantBufferOffset'), (UINT, 'ConstantVectorOffset'), (UINT, 'TextureOffset'), (UINT, 'SamplerOffset'), Out(Pointer(Pointer(ID3D11ClassInstance)), 'ppInstance')]), + StdMethod(HRESULT, 'GetClassInstance', [(LPCSTR, 'pClassInstanceName'), (UINT, 'InstanceIndex'), Out(Pointer(ObjPointer(ID3D11ClassInstance)), 'ppInstance')]), + StdMethod(HRESULT, 'CreateClassInstance', [(LPCSTR, 'pClassTypeName'), (UINT, 'ConstantBufferOffset'), (UINT, 'ConstantVectorOffset'), (UINT, 'TextureOffset'), (UINT, 'SamplerOffset'), Out(Pointer(ObjPointer(ID3D11ClassInstance)), 'ppInstance')]), ] ID3D11CommandList.methods += [ @@ -1057,114 +1057,114 @@ D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS = Struct('D3D11_FEATURE_DATA_D3D10_X ]) ID3D11DeviceContext.methods += [ - StdMethod(Void, 'VSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'PSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'PSSetShader', [(Pointer(ID3D11PixelShader), 'pPixelShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), - StdMethod(Void, 'PSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'VSSetShader', [(Pointer(ID3D11VertexShader), 'pVertexShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'VSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'PSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'PSSetShader', [(ObjPointer(ID3D11PixelShader), 'pPixelShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'PSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'VSSetShader', [(ObjPointer(ID3D11VertexShader), 'pVertexShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), StdMethod(Void, 'DrawIndexed', [(UINT, 'IndexCount'), (UINT, 'StartIndexLocation'), (INT, 'BaseVertexLocation')]), StdMethod(Void, 'Draw', [(UINT, 'VertexCount'), (UINT, 'StartVertexLocation')]), - StdMethod(HRESULT, 'Map', [(Pointer(ID3D11Resource), 'pResource'), (UINT, 'Subresource'), (D3D11_MAP, 'MapType'), (D3D11_MAP_FLAG, 'MapFlags'), Out(Pointer(D3D11_MAPPED_SUBRESOURCE), 'pMappedResource')]), - StdMethod(Void, 'Unmap', [(Pointer(ID3D11Resource), 'pResource'), (UINT, 'Subresource')]), - StdMethod(Void, 'PSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'IASetInputLayout', [(Pointer(ID3D11InputLayout), 'pInputLayout')]), - StdMethod(Void, 'IASetVertexBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppVertexBuffers'), (Pointer(Const(UINT)), 'pStrides'), (Pointer(Const(UINT)), 'pOffsets')]), - StdMethod(Void, 'IASetIndexBuffer', [(Pointer(ID3D11Buffer), 'pIndexBuffer'), (DXGI_FORMAT, 'Format'), (UINT, 'Offset')]), + StdMethod(HRESULT, 'Map', [(ObjPointer(ID3D11Resource), 'pResource'), (UINT, 'Subresource'), (D3D11_MAP, 'MapType'), (D3D11_MAP_FLAG, 'MapFlags'), Out(Pointer(D3D11_MAPPED_SUBRESOURCE), 'pMappedResource')]), + StdMethod(Void, 'Unmap', [(ObjPointer(ID3D11Resource), 'pResource'), (UINT, 'Subresource')]), + StdMethod(Void, 'PSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'IASetInputLayout', [(ObjPointer(ID3D11InputLayout), 'pInputLayout')]), + StdMethod(Void, 'IASetVertexBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppVertexBuffers'), (Pointer(Const(UINT)), 'pStrides'), (Pointer(Const(UINT)), 'pOffsets')]), + StdMethod(Void, 'IASetIndexBuffer', [(ObjPointer(ID3D11Buffer), 'pIndexBuffer'), (DXGI_FORMAT, 'Format'), (UINT, 'Offset')]), StdMethod(Void, 'DrawIndexedInstanced', [(UINT, 'IndexCountPerInstance'), (UINT, 'InstanceCount'), (UINT, 'StartIndexLocation'), (INT, 'BaseVertexLocation'), (UINT, 'StartInstanceLocation')]), StdMethod(Void, 'DrawInstanced', [(UINT, 'VertexCountPerInstance'), (UINT, 'InstanceCount'), (UINT, 'StartVertexLocation'), (UINT, 'StartInstanceLocation')]), - StdMethod(Void, 'GSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'GSSetShader', [(Pointer(ID3D11GeometryShader), 'pShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'GSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'GSSetShader', [(ObjPointer(ID3D11GeometryShader), 'pShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), StdMethod(Void, 'IASetPrimitiveTopology', [(D3D11_PRIMITIVE_TOPOLOGY, 'Topology')]), - StdMethod(Void, 'VSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'VSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'Begin', [(Pointer(ID3D11Asynchronous), 'pAsync')]), - StdMethod(Void, 'End', [(Pointer(ID3D11Asynchronous), 'pAsync')]), - StdMethod(HRESULT, 'GetData', [(Pointer(ID3D11Asynchronous), 'pAsync'), Out(OpaqueBlob(Void, 'DataSize'), 'pData'), (UINT, 'DataSize'), (D3D11_ASYNC_GETDATA_FLAG, 'GetDataFlags')]), - StdMethod(Void, 'SetPredication', [(Pointer(ID3D11Predicate), 'pPredicate'), (BOOL, 'PredicateValue')]), - StdMethod(Void, 'GSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'GSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'OMSetRenderTargets', [(UINT, 'NumViews'), (Array(Const(Pointer(ID3D11RenderTargetView)), 'NumViews'), 'ppRenderTargetViews'), (Pointer(ID3D11DepthStencilView), 'pDepthStencilView')]), - StdMethod(Void, 'OMSetRenderTargetsAndUnorderedAccessViews', [(UINT, 'NumRTVs'), (Array(Const(Pointer(ID3D11RenderTargetView)), 'NumRTVs'), 'ppRenderTargetViews'), (Pointer(ID3D11DepthStencilView), 'pDepthStencilView'), (UINT, 'UAVStartSlot'), (UINT, 'NumUAVs'), (Array(Const(Pointer(ID3D11UnorderedAccessView)), 'NumUAVs'), 'ppUnorderedAccessViews'), (Pointer(Const(UINT)), 'pUAVInitialCounts')]), - StdMethod(Void, 'OMSetBlendState', [(Pointer(ID3D11BlendState), 'pBlendState'), (Array(Const(FLOAT), 4), 'BlendFactor'), (UINT, 'SampleMask')]), - StdMethod(Void, 'OMSetDepthStencilState', [(Pointer(ID3D11DepthStencilState), 'pDepthStencilState'), (UINT, 'StencilRef')]), - StdMethod(Void, 'SOSetTargets', [(UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppSOTargets'), (Pointer(Const(UINT)), 'pOffsets')]), + StdMethod(Void, 'VSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'VSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'Begin', [(ObjPointer(ID3D11Asynchronous), 'pAsync')]), + StdMethod(Void, 'End', [(ObjPointer(ID3D11Asynchronous), 'pAsync')]), + StdMethod(HRESULT, 'GetData', [(ObjPointer(ID3D11Asynchronous), 'pAsync'), Out(OpaqueBlob(Void, 'DataSize'), 'pData'), (UINT, 'DataSize'), (D3D11_ASYNC_GETDATA_FLAG, 'GetDataFlags')]), + StdMethod(Void, 'SetPredication', [(ObjPointer(ID3D11Predicate), 'pPredicate'), (BOOL, 'PredicateValue')]), + StdMethod(Void, 'GSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'GSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'OMSetRenderTargets', [(UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11RenderTargetView)), 'NumViews'), 'ppRenderTargetViews'), (ObjPointer(ID3D11DepthStencilView), 'pDepthStencilView')]), + StdMethod(Void, 'OMSetRenderTargetsAndUnorderedAccessViews', [(UINT, 'NumRTVs'), (Array(Const(ObjPointer(ID3D11RenderTargetView)), 'NumRTVs'), 'ppRenderTargetViews'), (ObjPointer(ID3D11DepthStencilView), 'pDepthStencilView'), (UINT, 'UAVStartSlot'), (UINT, 'NumUAVs'), (Array(Const(ObjPointer(ID3D11UnorderedAccessView)), 'NumUAVs'), 'ppUnorderedAccessViews'), (Pointer(Const(UINT)), 'pUAVInitialCounts')]), + StdMethod(Void, 'OMSetBlendState', [(ObjPointer(ID3D11BlendState), 'pBlendState'), (Array(Const(FLOAT), 4), 'BlendFactor'), (UINT, 'SampleMask')]), + StdMethod(Void, 'OMSetDepthStencilState', [(ObjPointer(ID3D11DepthStencilState), 'pDepthStencilState'), (UINT, 'StencilRef')]), + StdMethod(Void, 'SOSetTargets', [(UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppSOTargets'), (Pointer(Const(UINT)), 'pOffsets')]), StdMethod(Void, 'DrawAuto', []), - StdMethod(Void, 'DrawIndexedInstancedIndirect', [(Pointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), - StdMethod(Void, 'DrawInstancedIndirect', [(Pointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), + StdMethod(Void, 'DrawIndexedInstancedIndirect', [(ObjPointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), + StdMethod(Void, 'DrawInstancedIndirect', [(ObjPointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), StdMethod(Void, 'Dispatch', [(UINT, 'ThreadGroupCountX'), (UINT, 'ThreadGroupCountY'), (UINT, 'ThreadGroupCountZ')]), - StdMethod(Void, 'DispatchIndirect', [(Pointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), - StdMethod(Void, 'RSSetState', [(Pointer(ID3D11RasterizerState), 'pRasterizerState')]), + StdMethod(Void, 'DispatchIndirect', [(ObjPointer(ID3D11Buffer), 'pBufferForArgs'), (UINT, 'AlignedByteOffsetForArgs')]), + StdMethod(Void, 'RSSetState', [(ObjPointer(ID3D11RasterizerState), 'pRasterizerState')]), StdMethod(Void, 'RSSetViewports', [(UINT, 'NumViewports'), (Array(Const(D3D11_VIEWPORT), 'NumViewports'), 'pViewports')]), StdMethod(Void, 'RSSetScissorRects', [(UINT, 'NumRects'), (Array(Const(D3D11_RECT), 'NumRects'), 'pRects')]), - StdMethod(Void, 'CopySubresourceRegion', [(Pointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (UINT, 'DstX'), (UINT, 'DstY'), (UINT, 'DstZ'), (Pointer(ID3D11Resource), 'pSrcResource'), (UINT, 'SrcSubresource'), (Pointer(Const(D3D11_BOX)), 'pSrcBox')]), - StdMethod(Void, 'CopyResource', [(Pointer(ID3D11Resource), 'pDstResource'), (Pointer(ID3D11Resource), 'pSrcResource')]), - StdMethod(Void, 'UpdateSubresource', [(Pointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (Pointer(Const(D3D11_BOX)), 'pDstBox'), (OpaquePointer(Const(Void)), 'pSrcData'), (UINT, 'SrcRowPitch'), (UINT, 'SrcDepthPitch')]), - StdMethod(Void, 'CopyStructureCount', [(Pointer(ID3D11Buffer), 'pDstBuffer'), (UINT, 'DstAlignedByteOffset'), (Pointer(ID3D11UnorderedAccessView), 'pSrcView')]), - StdMethod(Void, 'ClearRenderTargetView', [(Pointer(ID3D11RenderTargetView), 'pRenderTargetView'), (Array(Const(FLOAT), 4), 'ColorRGBA')]), - StdMethod(Void, 'ClearUnorderedAccessViewUint', [(Pointer(ID3D11UnorderedAccessView), 'pUnorderedAccessView'), (Array(Const(UINT), 4), 'Values')]), - StdMethod(Void, 'ClearUnorderedAccessViewFloat', [(Pointer(ID3D11UnorderedAccessView), 'pUnorderedAccessView'), (Array(Const(FLOAT), 4), 'Values')]), - StdMethod(Void, 'ClearDepthStencilView', [(Pointer(ID3D11DepthStencilView), 'pDepthStencilView'), (D3D11_CLEAR_FLAG, 'ClearFlags'), (FLOAT, 'Depth'), (UINT8, 'Stencil')]), - StdMethod(Void, 'GenerateMips', [(Pointer(ID3D11ShaderResourceView), 'pShaderResourceView')]), - StdMethod(Void, 'SetResourceMinLOD', [(Pointer(ID3D11Resource), 'pResource'), (FLOAT, 'MinLOD')]), - StdMethod(FLOAT, 'GetResourceMinLOD', [(Pointer(ID3D11Resource), 'pResource')]), - StdMethod(Void, 'ResolveSubresource', [(Pointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (Pointer(ID3D11Resource), 'pSrcResource'), (UINT, 'SrcSubresource'), (DXGI_FORMAT, 'Format')]), - StdMethod(Void, 'ExecuteCommandList', [(Pointer(ID3D11CommandList), 'pCommandList'), (BOOL, 'RestoreContextState')]), - StdMethod(Void, 'HSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'HSSetShader', [(Pointer(ID3D11HullShader), 'pHullShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), - StdMethod(Void, 'HSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'HSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'DSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'DSSetShader', [(Pointer(ID3D11DomainShader), 'pDomainShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), - StdMethod(Void, 'DSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'DSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'CSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(Pointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'CSSetUnorderedAccessViews', [(UINT, 'StartSlot'), (UINT, 'NumUAVs'), (Array(Const(Pointer(ID3D11UnorderedAccessView)), 'NumUAVs'), 'ppUnorderedAccessViews'), (Pointer(Const(UINT)), 'pUAVInitialCounts')]), - StdMethod(Void, 'CSSetShader', [(Pointer(ID3D11ComputeShader), 'pComputeShader'), (Array(Const(Pointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), - StdMethod(Void, 'CSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(Pointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'CSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(Pointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'VSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'PSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'PSGetShader', [Out(Pointer(Pointer(ID3D11PixelShader)), 'ppPixelShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), - StdMethod(Void, 'PSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'VSGetShader', [Out(Pointer(Pointer(ID3D11VertexShader)), 'ppVertexShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), - StdMethod(Void, 'PSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'IAGetInputLayout', [Out(Pointer(Pointer(ID3D11InputLayout)), 'ppInputLayout')]), - StdMethod(Void, 'IAGetVertexBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppVertexBuffers'), Out(Pointer(UINT), 'pStrides'), Out(Pointer(UINT), 'pOffsets')]), - StdMethod(Void, 'IAGetIndexBuffer', [Out(Pointer(Pointer(ID3D11Buffer)), 'pIndexBuffer'), Out(Pointer(DXGI_FORMAT), 'Format'), Out(Pointer(UINT), 'Offset')]), - StdMethod(Void, 'GSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'GSGetShader', [Out(Pointer(Pointer(ID3D11GeometryShader)), 'ppGeometryShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'CopySubresourceRegion', [(ObjPointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (UINT, 'DstX'), (UINT, 'DstY'), (UINT, 'DstZ'), (ObjPointer(ID3D11Resource), 'pSrcResource'), (UINT, 'SrcSubresource'), (Pointer(Const(D3D11_BOX)), 'pSrcBox')]), + StdMethod(Void, 'CopyResource', [(ObjPointer(ID3D11Resource), 'pDstResource'), (ObjPointer(ID3D11Resource), 'pSrcResource')]), + StdMethod(Void, 'UpdateSubresource', [(ObjPointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (Pointer(Const(D3D11_BOX)), 'pDstBox'), (OpaquePointer(Const(Void)), 'pSrcData'), (UINT, 'SrcRowPitch'), (UINT, 'SrcDepthPitch')]), + StdMethod(Void, 'CopyStructureCount', [(ObjPointer(ID3D11Buffer), 'pDstBuffer'), (UINT, 'DstAlignedByteOffset'), (ObjPointer(ID3D11UnorderedAccessView), 'pSrcView')]), + StdMethod(Void, 'ClearRenderTargetView', [(ObjPointer(ID3D11RenderTargetView), 'pRenderTargetView'), (Array(Const(FLOAT), 4), 'ColorRGBA')]), + StdMethod(Void, 'ClearUnorderedAccessViewUint', [(ObjPointer(ID3D11UnorderedAccessView), 'pUnorderedAccessView'), (Array(Const(UINT), 4), 'Values')]), + StdMethod(Void, 'ClearUnorderedAccessViewFloat', [(ObjPointer(ID3D11UnorderedAccessView), 'pUnorderedAccessView'), (Array(Const(FLOAT), 4), 'Values')]), + StdMethod(Void, 'ClearDepthStencilView', [(ObjPointer(ID3D11DepthStencilView), 'pDepthStencilView'), (D3D11_CLEAR_FLAG, 'ClearFlags'), (FLOAT, 'Depth'), (UINT8, 'Stencil')]), + StdMethod(Void, 'GenerateMips', [(ObjPointer(ID3D11ShaderResourceView), 'pShaderResourceView')]), + StdMethod(Void, 'SetResourceMinLOD', [(ObjPointer(ID3D11Resource), 'pResource'), (FLOAT, 'MinLOD')]), + StdMethod(FLOAT, 'GetResourceMinLOD', [(ObjPointer(ID3D11Resource), 'pResource')]), + StdMethod(Void, 'ResolveSubresource', [(ObjPointer(ID3D11Resource), 'pDstResource'), (UINT, 'DstSubresource'), (ObjPointer(ID3D11Resource), 'pSrcResource'), (UINT, 'SrcSubresource'), (DXGI_FORMAT, 'Format')]), + StdMethod(Void, 'ExecuteCommandList', [(ObjPointer(ID3D11CommandList), 'pCommandList'), (BOOL, 'RestoreContextState')]), + StdMethod(Void, 'HSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'HSSetShader', [(ObjPointer(ID3D11HullShader), 'pHullShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'HSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'HSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'DSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'DSSetShader', [(ObjPointer(ID3D11DomainShader), 'pDomainShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'DSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'DSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'CSSetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Const(ObjPointer(ID3D11ShaderResourceView)), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'CSSetUnorderedAccessViews', [(UINT, 'StartSlot'), (UINT, 'NumUAVs'), (Array(Const(ObjPointer(ID3D11UnorderedAccessView)), 'NumUAVs'), 'ppUnorderedAccessViews'), (Pointer(Const(UINT)), 'pUAVInitialCounts')]), + StdMethod(Void, 'CSSetShader', [(ObjPointer(ID3D11ComputeShader), 'pComputeShader'), (Array(Const(ObjPointer(ID3D11ClassInstance)), 'NumClassInstances'), 'ppClassInstances'), (UINT, 'NumClassInstances')]), + StdMethod(Void, 'CSSetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Const(ObjPointer(ID3D11SamplerState)), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'CSSetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Const(ObjPointer(ID3D11Buffer)), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'VSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'PSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'PSGetShader', [Out(Pointer(ObjPointer(ID3D11PixelShader)), 'ppPixelShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'PSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'VSGetShader', [Out(Pointer(ObjPointer(ID3D11VertexShader)), 'ppVertexShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'PSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'IAGetInputLayout', [Out(Pointer(ObjPointer(ID3D11InputLayout)), 'ppInputLayout')]), + StdMethod(Void, 'IAGetVertexBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppVertexBuffers'), Out(Pointer(UINT), 'pStrides'), Out(Pointer(UINT), 'pOffsets')]), + StdMethod(Void, 'IAGetIndexBuffer', [Out(Pointer(ObjPointer(ID3D11Buffer)), 'pIndexBuffer'), Out(Pointer(DXGI_FORMAT), 'Format'), Out(Pointer(UINT), 'Offset')]), + StdMethod(Void, 'GSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'GSGetShader', [Out(Pointer(ObjPointer(ID3D11GeometryShader)), 'ppGeometryShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), StdMethod(Void, 'IAGetPrimitiveTopology', [Out(Pointer(D3D11_PRIMITIVE_TOPOLOGY), 'pTopology')]), - StdMethod(Void, 'VSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'VSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'GetPredication', [Out(Pointer(Pointer(ID3D11Predicate)), 'ppPredicate'), Out(Pointer(BOOL), 'pPredicateValue')]), - StdMethod(Void, 'GSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'GSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'OMGetRenderTargets', [(UINT, 'NumViews'), (Array(Pointer(ID3D11RenderTargetView), 'NumViews'), 'ppRenderTargetViews'), Out(Pointer(Pointer(ID3D11DepthStencilView)), 'ppDepthStencilView')]), - StdMethod(Void, 'OMGetRenderTargetsAndUnorderedAccessViews', [(UINT, 'NumRTVs'), (Array(Pointer(ID3D11RenderTargetView), 'NumRTVs'), 'ppRenderTargetViews'), Out(Pointer(Pointer(ID3D11DepthStencilView)), 'ppDepthStencilView'), (UINT, 'UAVStartSlot'), (UINT, 'NumUAVs'), (Array(Pointer(ID3D11UnorderedAccessView), 'NumUAVs'), 'ppUnorderedAccessViews')]), - StdMethod(Void, 'OMGetBlendState', [Out(Pointer(Pointer(ID3D11BlendState)), 'ppBlendState'), Out(Array(FLOAT, 4), 'BlendFactor'), Out(Pointer(UINT), 'pSampleMask')]), - StdMethod(Void, 'OMGetDepthStencilState', [Out(Pointer(Pointer(ID3D11DepthStencilState)), 'ppDepthStencilState'), Out(Pointer(UINT), 'pStencilRef')]), - StdMethod(Void, 'SOGetTargets', [(UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppSOTargets')]), - StdMethod(Void, 'RSGetState', [Out(Pointer(Pointer(ID3D11RasterizerState)), 'ppRasterizerState')]), + StdMethod(Void, 'VSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'VSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'GetPredication', [Out(Pointer(ObjPointer(ID3D11Predicate)), 'ppPredicate'), Out(Pointer(BOOL), 'pPredicateValue')]), + StdMethod(Void, 'GSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'GSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'OMGetRenderTargets', [(UINT, 'NumViews'), (Array(ObjPointer(ID3D11RenderTargetView), 'NumViews'), 'ppRenderTargetViews'), Out(Pointer(ObjPointer(ID3D11DepthStencilView)), 'ppDepthStencilView')]), + StdMethod(Void, 'OMGetRenderTargetsAndUnorderedAccessViews', [(UINT, 'NumRTVs'), (Array(ObjPointer(ID3D11RenderTargetView), 'NumRTVs'), 'ppRenderTargetViews'), Out(Pointer(ObjPointer(ID3D11DepthStencilView)), 'ppDepthStencilView'), (UINT, 'UAVStartSlot'), (UINT, 'NumUAVs'), (Array(ObjPointer(ID3D11UnorderedAccessView), 'NumUAVs'), 'ppUnorderedAccessViews')]), + StdMethod(Void, 'OMGetBlendState', [Out(Pointer(ObjPointer(ID3D11BlendState)), 'ppBlendState'), Out(Array(FLOAT, 4), 'BlendFactor'), Out(Pointer(UINT), 'pSampleMask')]), + StdMethod(Void, 'OMGetDepthStencilState', [Out(Pointer(ObjPointer(ID3D11DepthStencilState)), 'ppDepthStencilState'), Out(Pointer(UINT), 'pStencilRef')]), + StdMethod(Void, 'SOGetTargets', [(UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppSOTargets')]), + StdMethod(Void, 'RSGetState', [Out(Pointer(ObjPointer(ID3D11RasterizerState)), 'ppRasterizerState')]), StdMethod(Void, 'RSGetViewports', [Out(Pointer(UINT), 'pNumViewports'), Out(Array(D3D11_VIEWPORT, '*pNumViewports'), 'pViewports')]), StdMethod(Void, 'RSGetScissorRects', [Out(Pointer(UINT), 'pNumRects'), Out(Array(D3D11_RECT, '*pNumRects'), 'pRects')]), - StdMethod(Void, 'HSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'HSGetShader', [Out(Pointer(Pointer(ID3D11HullShader)), 'ppHullShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), - StdMethod(Void, 'HSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'HSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'DSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'DSGetShader', [Out(Pointer(Pointer(ID3D11DomainShader)), 'ppDomainShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), - StdMethod(Void, 'DSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'DSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), - StdMethod(Void, 'CSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(Pointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), - StdMethod(Void, 'CSGetUnorderedAccessViews', [(UINT, 'StartSlot'), (UINT, 'NumUAVs'), (Array(Pointer(ID3D11UnorderedAccessView), 'NumUAVs'), 'ppUnorderedAccessViews')]), - StdMethod(Void, 'CSGetShader', [Out(Pointer(Pointer(ID3D11ComputeShader)), 'ppComputeShader'), Out(Array(Pointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), - StdMethod(Void, 'CSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(Pointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), - StdMethod(Void, 'CSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(Pointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'HSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'HSGetShader', [Out(Pointer(ObjPointer(ID3D11HullShader)), 'ppHullShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'HSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'HSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'DSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'DSGetShader', [Out(Pointer(ObjPointer(ID3D11DomainShader)), 'ppDomainShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'DSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'DSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), + StdMethod(Void, 'CSGetShaderResources', [(UINT, 'StartSlot'), (UINT, 'NumViews'), (Array(ObjPointer(ID3D11ShaderResourceView), 'NumViews'), 'ppShaderResourceViews')]), + StdMethod(Void, 'CSGetUnorderedAccessViews', [(UINT, 'StartSlot'), (UINT, 'NumUAVs'), (Array(ObjPointer(ID3D11UnorderedAccessView), 'NumUAVs'), 'ppUnorderedAccessViews')]), + StdMethod(Void, 'CSGetShader', [Out(Pointer(ObjPointer(ID3D11ComputeShader)), 'ppComputeShader'), Out(Array(ObjPointer(ID3D11ClassInstance), '*pNumClassInstances'), 'ppClassInstances'), Out(Pointer(UINT), 'pNumClassInstances')]), + StdMethod(Void, 'CSGetSamplers', [(UINT, 'StartSlot'), (UINT, 'NumSamplers'), (Array(ObjPointer(ID3D11SamplerState), 'NumSamplers'), 'ppSamplers')]), + StdMethod(Void, 'CSGetConstantBuffers', [(UINT, 'StartSlot'), (UINT, 'NumBuffers'), (Array(ObjPointer(ID3D11Buffer), 'NumBuffers'), 'ppConstantBuffers')]), StdMethod(Void, 'ClearState', []), StdMethod(Void, 'Flush', []), StdMethod(D3D11_DEVICE_CONTEXT_TYPE, 'GetType', []), StdMethod(UINT, 'GetContextFlags', []), - StdMethod(HRESULT, 'FinishCommandList', [(BOOL, 'RestoreDeferredContextState'), Out(Pointer(Pointer(ID3D11CommandList)), 'ppCommandList')]), + StdMethod(HRESULT, 'FinishCommandList', [(BOOL, 'RestoreDeferredContextState'), Out(Pointer(ObjPointer(ID3D11CommandList)), 'ppCommandList')]), ] D3D11_CREATE_DEVICE_FLAG = Flags(UINT, [ @@ -1176,32 +1176,32 @@ D3D11_CREATE_DEVICE_FLAG = Flags(UINT, [ ]) ID3D11Device.methods += [ - StdMethod(HRESULT, 'CreateBuffer', [(Pointer(Const(D3D11_BUFFER_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(Pointer(ID3D11Buffer)), 'ppBuffer')]), - StdMethod(HRESULT, 'CreateTexture1D', [(Pointer(Const(D3D11_TEXTURE1D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(Pointer(ID3D11Texture1D)), 'ppTexture1D')]), - StdMethod(HRESULT, 'CreateTexture2D', [(Pointer(Const(D3D11_TEXTURE2D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(Pointer(ID3D11Texture2D)), 'ppTexture2D')]), - StdMethod(HRESULT, 'CreateTexture3D', [(Pointer(Const(D3D11_TEXTURE3D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(Pointer(ID3D11Texture3D)), 'ppTexture3D')]), - StdMethod(HRESULT, 'CreateShaderResourceView', [(Pointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_SHADER_RESOURCE_VIEW_DESC)), 'pDesc'), Out(Pointer(Pointer(ID3D11ShaderResourceView)), 'ppSRView')]), - StdMethod(HRESULT, 'CreateUnorderedAccessView', [(Pointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_UNORDERED_ACCESS_VIEW_DESC)), 'pDesc'), Out(Pointer(Pointer(ID3D11UnorderedAccessView)), 'ppUAView')]), - StdMethod(HRESULT, 'CreateRenderTargetView', [(Pointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_RENDER_TARGET_VIEW_DESC)), 'pDesc'), Out(Pointer(Pointer(ID3D11RenderTargetView)), 'ppRTView')]), - StdMethod(HRESULT, 'CreateDepthStencilView', [(Pointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_DEPTH_STENCIL_VIEW_DESC)), 'pDesc'), Out(Pointer(Pointer(ID3D11DepthStencilView)), 'ppDepthStencilView')]), - StdMethod(HRESULT, 'CreateInputLayout', [(Array(Const(D3D11_INPUT_ELEMENT_DESC), 'NumElements'), 'pInputElementDescs'), (UINT, 'NumElements'), (Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecodeWithInputSignature'), (SIZE_T, 'BytecodeLength'), Out(Pointer(Pointer(ID3D11InputLayout)), 'ppInputLayout')]), - StdMethod(HRESULT, 'CreateVertexShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11VertexShader)), 'ppVertexShader')]), - StdMethod(HRESULT, 'CreateGeometryShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11GeometryShader)), 'ppGeometryShader')]), - StdMethod(HRESULT, 'CreateGeometryShaderWithStreamOutput', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Array(Const(D3D11_SO_DECLARATION_ENTRY), 'NumEntries'), 'pSODeclaration'), (UINT, 'NumEntries'), (Array(Const(UINT), 'NumStrides'), 'pBufferStrides'), (UINT, 'NumStrides'), (UINT, 'RasterizedStream'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11GeometryShader)), 'ppGeometryShader')]), - StdMethod(HRESULT, 'CreatePixelShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11PixelShader)), 'ppPixelShader')]), - StdMethod(HRESULT, 'CreateHullShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11HullShader)), 'ppHullShader')]), - StdMethod(HRESULT, 'CreateDomainShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11DomainShader)), 'ppDomainShader')]), - StdMethod(HRESULT, 'CreateComputeShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Pointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(Pointer(ID3D11ComputeShader)), 'ppComputeShader')]), - StdMethod(HRESULT, 'CreateClassLinkage', [Out(Pointer(Pointer(ID3D11ClassLinkage)), 'ppLinkage')]), - StdMethod(HRESULT, 'CreateBlendState', [(Pointer(Const(D3D11_BLEND_DESC)), 'pBlendStateDesc'), Out(Pointer(Pointer(ID3D11BlendState)), 'ppBlendState')]), - StdMethod(HRESULT, 'CreateDepthStencilState', [(Pointer(Const(D3D11_DEPTH_STENCIL_DESC)), 'pDepthStencilDesc'), Out(Pointer(Pointer(ID3D11DepthStencilState)), 'ppDepthStencilState')]), - StdMethod(HRESULT, 'CreateRasterizerState', [(Pointer(Const(D3D11_RASTERIZER_DESC)), 'pRasterizerDesc'), Out(Pointer(Pointer(ID3D11RasterizerState)), 'ppRasterizerState')]), - StdMethod(HRESULT, 'CreateSamplerState', [(Pointer(Const(D3D11_SAMPLER_DESC)), 'pSamplerDesc'), Out(Pointer(Pointer(ID3D11SamplerState)), 'ppSamplerState')]), - StdMethod(HRESULT, 'CreateQuery', [(Pointer(Const(D3D11_QUERY_DESC)), 'pQueryDesc'), Out(Pointer(Pointer(ID3D11Query)), 'ppQuery')]), - StdMethod(HRESULT, 'CreatePredicate', [(Pointer(Const(D3D11_QUERY_DESC)), 'pPredicateDesc'), Out(Pointer(Pointer(ID3D11Predicate)), 'ppPredicate')]), - StdMethod(HRESULT, 'CreateCounter', [(Pointer(Const(D3D11_COUNTER_DESC)), 'pCounterDesc'), Out(Pointer(Pointer(ID3D11Counter)), 'ppCounter')]), - StdMethod(HRESULT, 'CreateDeferredContext', [(UINT, 'ContextFlags'), Out(Pointer(Pointer(ID3D11DeviceContext)), 'ppDeferredContext')]), - StdMethod(HRESULT, 'OpenSharedResource', [(HANDLE, 'hResource'), (REFIID, 'ReturnedInterface'), Out(Pointer(OpaquePointer(Void)), 'ppResource')]), + StdMethod(HRESULT, 'CreateBuffer', [(Pointer(Const(D3D11_BUFFER_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(ObjPointer(ID3D11Buffer)), 'ppBuffer')]), + StdMethod(HRESULT, 'CreateTexture1D', [(Pointer(Const(D3D11_TEXTURE1D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(ObjPointer(ID3D11Texture1D)), 'ppTexture1D')]), + StdMethod(HRESULT, 'CreateTexture2D', [(Pointer(Const(D3D11_TEXTURE2D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(ObjPointer(ID3D11Texture2D)), 'ppTexture2D')]), + StdMethod(HRESULT, 'CreateTexture3D', [(Pointer(Const(D3D11_TEXTURE3D_DESC)), 'pDesc'), (Pointer(Const(D3D11_SUBRESOURCE_DATA)), 'pInitialData'), Out(Pointer(ObjPointer(ID3D11Texture3D)), 'ppTexture3D')]), + StdMethod(HRESULT, 'CreateShaderResourceView', [(ObjPointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_SHADER_RESOURCE_VIEW_DESC)), 'pDesc'), Out(Pointer(ObjPointer(ID3D11ShaderResourceView)), 'ppSRView')]), + StdMethod(HRESULT, 'CreateUnorderedAccessView', [(ObjPointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_UNORDERED_ACCESS_VIEW_DESC)), 'pDesc'), Out(Pointer(ObjPointer(ID3D11UnorderedAccessView)), 'ppUAView')]), + StdMethod(HRESULT, 'CreateRenderTargetView', [(ObjPointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_RENDER_TARGET_VIEW_DESC)), 'pDesc'), Out(Pointer(ObjPointer(ID3D11RenderTargetView)), 'ppRTView')]), + StdMethod(HRESULT, 'CreateDepthStencilView', [(ObjPointer(ID3D11Resource), 'pResource'), (Pointer(Const(D3D11_DEPTH_STENCIL_VIEW_DESC)), 'pDesc'), Out(Pointer(ObjPointer(ID3D11DepthStencilView)), 'ppDepthStencilView')]), + StdMethod(HRESULT, 'CreateInputLayout', [(Array(Const(D3D11_INPUT_ELEMENT_DESC), 'NumElements'), 'pInputElementDescs'), (UINT, 'NumElements'), (Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecodeWithInputSignature'), (SIZE_T, 'BytecodeLength'), Out(Pointer(ObjPointer(ID3D11InputLayout)), 'ppInputLayout')]), + StdMethod(HRESULT, 'CreateVertexShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11VertexShader)), 'ppVertexShader')]), + StdMethod(HRESULT, 'CreateGeometryShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11GeometryShader)), 'ppGeometryShader')]), + StdMethod(HRESULT, 'CreateGeometryShaderWithStreamOutput', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (Array(Const(D3D11_SO_DECLARATION_ENTRY), 'NumEntries'), 'pSODeclaration'), (UINT, 'NumEntries'), (Array(Const(UINT), 'NumStrides'), 'pBufferStrides'), (UINT, 'NumStrides'), (UINT, 'RasterizedStream'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11GeometryShader)), 'ppGeometryShader')]), + StdMethod(HRESULT, 'CreatePixelShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11PixelShader)), 'ppPixelShader')]), + StdMethod(HRESULT, 'CreateHullShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11HullShader)), 'ppHullShader')]), + StdMethod(HRESULT, 'CreateDomainShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11DomainShader)), 'ppDomainShader')]), + StdMethod(HRESULT, 'CreateComputeShader', [(Blob(Const(Void), 'BytecodeLength'), 'pShaderBytecode'), (SIZE_T, 'BytecodeLength'), (ObjPointer(ID3D11ClassLinkage), 'pClassLinkage'), Out(Pointer(ObjPointer(ID3D11ComputeShader)), 'ppComputeShader')]), + StdMethod(HRESULT, 'CreateClassLinkage', [Out(Pointer(ObjPointer(ID3D11ClassLinkage)), 'ppLinkage')]), + StdMethod(HRESULT, 'CreateBlendState', [(Pointer(Const(D3D11_BLEND_DESC)), 'pBlendStateDesc'), Out(Pointer(ObjPointer(ID3D11BlendState)), 'ppBlendState')]), + StdMethod(HRESULT, 'CreateDepthStencilState', [(Pointer(Const(D3D11_DEPTH_STENCIL_DESC)), 'pDepthStencilDesc'), Out(Pointer(ObjPointer(ID3D11DepthStencilState)), 'ppDepthStencilState')]), + StdMethod(HRESULT, 'CreateRasterizerState', [(Pointer(Const(D3D11_RASTERIZER_DESC)), 'pRasterizerDesc'), Out(Pointer(ObjPointer(ID3D11RasterizerState)), 'ppRasterizerState')]), + StdMethod(HRESULT, 'CreateSamplerState', [(Pointer(Const(D3D11_SAMPLER_DESC)), 'pSamplerDesc'), Out(Pointer(ObjPointer(ID3D11SamplerState)), 'ppSamplerState')]), + StdMethod(HRESULT, 'CreateQuery', [(Pointer(Const(D3D11_QUERY_DESC)), 'pQueryDesc'), Out(Pointer(ObjPointer(ID3D11Query)), 'ppQuery')]), + StdMethod(HRESULT, 'CreatePredicate', [(Pointer(Const(D3D11_QUERY_DESC)), 'pPredicateDesc'), Out(Pointer(ObjPointer(ID3D11Predicate)), 'ppPredicate')]), + StdMethod(HRESULT, 'CreateCounter', [(Pointer(Const(D3D11_COUNTER_DESC)), 'pCounterDesc'), Out(Pointer(ObjPointer(ID3D11Counter)), 'ppCounter')]), + StdMethod(HRESULT, 'CreateDeferredContext', [(UINT, 'ContextFlags'), Out(Pointer(ObjPointer(ID3D11DeviceContext)), 'ppDeferredContext')]), + StdMethod(HRESULT, 'OpenSharedResource', [(HANDLE, 'hResource'), (REFIID, 'ReturnedInterface'), Out(Pointer(ObjPointer(Void)), 'ppResource')]), StdMethod(HRESULT, 'CheckFormatSupport', [(DXGI_FORMAT, 'Format'), Out(Pointer(UINT), 'pFormatSupport')]), StdMethod(HRESULT, 'CheckMultisampleQualityLevels', [(DXGI_FORMAT, 'Format'), (UINT, 'SampleCount'), Out(Pointer(UINT), 'pNumQualityLevels')]), StdMethod(Void, 'CheckCounterInfo', [Out(Pointer(D3D11_COUNTER_INFO), 'pCounterInfo')]), @@ -1209,11 +1209,11 @@ ID3D11Device.methods += [ StdMethod(HRESULT, 'CheckFeatureSupport', [(D3D11_FEATURE, 'Feature'), Out(OpaqueBlob(Void, 'FeatureSupportDataSize'), 'pFeatureSupportData'), (UINT, 'FeatureSupportDataSize')]), StdMethod(HRESULT, 'GetPrivateData', [(REFGUID, 'guid'), Out(Pointer(UINT), 'pDataSize'), Out(OpaquePointer(Void), 'pData')]), StdMethod(HRESULT, 'SetPrivateData', [(REFGUID, 'guid'), (UINT, 'DataSize'), (OpaqueBlob(Const(Void), 'DataSize'), 'pData')]), - StdMethod(HRESULT, 'SetPrivateDataInterface', [(REFGUID, 'guid'), (Pointer(Const(IUnknown)), 'pData')]), + StdMethod(HRESULT, 'SetPrivateDataInterface', [(REFGUID, 'guid'), (OpaquePointer(Const(IUnknown)), 'pData')]), StdMethod(D3D_FEATURE_LEVEL, 'GetFeatureLevel', []), StdMethod(D3D11_CREATE_DEVICE_FLAG, 'GetCreationFlags', []), StdMethod(HRESULT, 'GetDeviceRemovedReason', []), - StdMethod(Void, 'GetImmediateContext', [Out(Pointer(Pointer(ID3D11DeviceContext)), 'ppImmediateContext')]), + StdMethod(Void, 'GetImmediateContext', [Out(Pointer(ObjPointer(ID3D11DeviceContext)), 'ppImmediateContext')]), StdMethod(HRESULT, 'SetExceptionMode', [(D3D11_RAISE_FLAG, 'RaiseFlags')]), StdMethod(UINT, 'GetExceptionMode', []), ] @@ -1221,8 +1221,8 @@ ID3D11Device.methods += [ d3d11 = API("d3d11") d3d11.addFunctions([ - StdFunction(HRESULT, 'D3D11CreateDevice', [(Pointer(IDXGIAdapter), 'pAdapter'), (D3D_DRIVER_TYPE, 'DriverType'), (HMODULE, 'Software'), (D3D11_CREATE_DEVICE_FLAG, 'Flags'), (Array(Const(D3D_FEATURE_LEVEL), 'FeatureLevels'), 'pFeatureLevels'), (UINT, 'FeatureLevels'), (UINT, 'SDKVersion'), Out(Pointer(Pointer(ID3D11Device)), 'ppDevice'), Out(Pointer(D3D_FEATURE_LEVEL), 'pFeatureLevel'), Out(Pointer(Pointer(ID3D11DeviceContext)), 'ppImmediateContext')]), - StdFunction(HRESULT, 'D3D11CreateDeviceAndSwapChain', [(Pointer(IDXGIAdapter), 'pAdapter'), (D3D_DRIVER_TYPE, 'DriverType'), (HMODULE, 'Software'), (D3D11_CREATE_DEVICE_FLAG, 'Flags'), (Array(Const(D3D_FEATURE_LEVEL), 'FeatureLevels'), 'pFeatureLevels'), (UINT, 'FeatureLevels'), (UINT, 'SDKVersion'), (Pointer(Const(DXGI_SWAP_CHAIN_DESC)), 'pSwapChainDesc'), Out(Pointer(Pointer(IDXGISwapChain)), 'ppSwapChain'), Out(Pointer(Pointer(ID3D11Device)), 'ppDevice'), Out(Pointer(D3D_FEATURE_LEVEL), 'pFeatureLevel'), Out(Pointer(Pointer(ID3D11DeviceContext)), 'ppImmediateContext')]), + StdFunction(HRESULT, 'D3D11CreateDevice', [(ObjPointer(IDXGIAdapter), 'pAdapter'), (D3D_DRIVER_TYPE, 'DriverType'), (HMODULE, 'Software'), (D3D11_CREATE_DEVICE_FLAG, 'Flags'), (Array(Const(D3D_FEATURE_LEVEL), 'FeatureLevels'), 'pFeatureLevels'), (UINT, 'FeatureLevels'), (UINT, 'SDKVersion'), Out(Pointer(ObjPointer(ID3D11Device)), 'ppDevice'), Out(Pointer(D3D_FEATURE_LEVEL), 'pFeatureLevel'), Out(Pointer(ObjPointer(ID3D11DeviceContext)), 'ppImmediateContext')]), + StdFunction(HRESULT, 'D3D11CreateDeviceAndSwapChain', [(ObjPointer(IDXGIAdapter), 'pAdapter'), (D3D_DRIVER_TYPE, 'DriverType'), (HMODULE, 'Software'), (D3D11_CREATE_DEVICE_FLAG, 'Flags'), (Array(Const(D3D_FEATURE_LEVEL), 'FeatureLevels'), 'pFeatureLevels'), (UINT, 'FeatureLevels'), (UINT, 'SDKVersion'), (Pointer(Const(DXGI_SWAP_CHAIN_DESC)), 'pSwapChainDesc'), Out(Pointer(ObjPointer(IDXGISwapChain)), 'ppSwapChain'), Out(Pointer(ObjPointer(ID3D11Device)), 'ppDevice'), Out(Pointer(D3D_FEATURE_LEVEL), 'pFeatureLevel'), Out(Pointer(ObjPointer(ID3D11DeviceContext)), 'ppImmediateContext')]), ]) d3d11.addInterfaces([ diff --git a/specs/d3d11sdklayers.py b/specs/d3d11sdklayers.py index c42e6e0..0759094 100644 --- a/specs/d3d11sdklayers.py +++ b/specs/d3d11sdklayers.py @@ -48,11 +48,11 @@ ID3D11Debug.methods += [ StdMethod(D3D11_DEBUG_FEATURE, 'GetFeatureMask', []), StdMethod(HRESULT, 'SetPresentPerRenderOpDelay', [(UINT, 'Milliseconds')]), StdMethod(UINT, 'GetPresentPerRenderOpDelay', []), - StdMethod(HRESULT, 'SetSwapChain', [(Pointer(IDXGISwapChain), 'pSwapChain')]), - StdMethod(HRESULT, 'GetSwapChain', [Out(Pointer(Pointer(IDXGISwapChain)), 'ppSwapChain')]), - StdMethod(HRESULT, 'ValidateContext', [(Pointer(ID3D11DeviceContext), 'pContext')]), + StdMethod(HRESULT, 'SetSwapChain', [(ObjPointer(IDXGISwapChain), 'pSwapChain')]), + StdMethod(HRESULT, 'GetSwapChain', [Out(Pointer(ObjPointer(IDXGISwapChain)), 'ppSwapChain')]), + StdMethod(HRESULT, 'ValidateContext', [(ObjPointer(ID3D11DeviceContext), 'pContext')]), StdMethod(HRESULT, 'ReportLiveDeviceObjects', [(D3D11_RLDO_FLAGS, 'Flags')]), - StdMethod(HRESULT, 'ValidateContextForDispatch', [(Pointer(ID3D11DeviceContext), 'pContext')]), + StdMethod(HRESULT, 'ValidateContextForDispatch', [(ObjPointer(ID3D11DeviceContext), 'pContext')]), ] ID3D11SwitchToRef = Interface('ID3D11SwitchToRef', IUnknown) diff --git a/specs/d3d11shader.py b/specs/d3d11shader.py index a1c0247..b18a27c 100644 --- a/specs/d3d11shader.py +++ b/specs/d3d11shader.py @@ -138,40 +138,40 @@ D3D11_SHADER_INPUT_BIND_DESC = Struct('D3D11_SHADER_INPUT_BIND_DESC', [ ID3D11ShaderReflectionType.methods += [ StdMethod(HRESULT, 'GetDesc', [Out(Pointer(D3D11_SHADER_TYPE_DESC), 'pDesc')]), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetMemberTypeByIndex', [(UINT, 'Index')]), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetMemberTypeByName', [(LPCSTR, 'Name')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetMemberTypeByIndex', [(UINT, 'Index')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetMemberTypeByName', [(LPCSTR, 'Name')]), StdMethod(LPCSTR, 'GetMemberTypeName', [(UINT, 'Index')]), - StdMethod(HRESULT, 'IsEqual', [(Pointer(ID3D11ShaderReflectionType), 'pType')]), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetSubType', []), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetBaseClass', []), + StdMethod(HRESULT, 'IsEqual', [(ObjPointer(ID3D11ShaderReflectionType), 'pType')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetSubType', []), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetBaseClass', []), StdMethod(UINT, 'GetNumInterfaces', []), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetInterfaceByIndex', [(UINT, 'uIndex')]), - StdMethod(HRESULT, 'IsOfType', [(Pointer(ID3D11ShaderReflectionType), 'pType')]), - StdMethod(HRESULT, 'ImplementsInterface', [(Pointer(ID3D11ShaderReflectionType), 'pBase')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetInterfaceByIndex', [(UINT, 'uIndex')]), + StdMethod(HRESULT, 'IsOfType', [(ObjPointer(ID3D11ShaderReflectionType), 'pType')]), + StdMethod(HRESULT, 'ImplementsInterface', [(ObjPointer(ID3D11ShaderReflectionType), 'pBase')]), ] ID3D11ShaderReflectionVariable.methods += [ StdMethod(HRESULT, 'GetDesc', [Out(Pointer(D3D11_SHADER_VARIABLE_DESC), 'pDesc')]), - StdMethod(Pointer(ID3D11ShaderReflectionType), 'GetType', []), - StdMethod(Pointer(ID3D11ShaderReflectionConstantBuffer), 'GetBuffer', []), + StdMethod(ObjPointer(ID3D11ShaderReflectionType), 'GetType', []), + StdMethod(ObjPointer(ID3D11ShaderReflectionConstantBuffer), 'GetBuffer', []), StdMethod(UINT, 'GetInterfaceSlot', [(UINT, 'uArrayIndex')]), ] ID3D11ShaderReflectionConstantBuffer.methods += [ StdMethod(HRESULT, 'GetDesc', [(Pointer(D3D11_SHADER_BUFFER_DESC), 'pDesc')]), - StdMethod(Pointer(ID3D11ShaderReflectionVariable), 'GetVariableByIndex', [(UINT, 'Index')]), - StdMethod(Pointer(ID3D11ShaderReflectionVariable), 'GetVariableByName', [(LPCSTR, 'Name')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionVariable), 'GetVariableByIndex', [(UINT, 'Index')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionVariable), 'GetVariableByName', [(LPCSTR, 'Name')]), ] ID3D11ShaderReflection.methods += [ StdMethod(HRESULT, 'GetDesc', [Out(Pointer(D3D11_SHADER_DESC), 'pDesc')]), - StdMethod(Pointer(ID3D11ShaderReflectionConstantBuffer), 'GetConstantBufferByIndex', [(UINT, 'Index')]), - StdMethod(Pointer(ID3D11ShaderReflectionConstantBuffer), 'GetConstantBufferByName', [(LPCSTR, 'Name')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionConstantBuffer), 'GetConstantBufferByIndex', [(UINT, 'Index')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionConstantBuffer), 'GetConstantBufferByName', [(LPCSTR, 'Name')]), StdMethod(HRESULT, 'GetResourceBindingDesc', [(UINT, 'ResourceIndex'), Out(Pointer(D3D11_SHADER_INPUT_BIND_DESC), 'pDesc')]), StdMethod(HRESULT, 'GetInputParameterDesc', [(UINT, 'ParameterIndex'), Out(Pointer(D3D11_SIGNATURE_PARAMETER_DESC), 'pDesc')]), StdMethod(HRESULT, 'GetOutputParameterDesc', [(UINT, 'ParameterIndex'), Out(Pointer(D3D11_SIGNATURE_PARAMETER_DESC), 'pDesc')]), StdMethod(HRESULT, 'GetPatchConstantParameterDesc', [(UINT, 'ParameterIndex'), Out(Pointer(D3D11_SIGNATURE_PARAMETER_DESC), 'pDesc')]), - StdMethod(Pointer(ID3D11ShaderReflectionVariable), 'GetVariableByName', [(LPCSTR, 'Name')]), + StdMethod(ObjPointer(ID3D11ShaderReflectionVariable), 'GetVariableByName', [(LPCSTR, 'Name')]), StdMethod(HRESULT, 'GetResourceBindingDescByName', [(LPCSTR, 'Name'), Out(Pointer(D3D11_SHADER_INPUT_BIND_DESC), 'pDesc')]), StdMethod(UINT, 'GetMovInstructionCount', []), StdMethod(UINT, 'GetMovcInstructionCount', []), diff --git a/specs/d3d8.py b/specs/d3d8.py index 601c54b..d324601 100644 --- a/specs/d3d8.py +++ b/specs/d3d8.py @@ -67,18 +67,18 @@ IDirect3DIndexBuffer8 = Interface("IDirect3DIndexBuffer8", IDirect3DResource8) IDirect3DSurface8 = Interface("IDirect3DSurface8", IUnknown) IDirect3DVolume8 = Interface("IDirect3DVolume8", IUnknown) -PDIRECT3D8 = Pointer(IDirect3D8) -PDIRECT3DDEVICE8 = Pointer(IDirect3DDevice8) -PDIRECT3DSWAPCHAIN8 = Pointer(IDirect3DSwapChain8) -PDIRECT3DRESOURCE8 = Pointer(IDirect3DResource8) -PDIRECT3DBASETEXTURE8 = Pointer(IDirect3DBaseTexture8) -PDIRECT3DTEXTURE8 = Pointer(IDirect3DTexture8) -PDIRECT3DVOLUMETEXTURE8 = Pointer(IDirect3DVolumeTexture8) -PDIRECT3DCUBETEXTURE8 = Pointer(IDirect3DCubeTexture8) -PDIRECT3DVERTEXBUFFER8 = Pointer(IDirect3DVertexBuffer8) -PDIRECT3DINDEXBUFFER8 = Pointer(IDirect3DIndexBuffer8) -PDIRECT3DSURFACE8 = Pointer(IDirect3DSurface8) -PDIRECT3DVOLUME8 = Pointer(IDirect3DVolume8) +PDIRECT3D8 = ObjPointer(IDirect3D8) +PDIRECT3DDEVICE8 = ObjPointer(IDirect3DDevice8) +PDIRECT3DSWAPCHAIN8 = ObjPointer(IDirect3DSwapChain8) +PDIRECT3DRESOURCE8 = ObjPointer(IDirect3DResource8) +PDIRECT3DBASETEXTURE8 = ObjPointer(IDirect3DBaseTexture8) +PDIRECT3DTEXTURE8 = ObjPointer(IDirect3DTexture8) +PDIRECT3DVOLUMETEXTURE8 = ObjPointer(IDirect3DVolumeTexture8) +PDIRECT3DCUBETEXTURE8 = ObjPointer(IDirect3DCubeTexture8) +PDIRECT3DVERTEXBUFFER8 = ObjPointer(IDirect3DVertexBuffer8) +PDIRECT3DINDEXBUFFER8 = ObjPointer(IDirect3DIndexBuffer8) +PDIRECT3DSURFACE8 = ObjPointer(IDirect3DSurface8) +PDIRECT3DVOLUME8 = ObjPointer(IDirect3DVolume8) IDirect3D8.methods += [ Method(HRESULT, "RegisterSoftwareDevice", [(OpaquePointer(Void), "pInitializeFunction")]), @@ -259,7 +259,7 @@ IDirect3DSurface8.methods += [ Method(HRESULT, "SetPrivateData", [(REFGUID, "refguid"), (OpaquePointer(Const(Void)), "pData"), (DWORD, "SizeOfData"), (DWORD, "Flags")]), Method(HRESULT, "GetPrivateData", [(REFGUID, "refguid"), Out(OpaquePointer(Void), "pData"), Out(Pointer(DWORD), "pSizeOfData")]), Method(HRESULT, "FreePrivateData", [(REFGUID, "refguid")]), - Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppContainer")]), + Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppContainer")]), Method(HRESULT, "GetDesc", [Out(Pointer(D3DSURFACE_DESC), "pDesc")]), Method(HRESULT, "LockRect", [Out(Pointer(D3DLOCKED_RECT), "pLockedRect"), (ConstPointer(RECT), "pRect"), (DWORD, "Flags")]), Method(HRESULT, "UnlockRect", []), @@ -270,7 +270,7 @@ IDirect3DVolume8.methods += [ Method(HRESULT, "SetPrivateData", [(REFGUID, "refguid"), (OpaquePointer(Const(Void)), "pData"), (DWORD, "SizeOfData"), (DWORD, "Flags")]), Method(HRESULT, "GetPrivateData", [(REFGUID, "refguid"), Out(OpaquePointer(Void), "pData"), Out(Pointer(DWORD), "pSizeOfData")]), Method(HRESULT, "FreePrivateData", [(REFGUID, "refguid")]), - Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppContainer")]), + Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppContainer")]), Method(HRESULT, "GetDesc", [Out(Pointer(D3DVOLUME_DESC), "pDesc")]), Method(HRESULT, "LockBox", [Out(Pointer(D3DLOCKED_BOX), "pLockedVolume"), (ConstPointer(D3DBOX), "pBox"), (DWORD, "Flags")]), Method(HRESULT, "UnlockBox", []), diff --git a/specs/d3d9.py b/specs/d3d9.py index 10c6967..74da462 100644 --- a/specs/d3d9.py +++ b/specs/d3d9.py @@ -377,7 +377,7 @@ IDirect3DIndexBuffer9.methods += [ ] IDirect3DSurface9.methods += [ - Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppContainer")], sideeffects=False), + Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppContainer")], sideeffects=False), Method(HRESULT, "GetDesc", [Out(Pointer(D3DSURFACE_DESC), "pDesc")], sideeffects=False), Method(HRESULT, "LockRect", [Out(Pointer(D3DLOCKED_RECT), "pLockedRect"), (ConstPointer(RECT), "pRect"), (D3DLOCK, "Flags")]), Method(HRESULT, "UnlockRect", []), @@ -390,7 +390,7 @@ IDirect3DVolume9.methods += [ Method(HRESULT, "SetPrivateData", [(REFGUID, "refguid"), (OpaquePointer(Const(Void)), "pData"), (DWORD, "SizeOfData"), (D3DSPD, "Flags")], sideeffects=False), Method(HRESULT, "GetPrivateData", [(REFGUID, "refguid"), Out(OpaquePointer(Void), "pData"), Out(Pointer(DWORD), "pSizeOfData")], sideeffects=False), Method(HRESULT, "FreePrivateData", [(REFGUID, "refguid")], sideeffects=False), - Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppContainer")], sideeffects=False), + Method(HRESULT, "GetContainer", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppContainer")], sideeffects=False), Method(HRESULT, "GetDesc", [Out(Pointer(D3DVOLUME_DESC), "pDesc")], sideeffects=False), Method(HRESULT, "LockBox", [Out(Pointer(D3DLOCKED_BOX), "pLockedVolume"), (ConstPointer(D3DBOX), "pBox"), (D3DLOCK, "Flags")]), Method(HRESULT, "UnlockBox", []), diff --git a/specs/ddraw.py b/specs/ddraw.py index 37031c4..9a1f33b 100644 --- a/specs/ddraw.py +++ b/specs/ddraw.py @@ -59,19 +59,20 @@ IDirectDrawSurface7 = Interface("IDirectDrawSurface7", IUnknown) IDirectDrawColorControl = Interface("IDirectDrawColorControl", IUnknown) IDirectDrawGammaControl = Interface("IDirectDrawGammaControl", IUnknown) -LPDIRECTDRAW = Pointer(IDirectDraw) -LPDIRECTDRAW2 = Pointer(IDirectDraw2) -LPDIRECTDRAW4 = Pointer(IDirectDraw4) -LPDIRECTDRAW7 = Pointer(IDirectDraw7) -LPDIRECTDRAWSURFACE = Pointer(IDirectDrawSurface) -LPDIRECTDRAWSURFACE2 = Pointer(IDirectDrawSurface2) -LPDIRECTDRAWSURFACE3 = Pointer(IDirectDrawSurface3) -LPDIRECTDRAWSURFACE4 = Pointer(IDirectDrawSurface4) -LPDIRECTDRAWSURFACE7 = Pointer(IDirectDrawSurface7) -LPDIRECTDRAWPALETTE = Pointer(IDirectDrawPalette) -LPDIRECTDRAWCLIPPER = Pointer(IDirectDrawClipper) -LPDIRECTDRAWCOLORCONTROL = Pointer(IDirectDrawColorControl) -LPDIRECTDRAWGAMMACONTROL = Pointer(IDirectDrawGammaControl) +LPUNKNOWN = ObjPointer(IUnknown) +LPDIRECTDRAW = ObjPointer(IDirectDraw) +LPDIRECTDRAW2 = ObjPointer(IDirectDraw2) +LPDIRECTDRAW4 = ObjPointer(IDirectDraw4) +LPDIRECTDRAW7 = ObjPointer(IDirectDraw7) +LPDIRECTDRAWSURFACE = ObjPointer(IDirectDrawSurface) +LPDIRECTDRAWSURFACE2 = ObjPointer(IDirectDrawSurface2) +LPDIRECTDRAWSURFACE3 = ObjPointer(IDirectDrawSurface3) +LPDIRECTDRAWSURFACE4 = ObjPointer(IDirectDrawSurface4) +LPDIRECTDRAWSURFACE7 = ObjPointer(IDirectDrawSurface7) +LPDIRECTDRAWPALETTE = ObjPointer(IDirectDrawPalette) +LPDIRECTDRAWCLIPPER = ObjPointer(IDirectDrawClipper) +LPDIRECTDRAWCOLORCONTROL = ObjPointer(IDirectDrawColorControl) +LPDIRECTDRAWGAMMACONTROL = ObjPointer(IDirectDrawGammaControl) DDARGB = Struct("DDARGB", [ (BYTE, "blue"), @@ -1278,9 +1279,9 @@ LPDDENUMSURFACESCALLBACK7 = FunctionPointer(HRESULT, "LPDDENUMSURFACESCALLBACK7" IDirectDraw.methods += [ Method(DDRESULT, "Compact", []), - Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDDSurface"), (Pointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (ObjPointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDDSurface"), (LPUNKNOWN, "pUnkOuter")]), Method(DDRESULT, "DuplicateSurface", [(LPDIRECTDRAWSURFACE, "lpDDSurface"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDupDDSurface")]), Method(DDRESULT, "EnumDisplayModes", [(DirectDrawEnumDisplayModesFlags, "dwFlags"), (LPDDSURFACEDESC, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMMODESCALLBACK, "lpEnumModesCallback")]), Method(DDRESULT, "EnumSurfaces", [(DirectDrawEnumSurfacesFlags, "dwFlags"), (LPDDSURFACEDESC, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMSURFACESCALLBACK, "lpEnumSurfacesCallback")]), @@ -1301,9 +1302,9 @@ IDirectDraw.methods += [ IDirectDraw2.methods += [ Method(DDRESULT, "Compact", []), - Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDDSurface"), (Pointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDDSurface"), (LPUNKNOWN, "pUnkOuter")]), Method(DDRESULT, "DuplicateSurface", [(LPDIRECTDRAWSURFACE, "lpDDSurface"), Out(Pointer(LPDIRECTDRAWSURFACE), "lplpDupDDSurface")]), Method(DDRESULT, "EnumDisplayModes", [(DirectDrawEnumDisplayModesFlags, "dwFlags"), (LPDDSURFACEDESC, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMMODESCALLBACK, "lpEnumModesCallback")]), Method(DDRESULT, "EnumSurfaces", [(DirectDrawEnumSurfacesFlags, "dwFlags"), (LPDDSURFACEDESC, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMSURFACESCALLBACK, "lpEnumSurfacesCallback")]), @@ -1325,9 +1326,9 @@ IDirectDraw2.methods += [ IDirectDraw4.methods += [ Method(DDRESULT, "Compact", []), - Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC2, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE4), "lplpDDSurface"), (Pointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (ObjPointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC2, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE4), "lplpDDSurface"), (LPUNKNOWN, "pUnkOuter")]), Method(DDRESULT, "DuplicateSurface", [(LPDIRECTDRAWSURFACE4, "lpDDSurface"), Out(Pointer(LPDIRECTDRAWSURFACE4), "lplpDupDDSurface")]), Method(DDRESULT, "EnumDisplayModes", [(DirectDrawEnumDisplayModesFlags, "dwFlags"), (LPDDSURFACEDESC2, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMMODESCALLBACK2, "lpEnumModesCallback")]), Method(DDRESULT, "EnumSurfaces", [(DirectDrawEnumSurfacesFlags, "dwFlags"), (LPDDSURFACEDESC2, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMSURFACESCALLBACK2, "lpEnumSurfacesCallback")]), @@ -1353,9 +1354,9 @@ IDirectDraw4.methods += [ IDirectDraw7.methods += [ Method(DDRESULT, "Compact", []), - Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (Pointer(IUnknown), "pUnkOuter")]), - Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC2, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE7), "lplpDDSurface"), (Pointer(IUnknown), "pUnkOuter")]), + Method(DDRESULT, "CreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreatePalette", [(DirectDrawPaletteCapsFlags, "dwFlags"), (LPPALETTEENTRY, "lpDDColorArray"), Out(Pointer(LPDIRECTDRAWPALETTE), "lplpDDPalette"), (LPUNKNOWN, "pUnkOuter")]), + Method(DDRESULT, "CreateSurface", [(LPDDSURFACEDESC2, "lpDDSurfaceDesc"), Out(Pointer(LPDIRECTDRAWSURFACE7), "lplpDDSurface"), (LPUNKNOWN, "pUnkOuter")]), Method(DDRESULT, "DuplicateSurface", [(LPDIRECTDRAWSURFACE7, "lpDDSurface"), Out(Pointer(LPDIRECTDRAWSURFACE7), "lplpDupDDSurface")]), Method(DDRESULT, "EnumDisplayModes", [(DirectDrawEnumDisplayModesFlags, "dwFlags"), (LPDDSURFACEDESC2, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMMODESCALLBACK2, "lpEnumModesCallback")]), Method(DDRESULT, "EnumSurfaces", [(DirectDrawEnumSurfacesFlags, "dwFlags"), (LPDDSURFACEDESC2, "lpDDSurfaceDesc"), (LPVOID, "lpContext"), (LPDDENUMSURFACESCALLBACK7, "lpEnumSurfacesCallback")]), @@ -1468,7 +1469,7 @@ IDirectDrawSurface2.methods += [ Method(DDRESULT, "UpdateOverlay", [(LPRECT, "lpSrcRect"), (LPDIRECTDRAWSURFACE2, "lpDDDestSurface"), (LPRECT, "lpDestRect"), (DirectDrawSurfaceOverlayFlags, "dwFlags"), (LPDDOVERLAYFX, "lpDDOverlayFx")]), Method(DDRESULT, "UpdateOverlayDisplay", [(DWORD, "dwFlags")]), Method(DDRESULT, "UpdateOverlayZOrder", [(DirectDrawUpdateOverlayZOrderFlags, "dwFlags"), (LPDIRECTDRAWSURFACE2, "lpDDSReference")]), - Method(DDRESULT, "GetDDInterface", [Out(Pointer(IUnknown), "lplpDD")]), + Method(DDRESULT, "GetDDInterface", [Out(LPUNKNOWN, "lplpDD")]), Method(DDRESULT, "PageLock", [(DWORD, "dwFlags")]), Method(DDRESULT, "PageUnlock", [(DWORD, "dwFlags")]), ] @@ -1507,7 +1508,7 @@ IDirectDrawSurface3.methods += [ Method(DDRESULT, "UpdateOverlay", [(LPRECT, "lpSrcRect"), (LPDIRECTDRAWSURFACE3, "lpDDDestSurface"), (LPRECT, "lpDestRect"), (DirectDrawSurfaceOverlayFlags, "dwFlags"), (LPDDOVERLAYFX, "lpDDOverlayFx")]), Method(DDRESULT, "UpdateOverlayDisplay", [(DWORD, "dwFlags")]), Method(DDRESULT, "UpdateOverlayZOrder", [(DirectDrawUpdateOverlayZOrderFlags, "dwFlags"), (LPDIRECTDRAWSURFACE3, "lpDDSReference")]), - Method(DDRESULT, "GetDDInterface", [Out(Pointer(IUnknown), "lplpDD")]), + Method(DDRESULT, "GetDDInterface", [Out(LPUNKNOWN, "lplpDD")]), Method(DDRESULT, "PageLock", [(DWORD, "dwFlags")]), Method(DDRESULT, "PageUnlock", [(DWORD, "dwFlags")]), Method(DDRESULT, "SetSurfaceDesc", [(LPDDSURFACEDESC, "lpDDSD"), (DWORD, "dwFlags")]), @@ -1639,14 +1640,14 @@ ddraw.addFunctions([ StdFunction(HRESULT, "DirectDrawEnumerateA", [(LPDDENUMCALLBACKA, "lpCallback"), (LPVOID, "lpContext")]), StdFunction(HRESULT, "DirectDrawEnumerateExW", [(LPDDENUMCALLBACKEXW, "lpCallback"), (LPVOID, "lpContext"), (DDENUM, "dwFlags")]), StdFunction(HRESULT, "DirectDrawEnumerateExA", [(LPDDENUMCALLBACKEXA, "lpCallback"), (LPVOID, "lpContext"), (DDENUM, "dwFlags")]), - StdFunction(HRESULT, "DirectDrawCreate", [(Pointer(GUID), "lpGUID"), Out(Pointer(LPDIRECTDRAW), "lplpDD"), (Pointer(IUnknown), "pUnkOuter")]), - StdFunction(HRESULT, "DirectDrawCreateEx", [(Pointer(GUID), "lpGuid"), Out(Pointer(LPVOID), "lplpDD"), (REFIID, "iid"), (Pointer(IUnknown), "pUnkOuter")]), - StdFunction(HRESULT, "DirectDrawCreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (Pointer(IUnknown), "pUnkOuter")]), + StdFunction(HRESULT, "DirectDrawCreate", [(Pointer(GUID), "lpGUID"), Out(Pointer(LPDIRECTDRAW), "lplpDD"), (LPUNKNOWN, "pUnkOuter")]), + StdFunction(HRESULT, "DirectDrawCreateEx", [(Pointer(GUID), "lpGuid"), Out(Pointer(LPVOID), "lplpDD"), (REFIID, "iid"), (LPUNKNOWN, "pUnkOuter")]), + StdFunction(HRESULT, "DirectDrawCreateClipper", [(DWORD, "dwFlags"), Out(Pointer(LPDIRECTDRAWCLIPPER), "lplpDDClipper"), (LPUNKNOWN, "pUnkOuter")]), StdFunction(Void, "AcquireDDThreadLock", []), StdFunction(Void, "ReleaseDDThreadLock", []), StdFunction(DWORD, "D3DParseUnknownCommand", [(LPVOID, "lpCmd"), Out(Pointer(LPVOID), "lpRetCmd")]), StdFunction(HRESULT, "DllCanUnloadNow", []), - StdFunction(HRESULT, "DllGetClassObject", [(REFCLSID, "rclsid"), (REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppv")]), + StdFunction(HRESULT, "DllGetClassObject", [(REFCLSID, "rclsid"), (REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppv")]), # XXX StdFunction(HRESULT, "CompleteCreateSysmemSurface", [Int, Int]), diff --git a/specs/dxgi.py b/specs/dxgi.py index 8fef9bd..99e6fdb 100644 --- a/specs/dxgi.py +++ b/specs/dxgi.py @@ -106,15 +106,15 @@ DXGI_SHARED_RESOURCE = Struct("DXGI_SHARED_RESOURCE", [ IDXGIObject = Interface("IDXGIObject", IUnknown) IDXGIObject.methods += [ - Method(HRESULT, "SetPrivateData", [(REFGUID, "guid"), (UINT, "data_size"), (OpaquePointer(Const(Void)), "data")]), + Method(HRESULT, "SetPrivateData", [(REFGUID, "guid"), (UINT, "data_size"), (OpaqueBlob(Const(Void), "data_size"), "data")]), Method(HRESULT, "SetPrivateDataInterface", [(REFGUID, "guid"), (OpaquePointer(Const(IUnknown)), "object")]), Method(HRESULT, "GetPrivateData", [(REFGUID, "guid"), Out(Pointer(UINT), "data_size"), Out(OpaquePointer(Void), "data")]), - Method(HRESULT, "GetParent", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "parent")]), + Method(HRESULT, "GetParent", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "parent")]), ] IDXGIDeviceSubObject = Interface("IDXGIDeviceSubObject", IDXGIObject) IDXGIDeviceSubObject.methods += [ - Method(HRESULT, "GetDevice", [(REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "device")]), + Method(HRESULT, "GetDevice", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "device")]), ] IDXGISurface = Interface("IDXGISurface", IDXGIDeviceSubObject) @@ -128,21 +128,21 @@ IDXGIOutput = Interface("IDXGIOutput", IDXGIObject) IDXGIOutput.methods += [ Method(HRESULT, "GetDesc", [Out(Pointer(DXGI_OUTPUT_DESC), "desc")]), Method(HRESULT, "GetDisplayModeList", [(DXGI_FORMAT, "format"), (UINT, "flags"), Out(Pointer(UINT), "mode_count"), Out(Array(DXGI_MODE_DESC, "*mode_count"), "desc")]), - Method(HRESULT, "FindClosestMatchingMode", [(Pointer(Const(DXGI_MODE_DESC)), "mode"), Out(Pointer(DXGI_MODE_DESC), "closest_match"), (Pointer(IUnknown), "device")]), + Method(HRESULT, "FindClosestMatchingMode", [(Pointer(Const(DXGI_MODE_DESC)), "mode"), Out(Pointer(DXGI_MODE_DESC), "closest_match"), (ObjPointer(IUnknown), "device")]), Method(HRESULT, "WaitForVBlank", []), - Method(HRESULT, "TakeOwnership", [(Pointer(IUnknown), "device"), (BOOL, "exclusive")]), + Method(HRESULT, "TakeOwnership", [(ObjPointer(IUnknown), "device"), (BOOL, "exclusive")]), Method(Void, "ReleaseOwnership", []), Method(HRESULT, "GetGammaControlCapabilities", [Out(Pointer(DXGI_GAMMA_CONTROL_CAPABILITIES), "gamma_caps")]), Method(HRESULT, "SetGammaControl", [(Pointer(Const(DXGI_GAMMA_CONTROL)), "gamma_control")]), Method(HRESULT, "GetGammaControl", [Out(Pointer(DXGI_GAMMA_CONTROL), "gamma_control")]), - Method(HRESULT, "SetDisplaySurface", [(Pointer(IDXGISurface), "surface")]), - Method(HRESULT, "GetDisplaySurfaceData", [(Pointer(IDXGISurface), "surface")]), + Method(HRESULT, "SetDisplaySurface", [(ObjPointer(IDXGISurface), "surface")]), + Method(HRESULT, "GetDisplaySurfaceData", [(ObjPointer(IDXGISurface), "surface")]), Method(HRESULT, "GetFrameStatistics", [Out(Pointer(DXGI_FRAME_STATISTICS), "stats")]), ] IDXGIAdapter = Interface("IDXGIAdapter", IDXGIObject) IDXGIAdapter.methods += [ - Method(HRESULT, "EnumOutputs", [(UINT, "output_idx"), Out(Pointer(Pointer(IDXGIOutput)), "output")]), + Method(HRESULT, "EnumOutputs", [(UINT, "output_idx"), Out(Pointer(ObjPointer(IDXGIOutput)), "output")]), Method(HRESULT, "GetDesc", [Out(Pointer(DXGI_ADAPTER_DESC), "desc")]), Method(HRESULT, "CheckInterfaceSupport", [(REFGUID, "guid"), Out(Pointer(LARGE_INTEGER), "umd_version")]), ] @@ -150,33 +150,33 @@ IDXGIAdapter.methods += [ IDXGISwapChain = Interface("IDXGISwapChain", IDXGIDeviceSubObject) IDXGISwapChain.methods += [ Method(HRESULT, "Present", [(UINT, "sync_interval"), (UINT, "flags")]), - Method(HRESULT, "GetBuffer", [(UINT, "buffer_idx"), (REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "surface")]), - Method(HRESULT, "SetFullscreenState", [(BOOL, "fullscreen"), (Pointer(IDXGIOutput), "target")]), - Method(HRESULT, "GetFullscreenState", [Out(Pointer(BOOL), "fullscreen"), Out(Pointer(Pointer(IDXGIOutput)), "target")]), + Method(HRESULT, "GetBuffer", [(UINT, "buffer_idx"), (REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "surface")]), + Method(HRESULT, "SetFullscreenState", [(BOOL, "fullscreen"), (ObjPointer(IDXGIOutput), "target")]), + Method(HRESULT, "GetFullscreenState", [Out(Pointer(BOOL), "fullscreen"), Out(Pointer(ObjPointer(IDXGIOutput)), "target")]), Method(HRESULT, "GetDesc", [Out(Pointer(DXGI_SWAP_CHAIN_DESC), "desc")]), Method(HRESULT, "ResizeBuffers", [(UINT, "buffer_count"), (UINT, "width"), (UINT, "height"), (DXGI_FORMAT, "format"), (UINT, "flags")]), Method(HRESULT, "ResizeTarget", [(Pointer(Const(DXGI_MODE_DESC)), "target_mode_desc")]), - Method(HRESULT, "GetContainingOutput", [Out(Pointer(Pointer(IDXGIOutput)), "output")]), + Method(HRESULT, "GetContainingOutput", [Out(Pointer(ObjPointer(IDXGIOutput)), "output")]), Method(HRESULT, "GetFrameStatistics", [Out(Pointer(DXGI_FRAME_STATISTICS), "stats")]), Method(HRESULT, "GetLastPresentCount", [Out(Pointer(UINT), "last_present_count")]), ] IDXGIFactory = Interface("IDXGIFactory", IDXGIObject) IDXGIFactory.methods += [ - Method(HRESULT, "EnumAdapters", [(UINT, "adapter_idx"), Out(Pointer(Pointer(IDXGIAdapter)), "adapter")]), + Method(HRESULT, "EnumAdapters", [(UINT, "adapter_idx"), Out(Pointer(ObjPointer(IDXGIAdapter)), "adapter")]), Method(HRESULT, "MakeWindowAssociation", [(HWND, "window"), (UINT, "flags")]), Method(HRESULT, "GetWindowAssociation", [Out(Pointer(HWND), "window")]), - Method(HRESULT, "CreateSwapChain", [(Pointer(IUnknown), "device"), (Pointer(DXGI_SWAP_CHAIN_DESC), "desc"), Out(Pointer(Pointer(IDXGISwapChain)), "swapchain")]), - Method(HRESULT, "CreateSoftwareAdapter", [(HMODULE, "swrast"), Out(Pointer(Pointer(IDXGIAdapter)), "adapter")]), + Method(HRESULT, "CreateSwapChain", [(ObjPointer(IUnknown), "device"), (Pointer(DXGI_SWAP_CHAIN_DESC), "desc"), Out(Pointer(ObjPointer(IDXGISwapChain)), "swapchain")]), + Method(HRESULT, "CreateSoftwareAdapter", [(HMODULE, "swrast"), Out(Pointer(ObjPointer(IDXGIAdapter)), "adapter")]), ] -#StdFunction(HRESULT, "CreateDXGIFactory", [(REFIID, "riid"), (Pointer(OpaquePointer(Void)), "factory")]), +#StdFunction(HRESULT, "CreateDXGIFactory", [(REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "factory")]), IDXGIDevice = Interface("IDXGIDevice", IDXGIObject) IDXGIDevice.methods += [ - Method(HRESULT, "GetAdapter", [Out(Pointer(Pointer(IDXGIAdapter)), "adapter")]), - Method(HRESULT, "CreateSurface", [(Pointer(Const(DXGI_SURFACE_DESC)), "desc"), (UINT, "surface_count"), (DXGI_USAGE, "usage"), (Pointer(Const(DXGI_SHARED_RESOURCE)), "shared_resource"), Out(Pointer(Pointer(IDXGISurface)), "surface")]), - Method(HRESULT, "QueryResourceResidency", [(Array(Const(OpaquePointer(IUnknown)), "resource_count"), "resources"), Out(Array(DXGI_RESIDENCY, "resource_count"), "residency"), (UINT, "resource_count")]), + Method(HRESULT, "GetAdapter", [Out(Pointer(ObjPointer(IDXGIAdapter)), "adapter")]), + Method(HRESULT, "CreateSurface", [(Pointer(Const(DXGI_SURFACE_DESC)), "desc"), (UINT, "surface_count"), (DXGI_USAGE, "usage"), (Pointer(Const(DXGI_SHARED_RESOURCE)), "shared_resource"), Out(Pointer(ObjPointer(IDXGISurface)), "surface")]), + Method(HRESULT, "QueryResourceResidency", [(Array(Const(ObjPointer(IUnknown)), "resource_count"), "resources"), Out(Array(DXGI_RESIDENCY, "resource_count"), "residency"), (UINT, "resource_count")]), Method(HRESULT, "SetGPUThreadPriority", [(INT, "priority")]), Method(HRESULT, "GetGPUThreadPriority", [Out(Pointer(INT), "priority")]), ] diff --git a/specs/winapi.py b/specs/winapi.py index e5df0f9..a7556e7 100644 --- a/specs/winapi.py +++ b/specs/winapi.py @@ -182,7 +182,7 @@ HRESULT_com = FakeEnum(HRESULT, [ ]) IUnknown.methods = ( - Method(HRESULT_com, "QueryInterface", ((REFIID, "riid"), Out(Pointer(OpaquePointer(Void)), "ppvObj"))), + Method(HRESULT_com, "QueryInterface", ((REFIID, "riid"), Out(Pointer(ObjPointer(Void)), "ppvObj"))), Method(ULONG, "AddRef", ()), Method(ULONG, "Release", ()), ) diff --git a/wrappers/trace.py b/wrappers/trace.py index ef86f8c..23a537a 100644 --- a/wrappers/trace.py +++ b/wrappers/trace.py @@ -254,9 +254,6 @@ class WrapDecider(stdapi.Traverser): def __init__(self): self.needsWrapping = False - def visitVoid(self, void): - raise NotImplementedError - def visitLinearPointer(self, void): pass @@ -288,13 +285,16 @@ class ValueWrapper(stdapi.Traverser): print " }" def visitObjPointer(self, pointer, instance): - print " if (%s) {" % instance - self.visit(pointer.type, "*" + instance) - print " }" + elem_type = pointer.type.mutable() + if isinstance(elem_type, stdapi.Interface): + self.visitInterfacePointer(elem_type, instance) + else: + self.visitPointer(self, pointer, instance) def visitInterface(self, interface, instance): - assert instance.startswith('*') - instance = instance[1:] + raise NotImplementedError + + def visitInterfacePointer(self, interface, instance): print " if (%s) {" % instance print " %s = new %s(%s);" % (instance, getWrapperInterfaceName(interface), instance) print " }" @@ -323,9 +323,7 @@ class ValueUnwrapper(ValueWrapper): print " %s = _t;" % instance print " }" - def visitInterface(self, interface, instance): - assert instance.startswith('*') - instance = instance[1:] + def visitInterfacePointer(self, interface, instance): print r' if (%s) {' % instance print r' const %s *pWrapper = static_cast(%s);' % (getWrapperInterfaceName(interface), getWrapperInterfaceName(interface), instance) print r' if (pWrapper && pWrapper->m_dwMagic == 0xd8365d6c) {' @@ -447,6 +445,7 @@ class Tracer: self.serializeValue(arg.type, arg.name) def wrapArg(self, function, arg): + assert not isinstance(arg.type, stdapi.ObjPointer) self.wrapValue(arg.type, arg.name) def unwrapArg(self, function, arg): @@ -535,7 +534,6 @@ class Tracer: print ' trace::localWriter.endArg();' from specs.winapi import REFIID - from specs.stdapi import Pointer, Opaque, Interface riid = None for arg in method.args: @@ -553,12 +551,13 @@ class Tracer: if arg.output: self.serializeArg(method, arg) self.wrapArg(method, arg) - if riid is not None and isinstance(arg.type, Pointer): - if isinstance(arg.type.type, Opaque): - self.wrapIid(interface, method, riid, arg) - else: - assert isinstance(arg.type.type, Pointer) - assert isinstance(arg.type.type.type, Interface) + if riid is not None and isinstance(arg.type, stdapi.Pointer): + assert isinstance(arg.type.type, stdapi.ObjPointer) + obj_type = arg.type.type.type + assert obj_type is stdapi.Void + self.wrapIid(interface, method, riid, arg) + riid = None + assert riid is None if method.type is not stdapi.Void: print ' trace::localWriter.beginReturn();' -- 2.43.0