// Copyright (C) 2021 Jérôme "Lynix" Leclercq (lynix680@gmail.com) // This file is part of the "Nazara Engine - Vulkan renderer" // For conditions of distribution and use, see copyright notice in Config.hpp #pragma once #ifndef NAZARA_VULKANRENDERER_UTILS_HPP #define NAZARA_VULKANRENDERER_UTILS_HPP #include #include #include #include #include #include namespace Nz { inline std::optional FromVulkan(VkFormat format); inline VkAttachmentLoadOp ToVulkan(AttachmentLoadOp loadOp); inline VkAttachmentStoreOp ToVulkan(AttachmentStoreOp storeOp); inline VkBufferUsageFlags ToVulkan(BufferType bufferType); inline VkFormat ToVulkan(ComponentType componentType); inline VkCullModeFlagBits ToVulkan(FaceSide faceSide); inline VkPolygonMode ToVulkan(FaceFilling faceFilling); inline VkFrontFace ToVulkan(FrontFace frontFace); inline VkAccessFlagBits ToVulkan(MemoryAccess memoryAccess); inline VkAccessFlags ToVulkan(MemoryAccessFlags memoryAccessFlags); inline VkPipelineStageFlagBits ToVulkan(PipelineStage pipelineStage); inline VkPipelineStageFlags ToVulkan(PipelineStageFlags pipelineStages); inline VkFormat ToVulkan(PixelFormat pixelFormat); inline VkImageAspectFlags ToVulkan(PixelFormatContent pixelFormatContent); inline VkPrimitiveTopology ToVulkan(PrimitiveMode primitiveMode); inline VkCompareOp ToVulkan(RendererComparison comparison); inline VkFilter ToVulkan(SamplerFilter samplerFilter); inline VkSamplerMipmapMode ToVulkan(SamplerMipmapMode samplerMipmap); inline VkSamplerAddressMode ToVulkan(SamplerWrap samplerWrap); inline VkDescriptorType ToVulkan(ShaderBindingType bindingType); inline VkShaderStageFlagBits ToVulkan(ShaderStageType stageType); inline VkShaderStageFlags ToVulkan(ShaderStageTypeFlags stageType); inline VkStencilOp ToVulkan(StencilOperation stencilOp); inline VkImageLayout ToVulkan(TextureLayout textureLayout); inline VkImageUsageFlagBits ToVulkan(TextureUsage textureLayout); inline VkImageUsageFlags ToVulkan(TextureUsageFlags textureLayout); inline VkVertexInputRate ToVulkan(VertexInputRate inputRate); NAZARA_VULKANRENDERER_API std::string TranslateVulkanError(VkResult code); } #include #endif // NAZARA_VULKANRENDERER_UTILS_HPP