"VK_LAYER_LUNARG_parameter_validation", VK_LAYER_API_VERSION, 1, "LunarG Validation Layer",
};
-static bool ValidateEnumerator(VkFormatFeatureFlagBits const &enumerator) {
- VkFormatFeatureFlagBits allFlags = (VkFormatFeatureFlagBits)(
- VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT | VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT |
- VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT | VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT |
- VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT | VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT | VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT |
- VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT | VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT |
- VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT | VK_FORMAT_FEATURE_BLIT_SRC_BIT | VK_FORMAT_FEATURE_BLIT_DST_BIT |
- VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkFormatFeatureFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_BLIT_SRC_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_BLIT_SRC_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_BLIT_DST_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_BLIT_DST_BIT");
- }
- if (enumerator & VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT) {
- strings.push_back("VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkImageUsageFlagBits const &enumerator) {
- VkImageUsageFlagBits allFlags = (VkImageUsageFlagBits)(
- VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT | VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT | VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT |
- VK_IMAGE_USAGE_STORAGE_BIT | VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT |
- VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkImageUsageFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT) {
- strings.push_back("VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT) {
- strings.push_back("VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) {
- strings.push_back("VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_STORAGE_BIT) {
- strings.push_back("VK_IMAGE_USAGE_STORAGE_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_SAMPLED_BIT) {
- strings.push_back("VK_IMAGE_USAGE_SAMPLED_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_TRANSFER_DST_BIT) {
- strings.push_back("VK_IMAGE_USAGE_TRANSFER_DST_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT) {
- strings.push_back("VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT");
- }
- if (enumerator & VK_IMAGE_USAGE_TRANSFER_SRC_BIT) {
- strings.push_back("VK_IMAGE_USAGE_TRANSFER_SRC_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkQueueFlagBits const &enumerator) {
- VkQueueFlagBits allFlags =
- (VkQueueFlagBits)(VK_QUEUE_TRANSFER_BIT | VK_QUEUE_COMPUTE_BIT | VK_QUEUE_SPARSE_BINDING_BIT | VK_QUEUE_GRAPHICS_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkQueueFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_QUEUE_TRANSFER_BIT) {
- strings.push_back("VK_QUEUE_TRANSFER_BIT");
- }
- if (enumerator & VK_QUEUE_COMPUTE_BIT) {
- strings.push_back("VK_QUEUE_COMPUTE_BIT");
- }
- if (enumerator & VK_QUEUE_SPARSE_BINDING_BIT) {
- strings.push_back("VK_QUEUE_SPARSE_BINDING_BIT");
- }
- if (enumerator & VK_QUEUE_GRAPHICS_BIT) {
- strings.push_back("VK_QUEUE_GRAPHICS_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkMemoryPropertyFlagBits const &enumerator) {
- VkMemoryPropertyFlagBits allFlags = (VkMemoryPropertyFlagBits)(
- VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT | VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
- VK_MEMORY_PROPERTY_HOST_CACHED_BIT | VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkMemoryPropertyFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT) {
- strings.push_back("VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT");
- }
- if (enumerator & VK_MEMORY_PROPERTY_HOST_COHERENT_BIT) {
- strings.push_back("VK_MEMORY_PROPERTY_HOST_COHERENT_BIT");
- }
- if (enumerator & VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT) {
- strings.push_back("VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT");
- }
- if (enumerator & VK_MEMORY_PROPERTY_HOST_CACHED_BIT) {
- strings.push_back("VK_MEMORY_PROPERTY_HOST_CACHED_BIT");
- }
- if (enumerator & VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT) {
- strings.push_back("VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkMemoryHeapFlagBits const &enumerator) {
- VkMemoryHeapFlagBits allFlags = (VkMemoryHeapFlagBits)(VK_MEMORY_HEAP_DEVICE_LOCAL_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkMemoryHeapFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_MEMORY_HEAP_DEVICE_LOCAL_BIT) {
- strings.push_back("VK_MEMORY_HEAP_DEVICE_LOCAL_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkSparseImageFormatFlagBits const &enumerator) {
- VkSparseImageFormatFlagBits allFlags =
- (VkSparseImageFormatFlagBits)(VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT |
- VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT | VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkSparseImageFormatFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT) {
- strings.push_back("VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT");
- }
- if (enumerator & VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT) {
- strings.push_back("VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT");
- }
- if (enumerator & VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT) {
- strings.push_back("VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkFenceCreateFlagBits const &enumerator) {
- VkFenceCreateFlagBits allFlags = (VkFenceCreateFlagBits)(VK_FENCE_CREATE_SIGNALED_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkFenceCreateFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_FENCE_CREATE_SIGNALED_BIT) {
- strings.push_back("VK_FENCE_CREATE_SIGNALED_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkQueryPipelineStatisticFlagBits const &enumerator) {
- VkQueryPipelineStatisticFlagBits allFlags = (VkQueryPipelineStatisticFlagBits)(
- VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT | VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT |
- VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT | VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT |
- VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT | VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT |
- VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT | VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT |
- VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT |
- VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT |
- VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkQueryPipelineStatisticFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT");
- }
- if (enumerator & VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT) {
- strings.push_back("VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkQueryResultFlagBits const &enumerator) {
- VkQueryResultFlagBits allFlags = (VkQueryResultFlagBits)(VK_QUERY_RESULT_PARTIAL_BIT | VK_QUERY_RESULT_WITH_AVAILABILITY_BIT |
- VK_QUERY_RESULT_WAIT_BIT | VK_QUERY_RESULT_64_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkQueryResultFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_QUERY_RESULT_PARTIAL_BIT) {
- strings.push_back("VK_QUERY_RESULT_PARTIAL_BIT");
- }
- if (enumerator & VK_QUERY_RESULT_WITH_AVAILABILITY_BIT) {
- strings.push_back("VK_QUERY_RESULT_WITH_AVAILABILITY_BIT");
- }
- if (enumerator & VK_QUERY_RESULT_WAIT_BIT) {
- strings.push_back("VK_QUERY_RESULT_WAIT_BIT");
- }
- if (enumerator & VK_QUERY_RESULT_64_BIT) {
- strings.push_back("VK_QUERY_RESULT_64_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkBufferUsageFlagBits const &enumerator) {
- VkBufferUsageFlagBits allFlags = (VkBufferUsageFlagBits)(
- VK_BUFFER_USAGE_VERTEX_BUFFER_BIT | VK_BUFFER_USAGE_INDEX_BUFFER_BIT | VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT |
- VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT | VK_BUFFER_USAGE_STORAGE_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT |
- VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_SRC_BIT | VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkBufferUsageFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_BUFFER_USAGE_VERTEX_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_VERTEX_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_INDEX_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_INDEX_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_STORAGE_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_STORAGE_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_TRANSFER_DST_BIT) {
- strings.push_back("VK_BUFFER_USAGE_TRANSFER_DST_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_TRANSFER_SRC_BIT) {
- strings.push_back("VK_BUFFER_USAGE_TRANSFER_SRC_BIT");
- }
- if (enumerator & VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT) {
- strings.push_back("VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkBufferCreateFlagBits const &enumerator) {
- VkBufferCreateFlagBits allFlags = (VkBufferCreateFlagBits)(
- VK_BUFFER_CREATE_SPARSE_ALIASED_BIT | VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT | VK_BUFFER_CREATE_SPARSE_BINDING_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkBufferCreateFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_BUFFER_CREATE_SPARSE_ALIASED_BIT) {
- strings.push_back("VK_BUFFER_CREATE_SPARSE_ALIASED_BIT");
- }
- if (enumerator & VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT) {
- strings.push_back("VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT");
- }
- if (enumerator & VK_BUFFER_CREATE_SPARSE_BINDING_BIT) {
- strings.push_back("VK_BUFFER_CREATE_SPARSE_BINDING_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkImageCreateFlagBits const &enumerator) {
- VkImageCreateFlagBits allFlags = (VkImageCreateFlagBits)(
- VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT | VK_IMAGE_CREATE_SPARSE_ALIASED_BIT | VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT |
- VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT | VK_IMAGE_CREATE_SPARSE_BINDING_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkImageCreateFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) {
- strings.push_back("VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT");
- }
- if (enumerator & VK_IMAGE_CREATE_SPARSE_ALIASED_BIT) {
- strings.push_back("VK_IMAGE_CREATE_SPARSE_ALIASED_BIT");
- }
- if (enumerator & VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT) {
- strings.push_back("VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT");
- }
- if (enumerator & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT) {
- strings.push_back("VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT");
- }
- if (enumerator & VK_IMAGE_CREATE_SPARSE_BINDING_BIT) {
- strings.push_back("VK_IMAGE_CREATE_SPARSE_BINDING_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkColorComponentFlagBits const &enumerator) {
- VkColorComponentFlagBits allFlags = (VkColorComponentFlagBits)(VK_COLOR_COMPONENT_A_BIT | VK_COLOR_COMPONENT_B_BIT |
- VK_COLOR_COMPONENT_G_BIT | VK_COLOR_COMPONENT_R_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkColorComponentFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_COLOR_COMPONENT_A_BIT) {
- strings.push_back("VK_COLOR_COMPONENT_A_BIT");
- }
- if (enumerator & VK_COLOR_COMPONENT_B_BIT) {
- strings.push_back("VK_COLOR_COMPONENT_B_BIT");
- }
- if (enumerator & VK_COLOR_COMPONENT_G_BIT) {
- strings.push_back("VK_COLOR_COMPONENT_G_BIT");
- }
- if (enumerator & VK_COLOR_COMPONENT_R_BIT) {
- strings.push_back("VK_COLOR_COMPONENT_R_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkPipelineCreateFlagBits const &enumerator) {
- VkPipelineCreateFlagBits allFlags = (VkPipelineCreateFlagBits)(
- VK_PIPELINE_CREATE_DERIVATIVE_BIT | VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT | VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkPipelineCreateFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_PIPELINE_CREATE_DERIVATIVE_BIT) {
- strings.push_back("VK_PIPELINE_CREATE_DERIVATIVE_BIT");
- }
- if (enumerator & VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT) {
- strings.push_back("VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT");
- }
- if (enumerator & VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT) {
- strings.push_back("VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkShaderStageFlagBits const &enumerator) {
- VkShaderStageFlagBits allFlags = (VkShaderStageFlagBits)(
- VK_SHADER_STAGE_ALL | VK_SHADER_STAGE_FRAGMENT_BIT | VK_SHADER_STAGE_GEOMETRY_BIT | VK_SHADER_STAGE_COMPUTE_BIT |
- VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT | VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT | VK_SHADER_STAGE_VERTEX_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkShaderStageFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_SHADER_STAGE_ALL) {
- strings.push_back("VK_SHADER_STAGE_ALL");
- }
- if (enumerator & VK_SHADER_STAGE_FRAGMENT_BIT) {
- strings.push_back("VK_SHADER_STAGE_FRAGMENT_BIT");
- }
- if (enumerator & VK_SHADER_STAGE_GEOMETRY_BIT) {
- strings.push_back("VK_SHADER_STAGE_GEOMETRY_BIT");
- }
- if (enumerator & VK_SHADER_STAGE_COMPUTE_BIT) {
- strings.push_back("VK_SHADER_STAGE_COMPUTE_BIT");
- }
- if (enumerator & VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT) {
- strings.push_back("VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT");
- }
- if (enumerator & VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT) {
- strings.push_back("VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT");
- }
- if (enumerator & VK_SHADER_STAGE_VERTEX_BIT) {
- strings.push_back("VK_SHADER_STAGE_VERTEX_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkPipelineStageFlagBits const &enumerator) {
- VkPipelineStageFlagBits allFlags = (VkPipelineStageFlagBits)(
- VK_PIPELINE_STAGE_ALL_COMMANDS_BIT | VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT | VK_PIPELINE_STAGE_HOST_BIT |
- VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT | VK_PIPELINE_STAGE_TRANSFER_BIT | VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT |
- VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT | VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT |
- VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT | VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT | VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT |
- VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT | VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT |
- VK_PIPELINE_STAGE_VERTEX_SHADER_BIT | VK_PIPELINE_STAGE_VERTEX_INPUT_BIT | VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT |
- VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkPipelineStageFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_PIPELINE_STAGE_ALL_COMMANDS_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_ALL_COMMANDS_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_HOST_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_HOST_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_TRANSFER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_TRANSFER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_VERTEX_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_VERTEX_SHADER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_VERTEX_INPUT_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_VERTEX_INPUT_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT");
- }
- if (enumerator & VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT) {
- strings.push_back("VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkAccessFlagBits const &enumerator) {
- VkAccessFlagBits allFlags = (VkAccessFlagBits)(
- VK_ACCESS_INDIRECT_COMMAND_READ_BIT | VK_ACCESS_INDEX_READ_BIT | VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT |
- VK_ACCESS_UNIFORM_READ_BIT | VK_ACCESS_INPUT_ATTACHMENT_READ_BIT | VK_ACCESS_SHADER_READ_BIT | VK_ACCESS_SHADER_WRITE_BIT |
- VK_ACCESS_COLOR_ATTACHMENT_READ_BIT | VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT | VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT |
- VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT | VK_ACCESS_TRANSFER_READ_BIT | VK_ACCESS_TRANSFER_WRITE_BIT |
- VK_ACCESS_HOST_READ_BIT | VK_ACCESS_HOST_WRITE_BIT | VK_ACCESS_MEMORY_READ_BIT | VK_ACCESS_MEMORY_WRITE_BIT);
-
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkAccessFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_ACCESS_INDIRECT_COMMAND_READ_BIT) {
- strings.push_back("VK_ACCESS_INDIRECT_COMMAND_READ_BIT");
- }
- if (enumerator & VK_ACCESS_INDEX_READ_BIT) {
- strings.push_back("VK_ACCESS_INDEX_READ_BIT");
- }
- if (enumerator & VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT) {
- strings.push_back("VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT");
- }
- if (enumerator & VK_ACCESS_UNIFORM_READ_BIT) {
- strings.push_back("VK_ACCESS_UNIFORM_READ_BIT");
- }
- if (enumerator & VK_ACCESS_INPUT_ATTACHMENT_READ_BIT) {
- strings.push_back("VK_ACCESS_INPUT_ATTACHMENT_READ_BIT");
- }
- if (enumerator & VK_ACCESS_SHADER_READ_BIT) {
- strings.push_back("VK_ACCESS_SHADER_READ_BIT");
- }
- if (enumerator & VK_ACCESS_SHADER_WRITE_BIT) {
- strings.push_back("VK_ACCESS_SHADER_WRITE_BIT");
- }
- if (enumerator & VK_ACCESS_COLOR_ATTACHMENT_READ_BIT) {
- strings.push_back("VK_ACCESS_COLOR_ATTACHMENT_READ_BIT");
- }
- if (enumerator & VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT) {
- strings.push_back("VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT");
- }
- if (enumerator & VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT) {
- strings.push_back("VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT");
- }
- if (enumerator & VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT) {
- strings.push_back("VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT");
- }
- if (enumerator & VK_ACCESS_TRANSFER_READ_BIT) {
- strings.push_back("VK_ACCESS_TRANSFER_READ_BIT");
- }
- if (enumerator & VK_ACCESS_TRANSFER_WRITE_BIT) {
- strings.push_back("VK_ACCESS_TRANSFER_WRITE_BIT");
- }
- if (enumerator & VK_ACCESS_HOST_READ_BIT) {
- strings.push_back("VK_ACCESS_HOST_READ_BIT");
- }
- if (enumerator & VK_ACCESS_HOST_WRITE_BIT) {
- strings.push_back("VK_ACCESS_HOST_WRITE_BIT");
- }
- if (enumerator & VK_ACCESS_MEMORY_READ_BIT) {
- strings.push_back("VK_ACCESS_MEMORY_READ_BIT");
- }
- if (enumerator & VK_ACCESS_MEMORY_WRITE_BIT) {
- strings.push_back("VK_ACCESS_MEMORY_WRITE_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkCommandPoolCreateFlagBits const &enumerator) {
- VkCommandPoolCreateFlagBits allFlags =
- (VkCommandPoolCreateFlagBits)(VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT | VK_COMMAND_POOL_CREATE_TRANSIENT_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkCommandPoolCreateFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT) {
- strings.push_back("VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT");
- }
- if (enumerator & VK_COMMAND_POOL_CREATE_TRANSIENT_BIT) {
- strings.push_back("VK_COMMAND_POOL_CREATE_TRANSIENT_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkCommandPoolResetFlagBits const &enumerator) {
- VkCommandPoolResetFlagBits allFlags = (VkCommandPoolResetFlagBits)(VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkCommandPoolResetFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT) {
- strings.push_back("VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkCommandBufferUsageFlags const &enumerator) {
- VkCommandBufferUsageFlags allFlags =
- (VkCommandBufferUsageFlags)(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT | VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT |
- VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkCommandBufferUsageFlags const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT) {
- strings.push_back("VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT");
- }
- if (enumerator & VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT) {
- strings.push_back("VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT");
- }
- if (enumerator & VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT) {
- strings.push_back("VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkCommandBufferResetFlagBits const &enumerator) {
- VkCommandBufferResetFlagBits allFlags = (VkCommandBufferResetFlagBits)(VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkCommandBufferResetFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT) {
- strings.push_back("VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkImageAspectFlagBits const &enumerator) {
- VkImageAspectFlagBits allFlags = (VkImageAspectFlagBits)(VK_IMAGE_ASPECT_METADATA_BIT | VK_IMAGE_ASPECT_STENCIL_BIT |
- VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_COLOR_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkImageAspectFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_IMAGE_ASPECT_METADATA_BIT) {
- strings.push_back("VK_IMAGE_ASPECT_METADATA_BIT");
- }
- if (enumerator & VK_IMAGE_ASPECT_STENCIL_BIT) {
- strings.push_back("VK_IMAGE_ASPECT_STENCIL_BIT");
- }
- if (enumerator & VK_IMAGE_ASPECT_DEPTH_BIT) {
- strings.push_back("VK_IMAGE_ASPECT_DEPTH_BIT");
- }
- if (enumerator & VK_IMAGE_ASPECT_COLOR_BIT) {
- strings.push_back("VK_IMAGE_ASPECT_COLOR_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
-static bool ValidateEnumerator(VkQueryControlFlagBits const &enumerator) {
- VkQueryControlFlagBits allFlags = (VkQueryControlFlagBits)(VK_QUERY_CONTROL_PRECISE_BIT);
- if (enumerator & (~allFlags)) {
- return false;
- }
-
- return true;
-}
-
-static std::string EnumeratorString(VkQueryControlFlagBits const &enumerator) {
- if (!ValidateEnumerator(enumerator)) {
- return "unrecognized enumerator";
- }
-
- std::vector<std::string> strings;
- if (enumerator & VK_QUERY_CONTROL_PRECISE_BIT) {
- strings.push_back("VK_QUERY_CONTROL_PRECISE_BIT");
- }
-
- std::string enumeratorString;
- for (auto const &string : strings) {
- enumeratorString += string;
-
- if (string != strings.back()) {
- enumeratorString += '|';
- }
- }
-
- return enumeratorString;
-}
-
static const int MaxParamCheckerStringLength = 256;
static bool validate_string(debug_report_data *report_data, const char *apiName, const ParameterName &stringName,
}
}
-bool PostCmdWriteTimestamp(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool,
- uint32_t slot) {
- ValidateEnumerator(pipelineStage);
-
- return true;
-}
-
VKAPI_ATTR void VKAPI_CALL CmdWriteTimestamp(VkCommandBuffer commandBuffer, VkPipelineStageFlagBits pipelineStage,
VkQueryPool queryPool, uint32_t query) {
bool skip = false;
if (!skip) {
my_data->dispatch_table.CmdWriteTimestamp(commandBuffer, pipelineStage, queryPool, query);
-
- PostCmdWriteTimestamp(commandBuffer, pipelineStage, queryPool, query);
}
}