summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineMetal
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-10-01 08:22:24 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-10-01 08:22:24 +0000
commitd5c9bd79e64ddf6854a7f17ae044d8c5968e3b80 (patch)
tree7fd913690924979b224b848dad7fc50251c24cbd /Graphics/GraphicsEngineMetal
parentUnified staging buffer offset processing in Vulkan and GL (diff)
downloadDiligentCore-d5c9bd79e64ddf6854a7f17ae044d8c5968e3b80.tar.gz
DiligentCore-d5c9bd79e64ddf6854a7f17ae044d8c5968e3b80.zip
Metal interface: using id<> instead of void*
Diffstat (limited to 'Graphics/GraphicsEngineMetal')
-rw-r--r--Graphics/GraphicsEngineMetal/interface/BufferMtl.h4
-rw-r--r--Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h11
-rw-r--r--Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h7
-rw-r--r--Graphics/GraphicsEngineMetal/interface/ShaderMtl.h2
-rw-r--r--Graphics/GraphicsEngineMetal/interface/TextureMtl.h2
-rw-r--r--Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h2
6 files changed, 17 insertions, 11 deletions
diff --git a/Graphics/GraphicsEngineMetal/interface/BufferMtl.h b/Graphics/GraphicsEngineMetal/interface/BufferMtl.h
index 7f4a0a61..d7b2a7fd 100644
--- a/Graphics/GraphicsEngineMetal/interface/BufferMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/BufferMtl.h
@@ -41,8 +41,8 @@ static const INTERFACE_ID IID_BufferMtl =
class IBufferMtl : public IBuffer
{
public:
- /// Returns a pointer to a Metal buffer (MTLBuffer).
- virtual void* GetMtlResource() const = 0;
+ /// Returns a pointer to a Metal buffer object.
+ virtual id<MTLBuffer> GetMtlResource() const = 0;
};
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h b/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h
index aaea6a0d..a74c86fa 100644
--- a/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/PipelineStateMtl.h
@@ -41,11 +41,14 @@ 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 render pipeline (MTLRenderPipelineState)
+ virtual id<MTLRenderPipelineState> GetMtlRenderPipeline() const = 0;
- /// Returns a pointer to Metal depth-stencil state (MTLDepthStencilState)
- virtual void* GetMtlDepthStencilState() const = 0;
+ /// Returns a pointer to Metal compute pipeline (MTLComputePipelineState)
+ virtual id<MTLComputePipelineState> GetMtlComputePipeline() const = 0;
+
+ /// Returns a pointer to Metal depth-stencil state object (MTLDepthStencilState)
+ virtual id<MTLDepthStencilState> GetMtlDepthStencilState() const = 0;
};
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h b/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h
index 11fe4199..5c1d8233 100644
--- a/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/RenderDeviceMtl.h
@@ -41,8 +41,11 @@ static const INTERFACE_ID IID_RenderDeviceMtl =
class IRenderDeviceMtl : public IRenderDevice
{
public:
- /// Returns the pointer to MTLDevice object
- virtual void* GetMtlDevice() const = 0;
+ /// Returns the pointer to Metal device (MTLDevice).
+ virtual id<MTLDevice> GetMtlDevice() const = 0;
+
+ /// Returns the pointer to Metal command queue (MTLCommandQueue).
+ virtual id<MTLCommandQueue> GetMtlCommandQueue() const = 0;
};
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h b/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h
index 0f3da174..c8f8da84 100644
--- a/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/ShaderMtl.h
@@ -42,7 +42,7 @@ class IShaderMtl : public IShader
{
public:
/// Returns the point to Metal shader function (MTLFunction)
- virtual void* GetMtlShaderFunction() const = 0;
+ virtual id<MTLFunction> GetMtlShaderFunction() const = 0;
};
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineMetal/interface/TextureMtl.h b/Graphics/GraphicsEngineMetal/interface/TextureMtl.h
index bced9bb7..892ae190 100644
--- a/Graphics/GraphicsEngineMetal/interface/TextureMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/TextureMtl.h
@@ -44,7 +44,7 @@ public:
/// Returns a pointer to a Metal resource.
/// For a staging texture, this will be a pointer to a MTLStorageModeShared buffer (MTLBuffer).
/// For all other texture types, this will be a pointer to Metal texture object (MTLTexture).
- virtual void* GetMtlResource() const = 0;
+ virtual id<MTLResource> GetMtlResource() const = 0;
};
} // namespace Diligent
diff --git a/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h b/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h
index 07453e6d..8b75a074 100644
--- a/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h
+++ b/Graphics/GraphicsEngineMetal/interface/TextureViewMtl.h
@@ -42,7 +42,7 @@ class ITextureViewMtl : public ITextureView
{
public:
/// Returns a pointer to Metal texture view (MTLTexture)
- virtual void* GetMtlTexture() const = 0;
+ virtual id<MTLTexture> GetMtlTexture() const = 0;
};
} // namespace Diligent