summaryrefslogtreecommitdiffstats
path: root/Graphics/GraphicsEngineVulkan
diff options
context:
space:
mode:
authorassiduous <assiduous@diligentgraphics.com>2020-01-29 09:42:59 +0000
committerassiduous <assiduous@diligentgraphics.com>2020-01-29 09:42:59 +0000
commitc072867aaf9433ea128438db155fc148d3296b10 (patch)
tree301de4d00559466d4ad32492ffc61cb612de8f91 /Graphics/GraphicsEngineVulkan
parentFixed a number of minor issues (diff)
downloadDiligentCore-c072867aaf9433ea128438db155fc148d3296b10.tar.gz
DiligentCore-c072867aaf9433ea128438db155fc148d3296b10.zip
Added API function call type specification to fix c/c++ mismatch on x86 MSVC
Diffstat (limited to 'Graphics/GraphicsEngineVulkan')
-rw-r--r--Graphics/GraphicsEngineVulkan/include/BufferViewVkImpl.hpp4
-rw-r--r--Graphics/GraphicsEngineVulkan/include/BufferVkImpl.hpp10
-rw-r--r--Graphics/GraphicsEngineVulkan/include/CommandQueueVkImpl.hpp20
-rw-r--r--Graphics/GraphicsEngineVulkan/include/DeviceContextVkImpl.hpp171
-rw-r--r--Graphics/GraphicsEngineVulkan/include/FenceVkImpl.hpp4
-rw-r--r--Graphics/GraphicsEngineVulkan/include/PipelineStateVkImpl.hpp18
-rw-r--r--Graphics/GraphicsEngineVulkan/include/QueryVkImpl.hpp4
-rw-r--r--Graphics/GraphicsEngineVulkan/include/RenderDeviceVkImpl.hpp40
-rw-r--r--Graphics/GraphicsEngineVulkan/include/SamplerVkImpl.hpp4
-rw-r--r--Graphics/GraphicsEngineVulkan/include/ShaderResourceBindingVkImpl.hpp12
-rw-r--r--Graphics/GraphicsEngineVulkan/include/ShaderVariableVk.hpp22
-rw-r--r--Graphics/GraphicsEngineVulkan/include/ShaderVkImpl.hpp6
-rw-r--r--Graphics/GraphicsEngineVulkan/include/SwapChainVkImpl.hpp16
-rw-r--r--Graphics/GraphicsEngineVulkan/include/TextureViewVkImpl.hpp4
-rw-r--r--Graphics/GraphicsEngineVulkan/include/TextureVkImpl.hpp10
-rw-r--r--Graphics/GraphicsEngineVulkan/interface/ShaderVk.h2
-rw-r--r--Graphics/GraphicsEngineVulkan/src/EngineFactoryVk.cpp36
17 files changed, 205 insertions, 178 deletions
diff --git a/Graphics/GraphicsEngineVulkan/include/BufferViewVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/BufferViewVkImpl.hpp
index 7dfd2917..1d6acecd 100644
--- a/Graphics/GraphicsEngineVulkan/include/BufferViewVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/BufferViewVkImpl.hpp
@@ -56,10 +56,10 @@ public:
bool bIsDefaultView);
~BufferViewVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of IBufferViewVk::GetVkBufferView().
- virtual VkBufferView GetVkBufferView() const override final { return m_BuffView; }
+ virtual VkBufferView DILIGENT_CALL_TYPE GetVkBufferView() const override final { return m_BuffView; }
const BufferVkImpl* GetBufferVk() const;
BufferVkImpl* GetBufferVk();
diff --git a/Graphics/GraphicsEngineVulkan/include/BufferVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/BufferVkImpl.hpp
index 0e0798a0..0f9a5a9e 100644
--- a/Graphics/GraphicsEngineVulkan/include/BufferVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/BufferVkImpl.hpp
@@ -66,7 +66,7 @@ public:
VkBuffer vkBuffer);
~BufferVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override;
#ifdef DEVELOPMENT
void DvpVerifyDynamicAllocation(DeviceContextVkImpl* pCtx) const;
@@ -91,20 +91,20 @@ public:
}
/// Implementation of IBufferVk::GetVkBuffer().
- VkBuffer GetVkBuffer() const override final;
+ virtual VkBuffer DILIGENT_CALL_TYPE GetVkBuffer() const override final;
/// Implementation of IBuffer::GetNativeHandle() in Vulkan backend.
- virtual void* GetNativeHandle() override final
+ virtual void* DILIGENT_CALL_TYPE GetNativeHandle() override final
{
auto vkBuffer = GetVkBuffer();
return reinterpret_cast<void*>(vkBuffer);
}
/// Implementation of IBufferVk::SetAccessFlags().
- virtual void SetAccessFlags(VkAccessFlags AccessFlags) override final;
+ virtual void DILIGENT_CALL_TYPE SetAccessFlags(VkAccessFlags AccessFlags) override final;
/// Implementation of IBufferVk::GetAccessFlags().
- virtual VkAccessFlags GetAccessFlags() const override final;
+ virtual VkAccessFlags DILIGENT_CALL_TYPE GetAccessFlags() const override final;
bool CheckAccessFlags(VkAccessFlags AccessFlags) const
{
diff --git a/Graphics/GraphicsEngineVulkan/include/CommandQueueVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/CommandQueueVkImpl.hpp
index 4d21beb8..b635b748 100644
--- a/Graphics/GraphicsEngineVulkan/include/CommandQueueVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/CommandQueueVkImpl.hpp
@@ -52,34 +52,34 @@ public:
uint32_t QueueFamilyIndex);
~CommandQueueVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of ICommandQueueVk::GetNextFenceValue().
- virtual Uint64 GetNextFenceValue() const override final { return m_NextFenceValue; }
+ virtual Uint64 DILIGENT_CALL_TYPE GetNextFenceValue() const override final { return m_NextFenceValue; }
/// Implementation of ICommandQueueVk::Submit().
- virtual Uint64 SubmitCmdBuffer(VkCommandBuffer cmdBuffer) override final;
+ virtual Uint64 DILIGENT_CALL_TYPE SubmitCmdBuffer(VkCommandBuffer cmdBuffer) override final;
/// Implementation of ICommandQueueVk::Submit().
- virtual Uint64 Submit(const VkSubmitInfo& SubmitInfo) override final;
+ virtual Uint64 DILIGENT_CALL_TYPE Submit(const VkSubmitInfo& SubmitInfo) override final;
/// Implementation of ICommandQueueVk::Present().
- virtual VkResult Present(const VkPresentInfoKHR& PresentInfo) override final;
+ virtual VkResult DILIGENT_CALL_TYPE Present(const VkPresentInfoKHR& PresentInfo) override final;
/// Implementation of ICommandQueueVk::GetVkQueue().
- virtual VkQueue GetVkQueue() override final { return m_VkQueue; }
+ virtual VkQueue DILIGENT_CALL_TYPE GetVkQueue() override final { return m_VkQueue; }
/// Implementation of ICommandQueueVk::GetQueueFamilyIndex().
- virtual uint32_t GetQueueFamilyIndex() const override final { return m_QueueFamilyIndex; }
+ virtual uint32_t DILIGENT_CALL_TYPE GetQueueFamilyIndex() const override final { return m_QueueFamilyIndex; }
/// Implementation of ICommandQueueVk::GetQueueFamilyIndex().
- virtual Uint64 WaitForIdle() override final;
+ virtual Uint64 DILIGENT_CALL_TYPE WaitForIdle() override final;
/// Implementation of ICommandQueueVk::GetCompletedFenceValue().
- virtual Uint64 GetCompletedFenceValue() override final;
+ virtual Uint64 DILIGENT_CALL_TYPE GetCompletedFenceValue() override final;
/// Implementation of ICommandQueueVk::SignalFence().
- virtual void SignalFence(VkFence vkFence) override final;
+ virtual void DILIGENT_CALL_TYPE SignalFence(VkFence vkFence) override final;
void SetFence(RefCntAutoPtr<FenceVkImpl> pFence) { m_pFence = std::move(pFence); }
diff --git a/Graphics/GraphicsEngineVulkan/include/DeviceContextVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/DeviceContextVkImpl.hpp
index cb1cfe2e..83e2c077 100644
--- a/Graphics/GraphicsEngineVulkan/include/DeviceContextVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/DeviceContextVkImpl.hpp
@@ -80,144 +80,159 @@ public:
std::shared_ptr<GenerateMipsVkHelper> GenerateMipsHelper);
~DeviceContextVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of IDeviceContext::SetPipelineState() in Vulkan backend.
- virtual void SetPipelineState(IPipelineState* pPipelineState) override final;
+ virtual void DILIGENT_CALL_TYPE SetPipelineState(IPipelineState* pPipelineState) override final;
/// Implementation of IDeviceContext::TransitionShaderResources() in Vulkan backend.
- virtual void TransitionShaderResources(IPipelineState* pPipelineState, IShaderResourceBinding* pShaderResourceBinding) override final;
+ virtual void DILIGENT_CALL_TYPE TransitionShaderResources(IPipelineState* pPipelineState,
+ IShaderResourceBinding* pShaderResourceBinding) override final;
/// Implementation of IDeviceContext::CommitShaderResources() in Vulkan backend.
- virtual void CommitShaderResources(IShaderResourceBinding* pShaderResourceBinding, RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE CommitShaderResources(IShaderResourceBinding* pShaderResourceBinding,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
/// Implementation of IDeviceContext::SetStencilRef() in Vulkan backend.
- virtual void SetStencilRef(Uint32 StencilRef) override final;
+ virtual void DILIGENT_CALL_TYPE SetStencilRef(Uint32 StencilRef) override final;
/// Implementation of IDeviceContext::SetBlendFactors() in Vulkan backend.
- virtual void SetBlendFactors(const float* pBlendFactors = nullptr) override final;
+ virtual void DILIGENT_CALL_TYPE SetBlendFactors(const float* pBlendFactors = nullptr) override final;
/// Implementation of IDeviceContext::SetVertexBuffers() in Vulkan backend.
- virtual void SetVertexBuffers(Uint32 StartSlot,
- Uint32 NumBuffersSet,
- IBuffer** ppBuffers,
- Uint32* pOffsets,
- RESOURCE_STATE_TRANSITION_MODE StateTransitionMode,
- SET_VERTEX_BUFFERS_FLAGS Flags) override final;
+ virtual void DILIGENT_CALL_TYPE SetVertexBuffers(Uint32 StartSlot,
+ Uint32 NumBuffersSet,
+ IBuffer** ppBuffers,
+ Uint32* pOffsets,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode,
+ SET_VERTEX_BUFFERS_FLAGS Flags) override final;
/// Implementation of IDeviceContext::InvalidateState() in Vulkan backend.
- virtual void InvalidateState() override final;
+ virtual void DILIGENT_CALL_TYPE InvalidateState() override final;
/// Implementation of IDeviceContext::SetIndexBuffer() in Vulkan backend.
- virtual void SetIndexBuffer(IBuffer* pIndexBuffer, Uint32 ByteOffset, RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE SetIndexBuffer(IBuffer* pIndexBuffer,
+ Uint32 ByteOffset,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
/// Implementation of IDeviceContext::SetViewports() in Vulkan backend.
- virtual void SetViewports(Uint32 NumViewports, const Viewport* pViewports, Uint32 RTWidth, Uint32 RTHeight) override final;
+ virtual void DILIGENT_CALL_TYPE SetViewports(Uint32 NumViewports,
+ const Viewport* pViewports,
+ Uint32 RTWidth,
+ Uint32 RTHeight) override final;
/// Implementation of IDeviceContext::SetScissorRects() in Vulkan backend.
- virtual void SetScissorRects(Uint32 NumRects, const Rect* pRects, Uint32 RTWidth, Uint32 RTHeight) override final;
+ virtual void DILIGENT_CALL_TYPE SetScissorRects(Uint32 NumRects,
+ const Rect* pRects,
+ Uint32 RTWidth,
+ Uint32 RTHeight) override final;
/// Implementation of IDeviceContext::SetRenderTargets() in Vulkan backend.
- virtual void SetRenderTargets(Uint32 NumRenderTargets,
- ITextureView* ppRenderTargets[],
- ITextureView* pDepthStencil,
- RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE SetRenderTargets(Uint32 NumRenderTargets,
+ ITextureView* ppRenderTargets[],
+ ITextureView* pDepthStencil,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
// clang-format off
/// Implementation of IDeviceContext::Draw() in Vulkan backend.
- virtual void Draw (const DrawAttribs& Attribs) override final;
+ virtual void DILIGENT_CALL_TYPE Draw (const DrawAttribs& Attribs) override final;
/// Implementation of IDeviceContext::DrawIndexed() in Vulkan backend.
- virtual void DrawIndexed (const DrawIndexedAttribs& Attribs) override final;
+ virtual void DILIGENT_CALL_TYPE DrawIndexed (const DrawIndexedAttribs& Attribs) override final;
/// Implementation of IDeviceContext::DrawIndirect() in Vulkan backend.
- virtual void DrawIndirect (const DrawIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
+ virtual void DILIGENT_CALL_TYPE DrawIndirect (const DrawIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
/// Implementation of IDeviceContext::DrawIndexedIndirect() in Vulkan backend.
- virtual void DrawIndexedIndirect(const DrawIndexedIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
+ virtual void DILIGENT_CALL_TYPE DrawIndexedIndirect(const DrawIndexedIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
/// Implementation of IDeviceContext::DispatchCompute() in Vulkan backend.
- virtual void DispatchCompute (const DispatchComputeAttribs& Attribs) override final;
+ virtual void DILIGENT_CALL_TYPE DispatchCompute (const DispatchComputeAttribs& Attribs) override final;
/// Implementation of IDeviceContext::DispatchComputeIndirect() in Vulkan backend.
- virtual void DispatchComputeIndirect(const DispatchComputeIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
+ virtual void DILIGENT_CALL_TYPE DispatchComputeIndirect(const DispatchComputeIndirectAttribs& Attribs, IBuffer* pAttribsBuffer) override final;
// clang-format on
/// Implementation of IDeviceContext::ClearDepthStencil() in Vulkan backend.
- virtual void ClearDepthStencil(ITextureView* pView,
- CLEAR_DEPTH_STENCIL_FLAGS ClearFlags,
- float fDepth,
- Uint8 Stencil,
- RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE ClearDepthStencil(ITextureView* pView,
+ CLEAR_DEPTH_STENCIL_FLAGS ClearFlags,
+ float fDepth,
+ Uint8 Stencil,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
/// Implementation of IDeviceContext::ClearRenderTarget() in Vulkan backend.
- virtual void ClearRenderTarget(ITextureView* pView, const float* RGBA, RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE ClearRenderTarget(ITextureView* pView,
+ const float* RGBA,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
/// Implementation of IDeviceContext::UpdateBuffer() in Vulkan backend.
- virtual void UpdateBuffer(IBuffer* pBuffer,
- Uint32 Offset,
- Uint32 Size,
- const void* pData,
- RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE UpdateBuffer(IBuffer* pBuffer,
+ Uint32 Offset,
+ Uint32 Size,
+ const void* pData,
+ RESOURCE_STATE_TRANSITION_MODE StateTransitionMode) override final;
/// Implementation of IDeviceContext::CopyBuffer() in Vulkan backend.
- virtual void CopyBuffer(IBuffer* pSrcBuffer,
- Uint32 SrcOffset,
- RESOURCE_STATE_TRANSITION_MODE SrcBufferTransitionMode,
- IBuffer* pDstBuffer,
- Uint32 DstOffset,
- Uint32 Size,
- RESOURCE_STATE_TRANSITION_MODE DstBufferTransitionMode) override final;
+ virtual void DILIGENT_CALL_TYPE CopyBuffer(IBuffer* pSrcBuffer,
+ Uint32 SrcOffset,
+ RESOURCE_STATE_TRANSITION_MODE SrcBufferTransitionMode,
+ IBuffer* pDstBuffer,
+ Uint32 DstOffset,
+ Uint32 Size,
+ RESOURCE_STATE_TRANSITION_MODE DstBufferTransitionMode) override final;
/// Implementation of IDeviceContext::MapBuffer() in Vulkan backend.
- virtual void MapBuffer(IBuffer* pBuffer, MAP_TYPE MapType, MAP_FLAGS MapFlags, PVoid& pMappedData) override final;
+ virtual void DILIGENT_CALL_TYPE MapBuffer(IBuffer* pBuffer,
+ MAP_TYPE MapType,
+ MAP_FLAGS MapFlags,
+ PVoid& pMappedData) override final;
/// Implementation of IDeviceContext::UnmapBuffer() in Vulkan backend.
- virtual void UnmapBuffer(IBuffer* pBuffer, MAP_TYPE MapType) override final;
+ virtual void DILIGENT_CALL_TYPE UnmapBuffer(IBuffer* pBuffer, MAP_TYPE MapType) override final;
/// Implementation of IDeviceContext::UpdateTexture() in Vulkan backend.
- virtual void UpdateTexture(ITexture* pTexture,
- Uint32 MipLevel,
- Uint32 Slice,
- const Box& DstBox,
- const TextureSubResData& SubresData,
- RESOURCE_STATE_TRANSITION_MODE SrcBufferStateTransitionMode,
- RESOURCE_STATE_TRANSITION_MODE TextureStateTransitionModee) override final;
+ virtual void DILIGENT_CALL_TYPE UpdateTexture(ITexture* pTexture,
+ Uint32 MipLevel,
+ Uint32 Slice,
+ const Box& DstBox,
+ const TextureSubResData& SubresData,
+ RESOURCE_STATE_TRANSITION_MODE SrcBufferStateTransitionMode,
+ RESOURCE_STATE_TRANSITION_MODE TextureStateTransitionModee) override final;
/// Implementation of IDeviceContext::CopyTexture() in Vulkan backend.
- virtual void CopyTexture(const CopyTextureAttribs& CopyAttribs) override final;
+ virtual void DILIGENT_CALL_TYPE CopyTexture(const CopyTextureAttribs& CopyAttribs) override final;
/// Implementation of IDeviceContext::MapTextureSubresource() in Vulkan backend.
- virtual void MapTextureSubresource(ITexture* pTexture,
- Uint32 MipLevel,
- Uint32 ArraySlice,
- MAP_TYPE MapType,
- MAP_FLAGS MapFlags,
- const Box* pMapRegion,
- MappedTextureSubresource& MappedData) override final;
+ virtual void DILIGENT_CALL_TYPE MapTextureSubresource(ITexture* pTexture,
+ Uint32 MipLevel,
+ Uint32 ArraySlice,
+ MAP_TYPE MapType,
+ MAP_FLAGS MapFlags,
+ const Box* pMapRegion,
+ MappedTextureSubresource& MappedData) override final;
/// Implementation of IDeviceContext::UnmapTextureSubresource() in Vulkan backend.
- virtual void UnmapTextureSubresource(ITexture* pTexture, Uint32 MipLevel, Uint32 ArraySlice) override final;
+ virtual void DILIGENT_CALL_TYPE UnmapTextureSubresource(ITexture* pTexture, Uint32 MipLevel, Uint32 ArraySlice) override final;
/// Implementation of IDeviceContext::FinishCommandList() in Vulkan backend.
- virtual void FinishCommandList(class ICommandList** ppCommandList) override final;
+ virtual void DILIGENT_CALL_TYPE FinishCommandList(class ICommandList** ppCommandList) override final;
/// Implementation of IDeviceContext::ExecuteCommandList() in Vulkan backend.
- virtual void ExecuteCommandList(class ICommandList* pCommandList) override final;
+ virtual void DILIGENT_CALL_TYPE ExecuteCommandList(class ICommandList* pCommandList) override final;
/// Implementation of IDeviceContext::SignalFence() in Vulkan backend.
- virtual void SignalFence(IFence* pFence, Uint64 Value) override final;
+ virtual void DILIGENT_CALL_TYPE SignalFence(IFence* pFence, Uint64 Value) override final;
/// Implementation of IDeviceContext::WaitForFence() in Vulkan backend.
- virtual void WaitForFence(IFence* pFence, Uint64 Value, bool FlushContext) override final;
+ virtual void DILIGENT_CALL_TYPE WaitForFence(IFence* pFence, Uint64 Value, bool FlushContext) override final;
/// Implementation of IDeviceContext::WaitForIdle() in Vulkan backend.
- virtual void WaitForIdle() override final;
+ virtual void DILIGENT_CALL_TYPE WaitForIdle() override final;
/// Implementation of IDeviceContext::BeginQuery() in Vulkan backend.
- virtual void BeginQuery(IQuery* pQuery) override final;
+ virtual void DILIGENT_CALL_TYPE BeginQuery(IQuery* pQuery) override final;
/// Implementation of IDeviceContext::EndQuery() in Vulkan backend.
- virtual void EndQuery(IQuery* pQuery) override final;
+ virtual void DILIGENT_CALL_TYPE EndQuery(IQuery* pQuery) override final;
/// Implementation of IDeviceContext::Flush() in Vulkan backend.
- virtual void Flush() override final;
+ virtual void DILIGENT_CALL_TYPE Flush() override final;
// Transitions texture subresources from OldState to NewState, and optionally updates
// internal texture state.
@@ -234,7 +249,7 @@ public:
const VkImageSubresourceRange& SubresRange);
/// Implementation of IDeviceContextVk::TransitionImageLayout().
- virtual void TransitionImageLayout(ITexture* pTexture, VkImageLayout NewLayout) override final;
+ virtual void DILIGENT_CALL_TYPE TransitionImageLayout(ITexture* pTexture, VkImageLayout NewLayout) override final;
// Transitions buffer state from OldState to NewState, and optionally updates
@@ -246,7 +261,7 @@ public:
bool UpdateBufferState);
/// Implementation of IDeviceContextVk::BufferMemoryBarrier().
- virtual void BufferMemoryBarrier(IBuffer* pBuffer, VkAccessFlags NewAccessFlags) override final;
+ virtual void DILIGENT_CALL_TYPE BufferMemoryBarrier(IBuffer* pBuffer, VkAccessFlags NewAccessFlags) override final;
void AddWaitSemaphore(ManagedSemaphore* pWaitSemaphore, VkPipelineStageFlags WaitDstStageMask)
@@ -285,7 +300,7 @@ public:
const Box& DstBox,
RESOURCE_STATE_TRANSITION_MODE TextureTransitionMode);
- virtual void GenerateMips(ITextureView* pTexView) override final;
+ virtual void DILIGENT_CALL_TYPE GenerateMips(ITextureView* pTexView) override final;
Uint32 GetContextId() const { return m_ContextId; }
@@ -297,13 +312,13 @@ public:
return m_CommandBuffer;
}
- virtual void FinishFrame() override final;
+ virtual void DILIGENT_CALL_TYPE FinishFrame() override final;
- virtual void TransitionResourceStates(Uint32 BarrierCount, StateTransitionDesc* pResourceBarriers) override final;
+ virtual void DILIGENT_CALL_TYPE TransitionResourceStates(Uint32 BarrierCount, StateTransitionDesc* pResourceBarriers) override final;
- virtual void ResolveTextureSubresource(ITexture* pSrcTexture,
- ITexture* pDstTexture,
- const ResolveTextureSubresourceAttribs& ResolveAttribs) override final;
+ virtual void DILIGENT_CALL_TYPE ResolveTextureSubresource(ITexture* pSrcTexture,
+ ITexture* pDstTexture,
+ const ResolveTextureSubresourceAttribs& ResolveAttribs) override final;
VkDescriptorSet AllocateDynamicDescriptorSet(VkDescriptorSetLayout SetLayout, const char* DebugName = "")
{
diff --git a/Graphics/GraphicsEngineVulkan/include/FenceVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/FenceVkImpl.hpp
index 7005f658..f36da9f3 100644
--- a/Graphics/GraphicsEngineVulkan/include/FenceVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/FenceVkImpl.hpp
@@ -61,10 +61,10 @@ public:
/// are signaled later by the command context when it submits the command list. So there is no
/// guarantee that the fence pool is not accessed simultaneously by multiple threads even if the
/// fence object itself is protected by mutex.
- virtual Uint64 GetCompletedValue() override final;
+ virtual Uint64 DILIGENT_CALL_TYPE GetCompletedValue() override final;
/// Implementation of IFence::Reset() in Vulkan backend.
- virtual void Reset(Uint64 Value) override final;
+ virtual void DILIGENT_CALL_TYPE Reset(Uint64 Value) override final;
VulkanUtilities::FenceWrapper GetVkFence() { return m_FencePool.GetFence(); }
diff --git a/Graphics/GraphicsEngineVulkan/include/PipelineStateVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/PipelineStateVkImpl.hpp
index 7f52b578..b636ddc9 100644
--- a/Graphics/GraphicsEngineVulkan/include/PipelineStateVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/PipelineStateVkImpl.hpp
@@ -60,31 +60,31 @@ public:
PipelineStateVkImpl(IReferenceCounters* pRefCounters, RenderDeviceVkImpl* pDeviceVk, const PipelineStateDesc& PipelineDesc);
~PipelineStateVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of IPipelineState::CreateShaderResourceBinding() in Vulkan backend.
- virtual void CreateShaderResourceBinding(IShaderResourceBinding** ppShaderResourceBinding, bool InitStaticResources) override final;
+ virtual void DILIGENT_CALL_TYPE CreateShaderResourceBinding(IShaderResourceBinding** ppShaderResourceBinding, bool InitStaticResources) override final;
/// Implementation of IPipelineState::IsCompatibleWith() in Vulkan backend.
- virtual bool IsCompatibleWith(const IPipelineState* pPSO) const override final;
+ virtual bool DILIGENT_CALL_TYPE IsCompatibleWith(const IPipelineState* pPSO) const override final;
/// Implementation of IPipelineStateVk::GetVkRenderPass().
- virtual VkRenderPass GetVkRenderPass() const override final { return m_RenderPass; }
+ virtual VkRenderPass DILIGENT_CALL_TYPE GetVkRenderPass() const override final { return m_RenderPass; }
/// Implementation of IPipelineStateVk::GetVkPipeline().
- virtual VkPipeline GetVkPipeline() const override final { return m_Pipeline; }
+ virtual VkPipeline DILIGENT_CALL_TYPE GetVkPipeline() const override final { return m_Pipeline; }
/// Implementation of IPipelineState::BindStaticResources() in Vulkan backend.
- virtual void BindStaticResources(Uint32 ShaderFlags, IResourceMapping* pResourceMapping, Uint32 Flags) override final;
+ virtual void DILIGENT_CALL_TYPE BindStaticResources(Uint32 ShaderFlags, IResourceMapping* pResourceMapping, Uint32 Flags) override final;
/// Implementation of IPipelineState::GetStaticVariableCount() in Vulkan backend.
- virtual Uint32 GetStaticVariableCount(SHADER_TYPE ShaderType) const override final;
+ virtual Uint32 DILIGENT_CALL_TYPE GetStaticVariableCount(SHADER_TYPE ShaderType) const override final;
/// Implementation of IPipelineState::GetStaticVariableByName() in Vulkan backend.
- virtual IShaderResourceVariable* GetStaticVariableByName(SHADER_TYPE ShaderType, const Char* Name) override final;
+ virtual IShaderResourceVariable* DILIGENT_CALL_TYPE GetStaticVariableByName(SHADER_TYPE ShaderType, const Char* Name) override final;
/// Implementation of IPipelineState::GetStaticVariableByIndex() in Vulkan backend.
- virtual IShaderResourceVariable* GetStaticVariableByIndex(SHADER_TYPE ShaderType, Uint32 Index) override final;
+ virtual IShaderResourceVariable* DILIGENT_CALL_TYPE GetStaticVariableByIndex(SHADER_TYPE ShaderType, Uint32 Index) override final;
void CommitAndTransitionShaderResources(IShaderResourceBinding* pShaderResourceBinding,
DeviceContextVkImpl* pCtxVkImpl,
diff --git a/Graphics/GraphicsEngineVulkan/include/QueryVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/QueryVkImpl.hpp
index a17e3fde..a2814172 100644
--- a/Graphics/GraphicsEngineVulkan/include/QueryVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/QueryVkImpl.hpp
@@ -55,10 +55,10 @@ public:
IMPLEMENT_QUERY_INTERFACE_IN_PLACE(IID_QueryVk, TQueryBase);
/// Implementation of IQuery::GetData().
- virtual bool GetData(void* pData, Uint32 DataSize, bool AutoInvalidate) override final;
+ virtual bool DILIGENT_CALL_TYPE GetData(void* pData, Uint32 DataSize, bool AutoInvalidate) override final;
/// Implementation of IQuery::Invalidate().
- virtual void Invalidate() override final;
+ virtual void DILIGENT_CALL_TYPE Invalidate() override final;
Uint32 GetQueryPoolIndex() const
{
diff --git a/Graphics/GraphicsEngineVulkan/include/RenderDeviceVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/RenderDeviceVkImpl.hpp
index 3b76ac99..f5d8a492 100644
--- a/Graphics/GraphicsEngineVulkan/include/RenderDeviceVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/RenderDeviceVkImpl.hpp
@@ -69,48 +69,58 @@ public:
std::shared_ptr<VulkanUtilities::VulkanLogicalDevice> LogicalDevice);
~RenderDeviceVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of IRenderDevice::CreatePipelineState() in Vulkan backend.
- virtual void CreatePipelineState(const PipelineStateDesc& PipelineDesc, IPipelineState** ppPipelineState) override final;
+ virtual void DILIGENT_CALL_TYPE CreatePipelineState(const PipelineStateDesc& PipelineDesc, IPipelineState** ppPipelineState) override final;
/// Implementation of IRenderDevice::CreateBuffer() in Vulkan backend.
- virtual void CreateBuffer(const BufferDesc& BuffDesc, const BufferData* pBuffData, IBuffer** ppBuffer) override final;
+ virtual void DILIGENT_CALL_TYPE CreateBuffer(const BufferDesc& BuffDesc,
+ const BufferData* pBuffData,
+ IBuffer** ppBuffer) override final;
/// Implementation of IRenderDevice::CreateShader() in Vulkan backend.
- virtual void CreateShader(const ShaderCreateInfo& ShaderCreateInfo, IShader** ppShader) override final;
+ virtual void DILIGENT_CALL_TYPE CreateShader(const ShaderCreateInfo& ShaderCreateInfo, IShader** ppShader) override final;
/// Implementation of IRenderDevice::CreateTexture() in Vulkan backend.
- virtual void CreateTexture(const TextureDesc& TexDesc, const TextureData* pData, ITexture** ppTexture) override final;
+ virtual void DILIGENT_CALL_TYPE CreateTexture(const TextureDesc& TexDesc,
+ const TextureData* pData,
+ ITexture** ppTexture) override final;
void CreateTexture(const TextureDesc& TexDesc, VkImage vkImgHandle, RESOURCE_STATE InitialState, class TextureVkImpl** ppTexture);
/// Implementation of IRenderDevice::CreateSampler() in Vulkan backend.
- virtual void CreateSampler(const SamplerDesc& SamplerDesc, ISampler** ppSampler) override final;
+ virtual void DILIGENT_CALL_TYPE CreateSampler(const SamplerDesc& SamplerDesc, ISampler** ppSampler) override final;
/// Implementation of IRenderDevice::CreateFence() in Vulkan backend.
- virtual void CreateFence(const FenceDesc& Desc, IFence** ppFence) override final;
+ virtual void DILIGENT_CALL_TYPE CreateFence(const FenceDesc& Desc, IFence** ppFence) override final;
/// Implementation of IRenderDevice::CreateQuery() in Vulkan backend.
- virtual void CreateQuery(const QueryDesc& Desc, IQuery** ppQuery) override final;
+ virtual void DILIGENT_CALL_TYPE CreateQuery(const QueryDesc& Desc, IQuery** ppQuery) override final;
/// Implementation of IRenderDeviceVk::GetVkDevice().
- virtual VkDevice GetVkDevice() override final { return m_LogicalVkDevice->GetVkDevice(); }
+ virtual VkDevice DILIGENT_CALL_TYPE GetVkDevice() override final { return m_LogicalVkDevice->GetVkDevice(); }
/// Implementation of IRenderDeviceVk::GetVkPhysicalDevice().
- virtual VkPhysicalDevice GetVkPhysicalDevice() override final { return m_PhysicalDevice->GetVkDeviceHandle(); }
+ virtual VkPhysicalDevice DILIGENT_CALL_TYPE GetVkPhysicalDevice() override final { return m_PhysicalDevice->GetVkDeviceHandle(); }
/// Implementation of IRenderDeviceVk::GetVkInstance().
- virtual VkInstance GetVkInstance() override final { return m_VulkanInstance->GetVkInstance(); }
+ virtual VkInstance DILIGENT_CALL_TYPE GetVkInstance() override final { return m_VulkanInstance->GetVkInstance(); }
/// Implementation of IRenderDeviceVk::CreateTextureFromVulkanImage().
- virtual void CreateTextureFromVulkanImage(VkImage vkImage, const TextureDesc& TexDesc, RESOURCE_STATE InitialState, ITexture** ppTexture) override final;
+ virtual void DILIGENT_CALL_TYPE CreateTextureFromVulkanImage(VkImage vkImage,
+ const TextureDesc& TexDesc,
+ RESOURCE_STATE InitialState,
+ ITexture** ppTexture) override final;
/// Implementation of IRenderDeviceVk::CreateBufferFromVulkanResource().
- virtual void CreateBufferFromVulkanResource(VkBuffer vkBuffer, const BufferDesc& BuffDesc, RESOURCE_STATE InitialState, IBuffer** ppBuffer) override final;
+ virtual void DILIGENT_CALL_TYPE CreateBufferFromVulkanResource(VkBuffer vkBuffer,
+ const BufferDesc& BuffDesc,
+ RESOURCE_STATE InitialState,
+ IBuffer** ppBuffer) override final;
/// Implementation of IRenderDevice::IdleGPU() in Vulkan backend.
- virtual void IdleGPU() override final;
+ virtual void DILIGENT_CALL_TYPE IdleGPU() override final;
// pImmediateCtx parameter is only used to make sure the command buffer is submitted from the immediate context
// The method returns fence value associated with the submitted command buffer
@@ -120,7 +130,7 @@ public:
void ExecuteAndDisposeTransientCmdBuff(Uint32 QueueIndex, VkCommandBuffer vkCmdBuff, VulkanUtilities::CommandPoolWrapper&& CmdPool);
/// Implementation of IRenderDevice::ReleaseStaleResources() in Vulkan backend.
- virtual void ReleaseStaleResources(bool ForceRelease = false) override final;
+ virtual void DILIGENT_CALL_TYPE ReleaseStaleResources(bool ForceRelease = false) override final;
DescriptorSetAllocation AllocateDescriptorSet(Uint64 CommandQueueMask, VkDescriptorSetLayout SetLayout, const char* DebugName = "")
{
diff --git a/Graphics/GraphicsEngineVulkan/include/SamplerVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/SamplerVkImpl.hpp
index 37a8d863..e51b4bea 100644
--- a/Graphics/GraphicsEngineVulkan/include/SamplerVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/SamplerVkImpl.hpp
@@ -50,10 +50,10 @@ public:
SamplerVkImpl(IReferenceCounters* pRefCounters, RenderDeviceVkImpl* pRenderDeviceVk, const SamplerDesc& SamplerDesc);
~SamplerVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override;
/// Implementation of ISamplerVk::GetVkSampler().
- virtual VkSampler GetVkSampler() const override final { return m_VkSampler; }
+ virtual VkSampler DILIGENT_CALL_TYPE GetVkSampler() const override final { return m_VkSampler; }
private:
friend class ShaderVkImpl;
diff --git a/Graphics/GraphicsEngineVulkan/include/ShaderResourceBindingVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/ShaderResourceBindingVkImpl.hpp
index a839222b..d3915425 100644
--- a/Graphics/GraphicsEngineVulkan/include/ShaderResourceBindingVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/ShaderResourceBindingVkImpl.hpp
@@ -52,22 +52,22 @@ public:
ShaderResourceBindingVkImpl(IReferenceCounters* pRefCounters, class PipelineStateVkImpl* pPSO, bool IsPSOInternal);
~ShaderResourceBindingVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of IShaderResourceBinding::BindResources() in Vulkan backend.
- virtual void BindResources(Uint32 ShaderFlags, IResourceMapping* pResMapping, Uint32 Flags) override final;
+ virtual void DILIGENT_CALL_TYPE BindResources(Uint32 ShaderFlags, IResourceMapping* pResMapping, Uint32 Flags) override final;
/// Implementation of IShaderResourceBinding::GetVariableByName() in Vulkan backend.
- virtual IShaderResourceVariable* GetVariableByName(SHADER_TYPE ShaderType, const char* Name) override final;
+ virtual IShaderResourceVariable* DILIGENT_CALL_TYPE GetVariableByName(SHADER_TYPE ShaderType, const char* Name) override final;
/// Implementation of IShaderResourceBinding::GetVariableCount() in Vulkan backend.
- virtual Uint32 GetVariableCount(SHADER_TYPE ShaderType) const override final;
+ virtual Uint32 DILIGENT_CALL_TYPE GetVariableCount(SHADER_TYPE ShaderType) const override final;
/// Implementation of IShaderResourceBinding::GetVariableByIndex() in Vulkan backend.
- virtual IShaderResourceVariable* GetVariableByIndex(SHADER_TYPE ShaderType, Uint32 Index) override final;
+ virtual IShaderResourceVariable* DILIGENT_CALL_TYPE GetVariableByIndex(SHADER_TYPE ShaderType, Uint32 Index) override final;
/// Implementation of IShaderResourceBinding::InitializeStaticResources() in Vulkan backend.
- virtual void InitializeStaticResources(const IPipelineState* pPipelineState) override final;
+ virtual void DILIGENT_CALL_TYPE InitializeStaticResources(const IPipelineState* pPipelineState) override final;
ShaderResourceCacheVk& GetResourceCache() { return m_ShaderResourceCache; }
diff --git a/Graphics/GraphicsEngineVulkan/include/ShaderVariableVk.hpp b/Graphics/GraphicsEngineVulkan/include/ShaderVariableVk.hpp
index 24931767..d54e440c 100644
--- a/Graphics/GraphicsEngineVulkan/include/ShaderVariableVk.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/ShaderVariableVk.hpp
@@ -137,22 +137,22 @@ public:
// clang-format on
- virtual IReferenceCounters* GetReferenceCounters() const override final
+ virtual IReferenceCounters* DILIGENT_CALL_TYPE GetReferenceCounters() const override final
{
return m_ParentManager.m_Owner.GetReferenceCounters();
}
- virtual Atomics::Long AddRef() override final
+ virtual Atomics::Long DILIGENT_CALL_TYPE AddRef() override final
{
return m_ParentManager.m_Owner.AddRef();
}
- virtual Atomics::Long Release() override final
+ virtual Atomics::Long DILIGENT_CALL_TYPE Release() override final
{
return m_ParentManager.m_Owner.Release();
}
- void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final
+ void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final
{
if (ppInterface == nullptr)
return;
@@ -165,34 +165,36 @@ public:
}
}
- virtual SHADER_RESOURCE_VARIABLE_TYPE GetType() const override final
+ virtual SHADER_RESOURCE_VARIABLE_TYPE DILIGENT_CALL_TYPE GetType() const override final
{
return m_Resource.GetVariableType();
}
- virtual void Set(IDeviceObject* pObject) override final
+ virtual void DILIGENT_CALL_TYPE Set(IDeviceObject* pObject) override final
{
m_Resource.BindResource(pObject, 0, m_ParentManager.m_ResourceCache);
}
- virtual void SetArray(IDeviceObject* const* ppObjects, Uint32 FirstElement, Uint32 NumElements) override final
+ virtual void DILIGENT_CALL_TYPE SetArray(IDeviceObject* const* ppObjects,
+ Uint32 FirstElement,
+ Uint32 NumElements) override final
{
VerifyAndCorrectSetArrayArguments(m_Resource.SpirvAttribs.Name, m_Resource.SpirvAttribs.ArraySize, FirstElement, NumElements);
for (Uint32 Elem = 0; Elem < NumElements; ++Elem)
m_Resource.BindResource(ppObjects[Elem], FirstElement + Elem, m_ParentManager.m_ResourceCache);
}
- virtual void GetResourceDesc(ShaderResourceDesc& ResourceDesc) const override final
+ virtual void DILIGENT_CALL_TYPE GetResourceDesc(ShaderResourceDesc& ResourceDesc) const override final
{
ResourceDesc = m_Resource.SpirvAttribs.GetResourceDesc();
}
- virtual Uint32 GetIndex() const override final
+ virtual Uint32 DILIGENT_CALL_TYPE GetIndex() const override final
{
return m_ParentManager.GetVariableIndex(*this);
}
- virtual bool IsBound(Uint32 ArrayIndex) const override final
+ virtual bool DILIGENT_CALL_TYPE IsBound(Uint32 ArrayIndex) const override final
{
return m_Resource.IsBound(ArrayIndex, m_ParentManager.m_ResourceCache);
}
diff --git a/Graphics/GraphicsEngineVulkan/include/ShaderVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/ShaderVkImpl.hpp
index d1801615..f652097c 100644
--- a/Graphics/GraphicsEngineVulkan/include/ShaderVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/ShaderVkImpl.hpp
@@ -54,16 +54,16 @@ public:
IMPLEMENT_QUERY_INTERFACE_IN_PLACE(IID_ShaderVk, TShaderBase);
/// Implementation of IShader::GetResourceCount() in Vulkan backend.
- virtual Uint32 GetResourceCount() const override final
+ virtual Uint32 DILIGENT_CALL_TYPE GetResourceCount() const override final
{
return m_pShaderResources->GetTotalResources();
}
/// Implementation of IShader::GetResource() in Vulkan backend.
- virtual void GetResourceDesc(Uint32 Index, ShaderResourceDesc& ResourceDesc) const override final;
+ virtual void DILIGENT_CALL_TYPE GetResourceDesc(Uint32 Index, ShaderResourceDesc& ResourceDesc) const override final;
/// Implementation of IShaderVk::GetSPIRV().
- virtual const std::vector<uint32_t>& GetSPIRV() const override final
+ virtual const std::vector<uint32_t>& DILIGENT_CALL_TYPE GetSPIRV() const override final
{
return m_SPIRV;
}
diff --git a/Graphics/GraphicsEngineVulkan/include/SwapChainVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/SwapChainVkImpl.hpp
index 89a20137..996817ca 100644
--- a/Graphics/GraphicsEngineVulkan/include/SwapChainVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/SwapChainVkImpl.hpp
@@ -52,32 +52,32 @@ public:
void* pNativeWndHandle);
~SwapChainVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of ISwapChain::Present() in Vulkan backend.
- virtual void Present(Uint32 SyncInterval) override final;
+ virtual void DILIGENT_CALL_TYPE Present(Uint32 SyncInterval) override final;
/// Implementation of ISwapChain::Resize() in Vulkan backend.
- virtual void Resize(Uint32 NewWidth, Uint32 NewHeight) override final;
+ virtual void DILIGENT_CALL_TYPE Resize(Uint32 NewWidth, Uint32 NewHeight) override final;
/// Implementation of ISwapChain::SetFullscreenMode() in Vulkan backend.
- virtual void SetFullscreenMode(const DisplayModeAttribs& DisplayMode) override final;
+ virtual void DILIGENT_CALL_TYPE SetFullscreenMode(const DisplayModeAttribs& DisplayMode) override final;
/// Implementation of ISwapChain::SetWindowedMode() in Vulkan backend.
- virtual void SetWindowedMode() override final;
+ virtual void DILIGENT_CALL_TYPE SetWindowedMode() override final;
/// Implementation of ISwapChainVk::GetVkSwapChain().
- virtual VkSwapchainKHR GetVkSwapChain() override final { return m_VkSwapChain; }
+ virtual VkSwapchainKHR DILIGENT_CALL_TYPE GetVkSwapChain() override final { return m_VkSwapChain; }
/// Implementation of ISwapChain::GetCurrentBackBufferRTV() in Vulkan backend.
- virtual ITextureViewVk* GetCurrentBackBufferRTV() override final
+ virtual ITextureViewVk* DILIGENT_CALL_TYPE GetCurrentBackBufferRTV() override final
{
VERIFY_EXPR(m_BackBufferIndex >= 0 && m_BackBufferIndex < m_SwapChainDesc.BufferCount);
return m_pBackBufferRTV[m_BackBufferIndex];
}
/// Implementation of ISwapChain::GetDepthBufferDSV() in Vulkan backend.
- virtual ITextureViewVk* GetDepthBufferDSV() override final { return m_pDepthBufferDSV; }
+ virtual ITextureViewVk* DILIGENT_CALL_TYPE GetDepthBufferDSV() override final { return m_pDepthBufferDSV; }
private:
void CreateVulkanSwapChain();
diff --git a/Graphics/GraphicsEngineVulkan/include/TextureViewVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/TextureViewVkImpl.hpp
index e4ebf33b..c0e87992 100644
--- a/Graphics/GraphicsEngineVulkan/include/TextureViewVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/TextureViewVkImpl.hpp
@@ -55,10 +55,10 @@ public:
bool bIsDefaultView);
~TextureViewVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of ITextureViewVk::GetVulkanImageView().
- VkImageView GetVulkanImageView() const override final { return m_ImageView; }
+ virtual VkImageView DILIGENT_CALL_TYPE GetVulkanImageView() const override final { return m_ImageView; }
bool HasMipLevelViews() const
{
diff --git a/Graphics/GraphicsEngineVulkan/include/TextureVkImpl.hpp b/Graphics/GraphicsEngineVulkan/include/TextureVkImpl.hpp
index 8ba8a392..c324a6b6 100644
--- a/Graphics/GraphicsEngineVulkan/include/TextureVkImpl.hpp
+++ b/Graphics/GraphicsEngineVulkan/include/TextureVkImpl.hpp
@@ -68,23 +68,23 @@ public:
~TextureVkImpl();
- virtual void QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
+ virtual void DILIGENT_CALL_TYPE QueryInterface(const INTERFACE_ID& IID, IObject** ppInterface) override final;
/// Implementation of ITextureVk::GetVkImage().
- virtual VkImage GetVkImage() const override final { return m_VulkanImage; }
+ virtual VkImage DILIGENT_CALL_TYPE GetVkImage() const override final { return m_VulkanImage; }
/// Implementation of ITexture::GetNativeHandle() in Vulkan backend.
- virtual void* GetNativeHandle() override final
+ virtual void* DILIGENT_CALL_TYPE GetNativeHandle() override final
{
auto vkImage = GetVkImage();
return reinterpret_cast<void*>(vkImage);
}
/// Implementation of ITextureVk::SetLayout().
- void SetLayout(VkImageLayout Layout) override final;
+ virtual void DILIGENT_CALL_TYPE SetLayout(VkImageLayout Layout) override final;
/// Implementation of ITextureVk::GetLayout().
- VkImageLayout GetLayout() const override final;
+ virtual VkImageLayout DILIGENT_CALL_TYPE GetLayout() const override final;
VkBuffer GetVkStagingBuffer() const
{
diff --git a/Graphics/GraphicsEngineVulkan/interface/ShaderVk.h b/Graphics/GraphicsEngineVulkan/interface/ShaderVk.h
index 9436821a..2873f8d2 100644
--- a/Graphics/GraphicsEngineVulkan/interface/ShaderVk.h
+++ b/Graphics/GraphicsEngineVulkan/interface/ShaderVk.h
@@ -54,7 +54,7 @@ class IShaderVk : public IShader
{
public:
/// Returns SPIRV bytecode
- virtual const std::vector<uint32_t>& GetSPIRV() const = 0;
+ virtual const std::vector<uint32_t>& DILIGENT_CALL_TYPE GetSPIRV() const = 0;
};
#endif
diff --git a/Graphics/GraphicsEngineVulkan/src/EngineFactoryVk.cpp b/Graphics/GraphicsEngineVulkan/src/EngineFactoryVk.cpp
index 4b863925..77a6f49b 100644
--- a/Graphics/GraphicsEngineVulkan/src/EngineFactoryVk.cpp
+++ b/Graphics/GraphicsEngineVulkan/src/EngineFactoryVk.cpp
@@ -58,24 +58,24 @@ public:
TBase{IID_EngineFactoryVk}
{}
- void CreateDeviceAndContextsVk(const EngineVkCreateInfo& EngineCI,
- IRenderDevice** ppDevice,
- IDeviceContext** ppContexts) override final;
-
- void AttachToVulkanDevice(std::shared_ptr<VulkanUtilities::VulkanInstance> Instance,
- std::unique_ptr<VulkanUtilities::VulkanPhysicalDevice> PhysicalDevice,
- std::shared_ptr<VulkanUtilities::VulkanLogicalDevice> LogicalDevice,
- size_t CommandQueueCount,
- ICommandQueueVk** ppCommandQueues,
- const EngineVkCreateInfo& EngineCI,
- IRenderDevice** ppDevice,
- IDeviceContext** ppContexts); //override final;
-
- void CreateSwapChainVk(IRenderDevice* pDevice,
- IDeviceContext* pImmediateContext,
- const SwapChainDesc& SwapChainDesc,
- void* pNativeWndHandle,
- ISwapChain** ppSwapChain) override final;
+ virtual void DILIGENT_CALL_TYPE CreateDeviceAndContextsVk(const EngineVkCreateInfo& EngineCI,
+ IRenderDevice** ppDevice,
+ IDeviceContext** ppContexts) override final;
+
+ virtual void DILIGENT_CALL_TYPE AttachToVulkanDevice(std::shared_ptr<VulkanUtilities::VulkanInstance> Instance,
+ std::unique_ptr<VulkanUtilities::VulkanPhysicalDevice> PhysicalDevice,
+ std::shared_ptr<VulkanUtilities::VulkanLogicalDevice> LogicalDevice,
+ size_t CommandQueueCount,
+ ICommandQueueVk** ppCommandQueues,
+ const EngineVkCreateInfo& EngineCI,
+ IRenderDevice** ppDevice,
+ IDeviceContext** ppContexts); //override final;
+
+ virtual void DILIGENT_CALL_TYPE CreateSwapChainVk(IRenderDevice* pDevice,
+ IDeviceContext* pImmediateContext,
+ const SwapChainDesc& SwapChainDesc,
+ void* pNativeWndHandle,
+ ISwapChain** ppSwapChain) override final;
private:
std::function<void(RenderDeviceVkImpl*)> OnRenderDeviceCreated = nullptr;