diff options
| author | assiduous <assiduous@diligentgraphics.com> | 2020-01-29 09:42:59 +0000 |
|---|---|---|
| committer | assiduous <assiduous@diligentgraphics.com> | 2020-01-29 09:42:59 +0000 |
| commit | c072867aaf9433ea128438db155fc148d3296b10 (patch) | |
| tree | 301de4d00559466d4ad32492ffc61cb612de8f91 /Graphics/GraphicsEngineVulkan | |
| parent | Fixed a number of minor issues (diff) | |
| download | DiligentCore-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')
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; |
