summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineVulkan
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-01-28 18:45:43 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-01-28 18:45:43 +0000
commit5e9b0dd7fb610e326739676aa0a0d9615a8e9c2d (patch)
tree76b4d1299cb573311918f0ac566a157e029e67bc /Graphics/GraphicsEngineVulkan
parentReworked IShaderD3D::GetHLSLResource method to be compatible wit C (diff)
downloadDiligentCore-5e9b0dd7fb610e326739676aa0a0d9615a8e9c2d.tar.gz
DiligentCore-5e9b0dd7fb610e326739676aa0a0d9615a8e9c2d.zip
Reworked C inteface method calls to use CALL_IFACE_METHOD macro
Diffstat (limited to 'Graphics/GraphicsEngineVulkan')
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/BufferViewVk.h2
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/BufferVk.h11
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/CommandQueueVk.h18
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/DeviceContextVk.h8
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/EngineFactoryVk.h4
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/PipelineStateVk.h4
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/RenderDeviceVk.h16
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/SamplerVk.h2
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/SwapChainVk.h2
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/TextureViewVk.h2
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/TextureVk.h6
11 files changed, 35 insertions, 40 deletions
diff --git a/Graphics/GraphicsEngineVulkan/interface/BufferViewVk.h b/Graphics/GraphicsEngineVulkan/interface/BufferViewVk.h
index 15e04fb5..e1f1aa66 100644
--- a/Graphics/GraphicsEngineVulkan/interface/BufferViewVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/BufferViewVk.h
@@ -72,7 +72,7 @@ typedef struct IBufferViewVk
// clang-format off
-# define IBufferViewVk_GetVkBufferView(This) (This)->pVtbl->BufferViewVk.GetVkBufferView((IBufferViewVk*)(This))
+# define IBufferViewVk_GetVkBufferView(This) CALL_IFACE_METHOD(BufferViewVk, GetVkBufferView, This)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/BufferVk.h b/Graphics/GraphicsEngineVulkan/interface/BufferVk.h
index b75f672c..5e145f39 100644
--- a/Graphics/GraphicsEngineVulkan/interface/BufferVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/BufferVk.h
@@ -79,14 +79,9 @@ typedef struct IBufferVk
struct IBufferVkVtbl* pVtbl;
} IBufferVk;
-
-// clang-format off
-
-# define IBufferVk_GetVkBuffer(This, ...) (This)->pVtbl->BufferVk.GetVkBuffer ((IBufferVk*)(This), __VA_ARGS__)
-# define IBufferVk_SetAccessFlags(This, ...) (This)->pVtbl->BufferVk.SetAccessFlags((IBufferVk*)(This), __VA_ARGS__)
-# define IBufferVk_GetAccessFlags(This) (This)->pVtbl->BufferVk.GetAccessFlags((IBufferVk*)(This))
-
-// clang-format on
+# define IBufferVk_GetVkBuffer(This) CALL_IFACE_METHOD(BufferVk, GetVkBuffer, This)
+# define IBufferVk_SetAccessFlags(This, ...) CALL_IFACE_METHOD(BufferVk, SetAccessFlags, This, __VA_ARGS__)
+# define IBufferVk_GetAccessFlags(This) CALL_IFACE_METHOD(BufferVk, GetAccessFlags, This)
#endif
diff --git a/Graphics/GraphicsEngineVulkan/interface/CommandQueueVk.h b/Graphics/GraphicsEngineVulkan/interface/CommandQueueVk.h
index 53136d2b..9742d474 100644
--- a/Graphics/GraphicsEngineVulkan/interface/CommandQueueVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/CommandQueueVk.h
@@ -103,15 +103,15 @@ typedef struct ICommandQueueVk
// clang-format off
-# define ICommandQueueVk_GetNextFenceValue(This) (This)->pVtbl->CommandQueueVk.GetNextFenceValue ((ICommandQueueVk*)(This))
-# define ICommandQueueVk_SubmitCmdBuffer(This, ...) (This)->pVtbl->CommandQueueVk.SubmitCmdBuffer ((ICommandQueueVk*)(This), __VA_ARGS__)
-# define ICommandQueueVk_Submit(This, ...) (This)->pVtbl->CommandQueueVk.Submit ((ICommandQueueVk*)(This), __VA_ARGS__)
-# define ICommandQueueVk_Present(This, ...) (This)->pVtbl->CommandQueueVk.Present ((ICommandQueueVk*)(This), __VA_ARGS__)
-# define ICommandQueueVk_GetVkQueue(This) (This)->pVtbl->CommandQueueVk.GetVkQueue ((ICommandQueueVk*)(This))
-# define ICommandQueueVk_GetQueueFamilyIndex(This) (This)->pVtbl->CommandQueueVk.GetQueueFamilyIndex ((ICommandQueueVk*)(This))
-# define ICommandQueueVk_GetCompletedFenceValue(This) (This)->pVtbl->CommandQueueVk.GetCompletedFenceValue((ICommandQueueVk*)(This))
-# define ICommandQueueVk_WaitForIdle(This) (This)->pVtbl->CommandQueueVk.WaitForIdle ((ICommandQueueVk*)(This))
-# define ICommandQueueVk_SignalFence(This, ...) (This)->pVtbl->CommandQueueVk.SignalFence ((ICommandQueueVk*)(This), __VA_ARGS__)
+# define ICommandQueueVk_GetNextFenceValue(This) CALL_IFACE_METHOD(CommandQueueVk, GetNextFenceValue, This)
+# define ICommandQueueVk_SubmitCmdBuffer(This, ...) CALL_IFACE_METHOD(CommandQueueVk, SubmitCmdBuffer, This, __VA_ARGS__)
+# define ICommandQueueVk_Submit(This, ...) CALL_IFACE_METHOD(CommandQueueVk, Submit, This, __VA_ARGS__)
+# define ICommandQueueVk_Present(This, ...) CALL_IFACE_METHOD(CommandQueueVk, Present, This, __VA_ARGS__)
+# define ICommandQueueVk_GetVkQueue(This) CALL_IFACE_METHOD(CommandQueueVk, GetVkQueue, This)
+# define ICommandQueueVk_GetQueueFamilyIndex(This) CALL_IFACE_METHOD(CommandQueueVk, GetQueueFamilyIndex, This)
+# define ICommandQueueVk_GetCompletedFenceValue(This) CALL_IFACE_METHOD(CommandQueueVk, GetCompletedFenceValue, This)
+# define ICommandQueueVk_WaitForIdle(This) CALL_IFACE_METHOD(CommandQueueVk, WaitForIdle, This)
+# define ICommandQueueVk_SignalFence(This, ...) CALL_IFACE_METHOD(CommandQueueVk, SignalFence, This, __VA_ARGS__)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/DeviceContextVk.h b/Graphics/GraphicsEngineVulkan/interface/DeviceContextVk.h
index 02b6e5d9..67183f1b 100644
--- a/Graphics/GraphicsEngineVulkan/interface/DeviceContextVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/DeviceContextVk.h
@@ -108,10 +108,10 @@ typedef struct IDeviceContextVk
// clang-format off
-# define IDeviceContextVk_TransitionImageLayout(This, ...) (This)->pVtbl->DeviceContextVk.TransitionImageLayout((IDeviceContextVk*)(This), __VA_ARGS__)
-# define IDeviceContextVk_BufferMemoryBarrier(This, ...) (This)->pVtbl->DeviceContextVk.BufferMemoryBarrier ((IDeviceContextVk*)(This), __VA_ARGS__)
-# define IDeviceContextVk_LockCommandQueue(This) (This)->pVtbl->DeviceContextVk.LockCommandQueue ((IDeviceContextVk*)(This))
-# define IDeviceContextVk_UnlockCommandQueue(This) (This)->pVtbl->DeviceContextVk.UnlockCommandQueue ((IDeviceContextVk*)(This))
+# define IDeviceContextVk_TransitionImageLayout(This, ...) CALL_IFACE_METHOD(DeviceContextVk, TransitionImageLayout, This, __VA_ARGS__)
+# define IDeviceContextVk_BufferMemoryBarrier(This, ...) CALL_IFACE_METHOD(DeviceContextVk, BufferMemoryBarrier, This, __VA_ARGS__)
+# define IDeviceContextVk_LockCommandQueue(This) CALL_IFACE_METHOD(DeviceContextVk, LockCommandQueue, This)
+# define IDeviceContextVk_UnlockCommandQueue(This) CALL_IFACE_METHOD(DeviceContextVk, UnlockCommandQueue, This)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/EngineFactoryVk.h b/Graphics/GraphicsEngineVulkan/interface/EngineFactoryVk.h
index c8dfbda6..a074c14a 100644
--- a/Graphics/GraphicsEngineVulkan/interface/EngineFactoryVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/EngineFactoryVk.h
@@ -101,8 +101,8 @@ typedef struct IEngineFactoryVk
// clang-format off
-# define IEngineFactoryVk_CreateDeviceAndContextsVk(This, ...) (This)->pVtbl->EngineFactoryVk.CreateDeviceAndContextsVk((IEngineFactoryVk*)(This), __VA_ARGS__)
-# define IEngineFactoryVk_CreateSwapChainVk(This, ...) (This)->pVtbl->EngineFactoryVk.CreateSwapChainVk ((IEngineFactoryVk*)(This), __VA_ARGS__)
+# define IEngineFactoryVk_CreateDeviceAndContextsVk(This, ...) CALL_IFACE_METHOD(EngineFactoryVk, CreateDeviceAndContextsVk, This, __VA_ARGS__)
+# define IEngineFactoryVk_CreateSwapChainVk(This, ...) CALL_IFACE_METHOD(EngineFactoryVk, CreateSwapChainVk, This, __VA_ARGS__)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/PipelineStateVk.h b/Graphics/GraphicsEngineVulkan/interface/PipelineStateVk.h
index 0ee50041..0102ddfb 100644
--- a/Graphics/GraphicsEngineVulkan/interface/PipelineStateVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/PipelineStateVk.h
@@ -70,8 +70,8 @@ typedef struct IPipelineStateVk
// clang-format off
-# define IPipelineStateVk_GetVkRenderPass(This) (This)->pVtbl->PipelineStateVk.GetVkRenderPass((IPipelineStateVk*)(This))
-# define IPipelineStateVk_GetVkPipeline(This) (This)->pVtbl->PipelineStateVk.GetVkPipeline((IPipelineStateVk*)(This))
+# define IPipelineStateVk_GetVkRenderPass(This) CALL_IFACE_METHOD(PipelineStateVk, GetVkRenderPass, This)
+# define IPipelineStateVk_GetVkPipeline(This) CALL_IFACE_METHOD(PipelineStateVk, GetVkPipeline, This)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/RenderDeviceVk.h b/Graphics/GraphicsEngineVulkan/interface/RenderDeviceVk.h
index 382c6f9a..270a5b4e 100644
--- a/Graphics/GraphicsEngineVulkan/interface/RenderDeviceVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/RenderDeviceVk.h
@@ -130,14 +130,14 @@ typedef struct IRenderDeviceVk
// clang-format off
-# define IRenderDeviceVk_GetVkDevice(This) (This)->pVtbl->RenderDeviceVk.GetVkDevice ((IRenderDeviceVk*)(This))
-# define IRenderDeviceVk_GetVkPhysicalDevice(This) (This)->pVtbl->RenderDeviceVk.GetVkPhysicalDevice ((IRenderDeviceVk*)(This))
-# define IRenderDeviceVk_GetVkInstance(This) (This)->pVtbl->RenderDeviceVk.GetVkInstance ((IRenderDeviceVk*)(This))
-# define IRenderDeviceVk_GetNextFenceValue(This, ...) (This)->pVtbl->RenderDeviceVk.GetNextFenceValue ((IRenderDeviceVk*)(This), __VA_ARGS__)
-# define IRenderDeviceVk_GetCompletedFenceValue(This, ...) (This)->pVtbl->RenderDeviceVk.GetCompletedFenceValue ((IRenderDeviceVk*)(This), __VA_ARGS__)
-# define IRenderDeviceVk_IsFenceSignaled(This, ...) (This)->pVtbl->RenderDeviceVk.IsFenceSignaled ((IRenderDeviceVk*)(This), __VA_ARGS__)
-# define IRenderDeviceVk_CreateTextureFromVulkanImage(This, ...) (This)->pVtbl->RenderDeviceVk.CreateTextureFromVulkanImage ((IRenderDeviceVk*)(This), __VA_ARGS__)
-# define IRenderDeviceVk_CreateBufferFromVulkanResource(This, ...) (This)->pVtbl->RenderDeviceVk.CreateBufferFromVulkanResource ((IRenderDeviceVk*)(This), __VA_ARGS__)
+# define IRenderDeviceVk_GetVkDevice(This) CALL_IFACE_METHOD(RenderDeviceVk, GetVkDevice, This)
+# define IRenderDeviceVk_GetVkPhysicalDevice(This) CALL_IFACE_METHOD(RenderDeviceVk, GetVkPhysicalDevice, This)
+# define IRenderDeviceVk_GetVkInstance(This) CALL_IFACE_METHOD(RenderDeviceVk, GetVkInstance, This)
+# define IRenderDeviceVk_GetNextFenceValue(This, ...) CALL_IFACE_METHOD(RenderDeviceVk, GetNextFenceValue, This, __VA_ARGS__)
+# define IRenderDeviceVk_GetCompletedFenceValue(This, ...) CALL_IFACE_METHOD(RenderDeviceVk, GetCompletedFenceValue, This, __VA_ARGS__)
+# define IRenderDeviceVk_IsFenceSignaled(This, ...) CALL_IFACE_METHOD(RenderDeviceVk, IsFenceSignaled, This, __VA_ARGS__)
+# define IRenderDeviceVk_CreateTextureFromVulkanImage(This, ...) CALL_IFACE_METHOD(RenderDeviceVk, CreateTextureFromVulkanImage, This, __VA_ARGS__)
+# define IRenderDeviceVk_CreateBufferFromVulkanResource(This, ...) CALL_IFACE_METHOD(RenderDeviceVk, CreateBufferFromVulkanResource, This, __VA_ARGS__)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/SamplerVk.h b/Graphics/GraphicsEngineVulkan/interface/SamplerVk.h
index a9eb456d..38e034a9 100644
--- a/Graphics/GraphicsEngineVulkan/interface/SamplerVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/SamplerVk.h
@@ -65,7 +65,7 @@ typedef struct ISamplerVk
struct ISamplerVkVtbl* pVtbl;
} ISamplerVk;
-# define ISamplerVk_GetVkSampler(This) (This)->pVtbl->SamplerVk.GetVkSampler((ISamplerVk*)(This))
+# define ISamplerVk_GetVkSampler(This) CALL_IFACE_METHOD(SamplerVk, GetVkSampler, This)
#endif
diff --git a/Graphics/GraphicsEngineVulkan/interface/SwapChainVk.h b/Graphics/GraphicsEngineVulkan/interface/SwapChainVk.h
index 290b9dac..033d5c5b 100644
--- a/Graphics/GraphicsEngineVulkan/interface/SwapChainVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/SwapChainVk.h
@@ -70,7 +70,7 @@ typedef struct ISwapChainVk
// clang-format off
-# define ISwapChainVk_GetVkSwapChain(This) (This)->pVtbl->SwapChainVk.GetVkSwapChain((ISwapChainVk*)(This))
+# define ISwapChainVk_GetVkSwapChain(This) CALL_IFACE_METHOD(SwapChainVk, GetVkSwapChain, This)
// clang-format on
diff --git a/Graphics/GraphicsEngineVulkan/interface/TextureViewVk.h b/Graphics/GraphicsEngineVulkan/interface/TextureViewVk.h
index 12b70e1f..968273e8 100644
--- a/Graphics/GraphicsEngineVulkan/interface/TextureViewVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/TextureViewVk.h
@@ -71,7 +71,7 @@ typedef struct ITextureViewVk
// clang-format off
-# define ITextureViewVk_GetVulkanImageView(This) (This)->pVtbl->TextureViewVk.GetVulkanImageView((ITextureViewVk*)(This))
+# define ITextureViewVk_GetVulkanImageView(This) CALL_IFACE_METHOD(TextureViewVk, GetVulkanImageView, This)
// clang-format ons
diff --git a/Graphics/GraphicsEngineVulkan/interface/TextureVk.h b/Graphics/GraphicsEngineVulkan/interface/TextureVk.h
index bd8c961a..f8336f09 100644
--- a/Graphics/GraphicsEngineVulkan/interface/TextureVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/TextureVk.h
@@ -84,9 +84,9 @@ typedef struct ITextureVk
// clang-format off
-# define ITextureVk_GetVkImage(This) (This)->pVtbl->TextureVk.GetVkImage((ITextureVk*)(This))
-# define ITextureVk_SetLayout(This, ...) (This)->pVtbl->TextureVk.SetLayout ((ITextureVk*)(This), __VA_ARGS__)
-# define ITextureVk_GetLayout(This) (This)->pVtbl->TextureVk.GetLayout ((ITextureVk*)(This))
+# define ITextureVk_GetVkImage(This) CALL_IFACE_METHOD(TextureVk, GetVkImage,This)
+# define ITextureVk_SetLayout(This, ...) CALL_IFACE_METHOD(TextureVk, SetLayout, This, __VA_ARGS__)
+# define ITextureVk_GetLayout(This) CALL_IFACE_METHOD(TextureVk, GetLayout, This)
// clang-format ons