Startet to terribly implement a list

This commit is contained in:
Dynamitos
2020-03-13 12:44:33 +01:00
parent 80b57f5134
commit a5473409c1
21 changed files with 1034 additions and 104 deletions
@@ -0,0 +1,157 @@
#include "VulkanGraphicsEnums.h"
using namespace Seele;
VkDescriptorType Seele::cast(const SeDescriptorType& descriptorType)
{
switch (descriptorType)
{
case SE_DESCRIPTOR_TYPE_SAMPLER:
return VK_DESCRIPTOR_TYPE_SAMPLER;
case SE_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
return VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
case SE_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
return VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE;
case SE_DESCRIPTOR_TYPE_STORAGE_IMAGE:
return VK_DESCRIPTOR_TYPE_STORAGE_IMAGE;
case SE_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
return VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER;
case SE_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
return VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER;
case SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
return VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
case SE_DESCRIPTOR_TYPE_STORAGE_BUFFER:
return VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
case SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
return VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
case SE_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
return VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC;
case SE_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
return VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT;
case SE_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:
return VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT;
case SE_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
return VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV;
default:
break;
}
}
SeDescriptorType Seele::cast(const VkDescriptorType& descriptorType)
{
switch (descriptorType)
{
case VK_DESCRIPTOR_TYPE_SAMPLER:
return SE_DESCRIPTOR_TYPE_SAMPLER;
case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
return SE_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
return SE_DESCRIPTOR_TYPE_SAMPLED_IMAGE;
case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
return SE_DESCRIPTOR_TYPE_STORAGE_IMAGE;
case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
return SE_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER;
case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
return SE_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER;
case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
return SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
return SE_DESCRIPTOR_TYPE_STORAGE_BUFFER;
case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
return SE_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
return SE_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC;
case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
return SE_DESCRIPTOR_TYPE_INPUT_ATTACHMENT;
case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT:
return SE_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT;
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
return SE_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV;
default:
break;
}
}
VkShaderStageFlagBits Seele::cast(const SeShaderStageFlagBits& stage)
{
switch (stage)
{
case SE_SHADER_STAGE_VERTEX_BIT:
return VK_SHADER_STAGE_VERTEX_BIT;
case SE_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
return VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT;
case SE_SHADER_STAGE_TESSELLATION_EVALUATION_BIT:
return VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT;
case SE_SHADER_STAGE_GEOMETRY_BIT:
return VK_SHADER_STAGE_GEOMETRY_BIT;
case SE_SHADER_STAGE_FRAGMENT_BIT:
return VK_SHADER_STAGE_FRAGMENT_BIT;
case SE_SHADER_STAGE_COMPUTE_BIT:
return VK_SHADER_STAGE_COMPUTE_BIT;
case SE_SHADER_STAGE_ALL_GRAPHICS:
return VK_SHADER_STAGE_ALL_GRAPHICS;
case SE_SHADER_STAGE_ALL:
return VK_SHADER_STAGE_ALL;
case SE_SHADER_STAGE_RAYGEN_BIT_NV:
return VK_SHADER_STAGE_RAYGEN_BIT_NV;
case SE_SHADER_STAGE_ANY_HIT_BIT_NV:
return VK_SHADER_STAGE_ANY_HIT_BIT_NV;
case SE_SHADER_STAGE_CLOSEST_HIT_BIT_NV:
return VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV;
case SE_SHADER_STAGE_MISS_BIT_NV:
return VK_SHADER_STAGE_MISS_BIT_NV;
case SE_SHADER_STAGE_INTERSECTION_BIT_NV:
return VK_SHADER_STAGE_INTERSECTION_BIT_NV;
case SE_SHADER_STAGE_CALLABLE_BIT_NV:
return VK_SHADER_STAGE_CALLABLE_BIT_NV;
case SE_SHADER_STAGE_TASK_BIT_NV:
return VK_SHADER_STAGE_TASK_BIT_NV;
case SE_SHADER_STAGE_MESH_BIT_NV:
return VK_SHADER_STAGE_MESH_BIT_NV;
default:
break;
}
}
SeShaderStageFlagBits Seele::cast(const VkShaderStageFlagBits& stage)
{
switch (stage)
{
case VK_SHADER_STAGE_VERTEX_BIT:
return SE_SHADER_STAGE_VERTEX_BIT;
case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
return SE_SHADER_STAGE_TESSELLATION_CONTROL_BIT;
case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT:
return SE_SHADER_STAGE_TESSELLATION_EVALUATION_BIT;
case VK_SHADER_STAGE_GEOMETRY_BIT:
return SE_SHADER_STAGE_GEOMETRY_BIT;
case VK_SHADER_STAGE_FRAGMENT_BIT:
return SE_SHADER_STAGE_FRAGMENT_BIT;
case VK_SHADER_STAGE_COMPUTE_BIT:
return SE_SHADER_STAGE_COMPUTE_BIT;
case VK_SHADER_STAGE_ALL_GRAPHICS:
return SE_SHADER_STAGE_ALL_GRAPHICS;
case VK_SHADER_STAGE_ALL:
return SE_SHADER_STAGE_ALL;
case VK_SHADER_STAGE_RAYGEN_BIT_NV:
return SE_SHADER_STAGE_RAYGEN_BIT_NV;
case VK_SHADER_STAGE_ANY_HIT_BIT_NV:
return SE_SHADER_STAGE_ANY_HIT_BIT_NV;
case VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV:
return SE_SHADER_STAGE_CLOSEST_HIT_BIT_NV;
case VK_SHADER_STAGE_MISS_BIT_NV:
return SE_SHADER_STAGE_MISS_BIT_NV;
case VK_SHADER_STAGE_INTERSECTION_BIT_NV:
return SE_SHADER_STAGE_INTERSECTION_BIT_NV;
case VK_SHADER_STAGE_CALLABLE_BIT_NV:
return SE_SHADER_STAGE_CALLABLE_BIT_NV;
case VK_SHADER_STAGE_TASK_BIT_NV:
return SE_SHADER_STAGE_TASK_BIT_NV;
case VK_SHADER_STAGE_MESH_BIT_NV:
return SE_SHADER_STAGE_MESH_BIT_NV;
default:
break;
}
}