summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineMetal
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-09-28 19:15:20 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-09-28 19:15:20 +0000
commite96e78defb3faecc1689023f4fedf72588d67bbb (patch)
treed72fe25266a0079d1812270218e8caf1618b4b0f /Graphics/GraphicsEngineMetal
parentVulkan backend: few fixes to (diff)
downloadDiligentCore-e96e78defb3faecc1689023f4fedf72588d67bbb.tar.gz
DiligentCore-e96e78defb3faecc1689023f4fedf72588d67bbb.zip
Updated Metal interfaces plus a number of misc fixes
Diffstat (limited to 'Graphics/GraphicsEngineMetal')
-rw-r--r--Graphics/GraphicsEngineMetal/interface/BufferMtl.h2
-rw-r--r--Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h5
-rw-r--r--Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h2
-rw-r--r--Graphics/GraphicsEngineMetal/interface/ShaderMtl.h2
-rw-r--r--Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h2
5 files changed, 13 insertions, 0 deletions
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