From e96e78defb3faecc1689023f4fedf72588d67bbb Mon Sep 17 00:00:00 2001 From: assiduous Date: Mon, 28 Sep 2020 12:15:20 -0700 Subject: Updated Metal interfaces plus a number of misc fixes --- Graphics/GraphicsEngineMetal/interface/BufferMtl.h | 2 ++ Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h | 5 +++++ Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h | 2 ++ Graphics/GraphicsEngineMetal/interface/ShaderMtl.h | 2 ++ Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h | 2 ++ 5 files changed, 13 insertions(+) (limited to 'Graphics/GraphicsEngineMetal') diff --git a/Graphics/GraphicsEngineMetal/interface/BufferMtl.h b/Graphics/GraphicsEngineMetal/interface/BufferMtl.h index 8cbb04d1..1ed88a5c 100644 --- a/Graphics/GraphicsEngineMetal/interface/BufferMtl.h +++ b/Graphics/GraphicsEngineMetal/interface/BufferMtl.h @@ -41,6 +41,8 @@ static const INTERFACE_ID IID_BufferMtl = class IBufferMtl : public IBuffer { public: + /// Returns a pointer to Metal buffer (MTLBuffer) + virtual void* GetMtlBuffer() const = 0; }; } // namespace Diligent diff --git a/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h b/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h index f9b3d4a5..aaea6a0d 100644 --- a/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h +++ b/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h @@ -41,6 +41,11 @@ static const INTERFACE_ID IID_PipelineStateMtl = class IPipelineStateMtl : public IPipelineState { public: + /// Returns a pointer to Metal render or compute pipeline (MTLRenderPipelineState or MTLComputePipelineState) + virtual void* GetMtlPipeline() const = 0; + + /// Returns a pointer to Metal depth-stencil state (MTLDepthStencilState) + virtual void* GetMtlDepthStencilState() const = 0; }; } // namespace Diligent diff --git a/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h b/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h index 115ae68e..11fe4199 100644 --- a/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h +++ b/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h @@ -41,6 +41,8 @@ static const INTERFACE_ID IID_RenderDeviceMtl = class IRenderDeviceMtl : public IRenderDevice { public: + /// Returns the pointer to MTLDevice object + virtual void* GetMtlDevice() const = 0; }; } // namespace Diligent diff --git a/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h b/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h index d07561e1..0f3da174 100644 --- a/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h +++ b/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h @@ -41,6 +41,8 @@ static const INTERFACE_ID IID_ShaderMtl = class IShaderMtl : public IShader { public: + /// Returns the point to Metal shader function (MTLFunction) + virtual void* GetMtlShaderFunction() const = 0; }; } // namespace Diligent diff --git a/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h b/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h index 988327b9..07453e6d 100644 --- a/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h +++ b/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h @@ -41,6 +41,8 @@ static const INTERFACE_ID IID_TextureViewMtl = class ITextureViewMtl : public ITextureView { public: + /// Returns a pointer to Metal texture view (MTLTexture) + virtual void* GetMtlTexture() const = 0; }; } // namespace Diligent -- cgit v1.2.3