1/* WARNING: This is auto-generated file. Do not modify, since changes will 2 * be lost! Modify the generating script instead. 3 */ 4template<> const char* getTypeName<VkInstance> (void) { return "VkInstance"; } 5template<> const char* getTypeName<VkPhysicalDevice> (void) { return "VkPhysicalDevice"; } 6template<> const char* getTypeName<VkDevice> (void) { return "VkDevice"; } 7template<> const char* getTypeName<VkQueue> (void) { return "VkQueue"; } 8template<> const char* getTypeName<VkSemaphore> (void) { return "VkSemaphore"; } 9template<> const char* getTypeName<VkCommandBuffer> (void) { return "VkCommandBuffer"; } 10template<> const char* getTypeName<VkFence> (void) { return "VkFence"; } 11template<> const char* getTypeName<VkDeviceMemory> (void) { return "VkDeviceMemory"; } 12template<> const char* getTypeName<VkBuffer> (void) { return "VkBuffer"; } 13template<> const char* getTypeName<VkImage> (void) { return "VkImage"; } 14template<> const char* getTypeName<VkEvent> (void) { return "VkEvent"; } 15template<> const char* getTypeName<VkQueryPool> (void) { return "VkQueryPool"; } 16template<> const char* getTypeName<VkBufferView> (void) { return "VkBufferView"; } 17template<> const char* getTypeName<VkImageView> (void) { return "VkImageView"; } 18template<> const char* getTypeName<VkShaderModule> (void) { return "VkShaderModule"; } 19template<> const char* getTypeName<VkPipelineCache> (void) { return "VkPipelineCache"; } 20template<> const char* getTypeName<VkPipelineLayout> (void) { return "VkPipelineLayout"; } 21template<> const char* getTypeName<VkRenderPass> (void) { return "VkRenderPass"; } 22template<> const char* getTypeName<VkPipeline> (void) { return "VkPipeline"; } 23template<> const char* getTypeName<VkDescriptorSetLayout> (void) { return "VkDescriptorSetLayout"; } 24template<> const char* getTypeName<VkSampler> (void) { return "VkSampler"; } 25template<> const char* getTypeName<VkDescriptorPool> (void) { return "VkDescriptorPool"; } 26template<> const char* getTypeName<VkDescriptorSet> (void) { return "VkDescriptorSet"; } 27template<> const char* getTypeName<VkFramebuffer> (void) { return "VkFramebuffer"; } 28template<> const char* getTypeName<VkCommandPool> (void) { return "VkCommandPool"; } 29template<> const char* getTypeName<VkSamplerYcbcrConversion> (void) { return "VkSamplerYcbcrConversion"; } 30template<> const char* getTypeName<VkDescriptorUpdateTemplate> (void) { return "VkDescriptorUpdateTemplate"; } 31template<> const char* getTypeName<VkSurfaceKHR> (void) { return "VkSurfaceKHR"; } 32template<> const char* getTypeName<VkSwapchainKHR> (void) { return "VkSwapchainKHR"; } 33template<> const char* getTypeName<VkDisplayKHR> (void) { return "VkDisplayKHR"; } 34template<> const char* getTypeName<VkDisplayModeKHR> (void) { return "VkDisplayModeKHR"; } 35template<> const char* getTypeName<VkDebugReportCallbackEXT> (void) { return "VkDebugReportCallbackEXT"; } 36template<> const char* getTypeName<VkObjectTableNVX> (void) { return "VkObjectTableNVX"; } 37template<> const char* getTypeName<VkIndirectCommandsLayoutNVX> (void) { return "VkIndirectCommandsLayoutNVX"; } 38template<> const char* getTypeName<VkValidationCacheEXT> (void) { return "VkValidationCacheEXT"; } 39 40namespace pt 41{ 42std::ostream& operator<< (std::ostream& s, XlibDisplayPtr v) { return s << tcu::toHex(v.internal); } 43std::ostream& operator<< (std::ostream& s, XlibWindow v) { return s << tcu::toHex(v.internal); } 44std::ostream& operator<< (std::ostream& s, XlibVisualID v) { return s << tcu::toHex(v.internal); } 45std::ostream& operator<< (std::ostream& s, XcbConnectionPtr v) { return s << tcu::toHex(v.internal); } 46std::ostream& operator<< (std::ostream& s, XcbWindow v) { return s << tcu::toHex(v.internal); } 47std::ostream& operator<< (std::ostream& s, XcbVisualid v) { return s << tcu::toHex(v.internal); } 48std::ostream& operator<< (std::ostream& s, WaylandDisplayPtr v) { return s << tcu::toHex(v.internal); } 49std::ostream& operator<< (std::ostream& s, WaylandSurfacePtr v) { return s << tcu::toHex(v.internal); } 50std::ostream& operator<< (std::ostream& s, MirConnectionPtr v) { return s << tcu::toHex(v.internal); } 51std::ostream& operator<< (std::ostream& s, MirSurfacePtr v) { return s << tcu::toHex(v.internal); } 52std::ostream& operator<< (std::ostream& s, AndroidNativeWindowPtr v) { return s << tcu::toHex(v.internal); } 53std::ostream& operator<< (std::ostream& s, Win32InstanceHandle v) { return s << tcu::toHex(v.internal); } 54std::ostream& operator<< (std::ostream& s, Win32WindowHandle v) { return s << tcu::toHex(v.internal); } 55std::ostream& operator<< (std::ostream& s, Win32Handle v) { return s << tcu::toHex(v.internal); } 56std::ostream& operator<< (std::ostream& s, Win32SecurityAttributesPtr v) { return s << tcu::toHex(v.internal); } 57std::ostream& operator<< (std::ostream& s, AndroidHardwareBufferPtr v) { return s << tcu::toHex(v.internal); } 58std::ostream& operator<< (std::ostream& s, RROutput v) { return s << tcu::toHex(v.internal); } 59} 60 61const char* getPipelineCacheHeaderVersionName (VkPipelineCacheHeaderVersion value) 62{ 63 switch (value) 64 { 65 case VK_PIPELINE_CACHE_HEADER_VERSION_ONE: return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"; 66 default: return DE_NULL; 67 } 68} 69 70const char* getResultName (VkResult value) 71{ 72 switch (value) 73 { 74 case VK_SUCCESS: return "VK_SUCCESS"; 75 case VK_NOT_READY: return "VK_NOT_READY"; 76 case VK_TIMEOUT: return "VK_TIMEOUT"; 77 case VK_EVENT_SET: return "VK_EVENT_SET"; 78 case VK_EVENT_RESET: return "VK_EVENT_RESET"; 79 case VK_INCOMPLETE: return "VK_INCOMPLETE"; 80 case VK_ERROR_OUT_OF_HOST_MEMORY: return "VK_ERROR_OUT_OF_HOST_MEMORY"; 81 case VK_ERROR_OUT_OF_DEVICE_MEMORY: return "VK_ERROR_OUT_OF_DEVICE_MEMORY"; 82 case VK_ERROR_INITIALIZATION_FAILED: return "VK_ERROR_INITIALIZATION_FAILED"; 83 case VK_ERROR_DEVICE_LOST: return "VK_ERROR_DEVICE_LOST"; 84 case VK_ERROR_MEMORY_MAP_FAILED: return "VK_ERROR_MEMORY_MAP_FAILED"; 85 case VK_ERROR_LAYER_NOT_PRESENT: return "VK_ERROR_LAYER_NOT_PRESENT"; 86 case VK_ERROR_EXTENSION_NOT_PRESENT: return "VK_ERROR_EXTENSION_NOT_PRESENT"; 87 case VK_ERROR_FEATURE_NOT_PRESENT: return "VK_ERROR_FEATURE_NOT_PRESENT"; 88 case VK_ERROR_INCOMPATIBLE_DRIVER: return "VK_ERROR_INCOMPATIBLE_DRIVER"; 89 case VK_ERROR_TOO_MANY_OBJECTS: return "VK_ERROR_TOO_MANY_OBJECTS"; 90 case VK_ERROR_FORMAT_NOT_SUPPORTED: return "VK_ERROR_FORMAT_NOT_SUPPORTED"; 91 case VK_ERROR_FRAGMENTED_POOL: return "VK_ERROR_FRAGMENTED_POOL"; 92 case VK_ERROR_OUT_OF_POOL_MEMORY: return "VK_ERROR_OUT_OF_POOL_MEMORY"; 93 case VK_ERROR_INVALID_EXTERNAL_HANDLE: return "VK_ERROR_INVALID_EXTERNAL_HANDLE"; 94 case VK_ERROR_SURFACE_LOST_KHR: return "VK_ERROR_SURFACE_LOST_KHR"; 95 case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR: return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"; 96 case VK_SUBOPTIMAL_KHR: return "VK_SUBOPTIMAL_KHR"; 97 case VK_ERROR_OUT_OF_DATE_KHR: return "VK_ERROR_OUT_OF_DATE_KHR"; 98 case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR: return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"; 99 case VK_ERROR_VALIDATION_FAILED_EXT: return "VK_ERROR_VALIDATION_FAILED_EXT"; 100 case VK_ERROR_INVALID_SHADER_NV: return "VK_ERROR_INVALID_SHADER_NV"; 101 default: return DE_NULL; 102 } 103} 104 105const char* getStructureTypeName (VkStructureType value) 106{ 107 switch (value) 108 { 109 case VK_STRUCTURE_TYPE_APPLICATION_INFO: return "VK_STRUCTURE_TYPE_APPLICATION_INFO"; 110 case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"; 111 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"; 112 case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"; 113 case VK_STRUCTURE_TYPE_SUBMIT_INFO: return "VK_STRUCTURE_TYPE_SUBMIT_INFO"; 114 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"; 115 case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE: return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"; 116 case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO: return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO"; 117 case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"; 118 case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"; 119 case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO: return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"; 120 case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"; 121 case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"; 122 case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"; 123 case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"; 124 case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"; 125 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO"; 126 case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"; 127 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"; 128 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"; 129 case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"; 130 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"; 131 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"; 132 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"; 133 case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"; 134 case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"; 135 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"; 136 case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"; 137 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"; 138 case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"; 139 case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"; 140 case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO: return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"; 141 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"; 142 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"; 143 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"; 144 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"; 145 case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"; 146 case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"; 147 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"; 148 case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"; 149 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"; 150 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"; 151 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"; 152 case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"; 153 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"; 154 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"; 155 case VK_STRUCTURE_TYPE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_MEMORY_BARRIER"; 156 case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO"; 157 case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO"; 158 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"; 159 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO: return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO"; 160 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO: return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO"; 161 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES"; 162 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS"; 163 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO"; 164 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"; 165 case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"; 166 case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"; 167 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"; 168 case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO"; 169 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO"; 170 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO"; 171 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES"; 172 case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"; 173 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2"; 174 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2"; 175 case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2: return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2"; 176 case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2: return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2"; 177 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2"; 178 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"; 179 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2"; 180 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2: return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2"; 181 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2: return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2"; 182 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2"; 183 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2: return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2"; 184 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2"; 185 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2"; 186 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2"; 187 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES"; 188 case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO"; 189 case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO"; 190 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO"; 191 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO"; 192 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"; 193 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES"; 194 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES"; 195 case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: return "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"; 196 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"; 197 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"; 198 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2: return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2"; 199 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO"; 200 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"; 201 case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: return "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"; 202 case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: return "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"; 203 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES"; 204 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES"; 205 case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO"; 206 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"; 207 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES"; 208 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO"; 209 case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES: return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES"; 210 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES"; 211 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO"; 212 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"; 213 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO"; 214 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO"; 215 case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES: return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES"; 216 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO"; 217 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO"; 218 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO"; 219 case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES: return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES"; 220 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES"; 221 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT"; 222 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES"; 223 case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"; 224 case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"; 225 case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"; 226 case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"; 227 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR: return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"; 228 case VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR: return "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"; 229 case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"; 230 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"; 231 case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"; 232 case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"; 233 case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"; 234 case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"; 235 case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"; 236 case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"; 237 case VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR"; 238 case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"; 239 case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"; 240 case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"; 241 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD: return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"; 242 case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"; 243 case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"; 244 case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT"; 245 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"; 246 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"; 247 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV: return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"; 248 case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD: return "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD"; 249 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV"; 250 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV"; 251 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV"; 252 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV"; 253 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV: return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"; 254 case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT: return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT"; 255 case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN: return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN"; 256 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"; 257 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"; 258 case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"; 259 case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"; 260 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"; 261 case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"; 262 case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"; 263 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"; 264 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"; 265 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"; 266 case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"; 267 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"; 268 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"; 269 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"; 270 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"; 271 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT"; 272 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT"; 273 case VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT: return "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT"; 274 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR"; 275 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"; 276 case VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX: return "VK_STRUCTURE_TYPE_OBJECT_TABLE_CREATE_INFO_NVX"; 277 case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX: return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NVX"; 278 case VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX: return "VK_STRUCTURE_TYPE_CMD_PROCESS_COMMANDS_INFO_NVX"; 279 case VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX: return "VK_STRUCTURE_TYPE_CMD_RESERVE_SPACE_FOR_COMMANDS_INFO_NVX"; 280 case VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX: return "VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_LIMITS_NVX"; 281 case VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX: return "VK_STRUCTURE_TYPE_DEVICE_GENERATED_COMMANDS_FEATURES_NVX"; 282 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"; 283 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT: return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT"; 284 case VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT: return "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT"; 285 case VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT: return "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT"; 286 case VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT: return "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT"; 287 case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT"; 288 case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"; 289 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"; 290 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV"; 291 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT"; 292 case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"; 293 case VK_STRUCTURE_TYPE_HDR_METADATA_EXT: return "VK_STRUCTURE_TYPE_HDR_METADATA_EXT"; 294 case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR: return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR"; 295 case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR: return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR"; 296 case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR: return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR"; 297 case VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR: return "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR"; 298 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR"; 299 case VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR: return "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR"; 300 case VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR: return "VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR"; 301 case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"; 302 case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"; 303 case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"; 304 case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"; 305 case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"; 306 case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"; 307 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"; 308 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"; 309 case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"; 310 case VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR"; 311 case VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR"; 312 case VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR"; 313 case VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR"; 314 case VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR"; 315 case VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK: return "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK"; 316 case VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK: return "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK"; 317 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID: return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID"; 318 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID: return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID"; 319 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID: return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID"; 320 case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID: return "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"; 321 case VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID: return "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"; 322 case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID: return "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID"; 323 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT"; 324 case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT"; 325 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT"; 326 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT"; 327 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT: return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT"; 328 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT"; 329 case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT: return "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"; 330 case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT: return "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT"; 331 case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT"; 332 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT"; 333 case VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT"; 334 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR"; 335 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT"; 336 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"; 337 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT"; 338 case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV"; 339 case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV"; 340 case VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT"; 341 case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT"; 342 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT"; 343 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT"; 344 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT"; 345 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT"; 346 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT"; 347 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR"; 348 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT"; 349 case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT"; 350 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT"; 351 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR"; 352 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"; 353 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT"; 354 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT"; 355 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR"; 356 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR"; 357 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR"; 358 case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR: return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR"; 359 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR"; 360 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT"; 361 case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR: return "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR"; 362 default: return DE_NULL; 363 } 364} 365 366const char* getSystemAllocationScopeName (VkSystemAllocationScope value) 367{ 368 switch (value) 369 { 370 case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND: return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND"; 371 case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT: return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT"; 372 case VK_SYSTEM_ALLOCATION_SCOPE_CACHE: return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE"; 373 case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE: return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"; 374 case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE: return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"; 375 default: return DE_NULL; 376 } 377} 378 379const char* getInternalAllocationTypeName (VkInternalAllocationType value) 380{ 381 switch (value) 382 { 383 case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE: return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"; 384 default: return DE_NULL; 385 } 386} 387 388const char* getFormatName (VkFormat value) 389{ 390 switch (value) 391 { 392 case VK_FORMAT_UNDEFINED: return "VK_FORMAT_UNDEFINED"; 393 case VK_FORMAT_R4G4_UNORM_PACK8: return "VK_FORMAT_R4G4_UNORM_PACK8"; 394 case VK_FORMAT_R4G4B4A4_UNORM_PACK16: return "VK_FORMAT_R4G4B4A4_UNORM_PACK16"; 395 case VK_FORMAT_B4G4R4A4_UNORM_PACK16: return "VK_FORMAT_B4G4R4A4_UNORM_PACK16"; 396 case VK_FORMAT_R5G6B5_UNORM_PACK16: return "VK_FORMAT_R5G6B5_UNORM_PACK16"; 397 case VK_FORMAT_B5G6R5_UNORM_PACK16: return "VK_FORMAT_B5G6R5_UNORM_PACK16"; 398 case VK_FORMAT_R5G5B5A1_UNORM_PACK16: return "VK_FORMAT_R5G5B5A1_UNORM_PACK16"; 399 case VK_FORMAT_B5G5R5A1_UNORM_PACK16: return "VK_FORMAT_B5G5R5A1_UNORM_PACK16"; 400 case VK_FORMAT_A1R5G5B5_UNORM_PACK16: return "VK_FORMAT_A1R5G5B5_UNORM_PACK16"; 401 case VK_FORMAT_R8_UNORM: return "VK_FORMAT_R8_UNORM"; 402 case VK_FORMAT_R8_SNORM: return "VK_FORMAT_R8_SNORM"; 403 case VK_FORMAT_R8_USCALED: return "VK_FORMAT_R8_USCALED"; 404 case VK_FORMAT_R8_SSCALED: return "VK_FORMAT_R8_SSCALED"; 405 case VK_FORMAT_R8_UINT: return "VK_FORMAT_R8_UINT"; 406 case VK_FORMAT_R8_SINT: return "VK_FORMAT_R8_SINT"; 407 case VK_FORMAT_R8_SRGB: return "VK_FORMAT_R8_SRGB"; 408 case VK_FORMAT_R8G8_UNORM: return "VK_FORMAT_R8G8_UNORM"; 409 case VK_FORMAT_R8G8_SNORM: return "VK_FORMAT_R8G8_SNORM"; 410 case VK_FORMAT_R8G8_USCALED: return "VK_FORMAT_R8G8_USCALED"; 411 case VK_FORMAT_R8G8_SSCALED: return "VK_FORMAT_R8G8_SSCALED"; 412 case VK_FORMAT_R8G8_UINT: return "VK_FORMAT_R8G8_UINT"; 413 case VK_FORMAT_R8G8_SINT: return "VK_FORMAT_R8G8_SINT"; 414 case VK_FORMAT_R8G8_SRGB: return "VK_FORMAT_R8G8_SRGB"; 415 case VK_FORMAT_R8G8B8_UNORM: return "VK_FORMAT_R8G8B8_UNORM"; 416 case VK_FORMAT_R8G8B8_SNORM: return "VK_FORMAT_R8G8B8_SNORM"; 417 case VK_FORMAT_R8G8B8_USCALED: return "VK_FORMAT_R8G8B8_USCALED"; 418 case VK_FORMAT_R8G8B8_SSCALED: return "VK_FORMAT_R8G8B8_SSCALED"; 419 case VK_FORMAT_R8G8B8_UINT: return "VK_FORMAT_R8G8B8_UINT"; 420 case VK_FORMAT_R8G8B8_SINT: return "VK_FORMAT_R8G8B8_SINT"; 421 case VK_FORMAT_R8G8B8_SRGB: return "VK_FORMAT_R8G8B8_SRGB"; 422 case VK_FORMAT_B8G8R8_UNORM: return "VK_FORMAT_B8G8R8_UNORM"; 423 case VK_FORMAT_B8G8R8_SNORM: return "VK_FORMAT_B8G8R8_SNORM"; 424 case VK_FORMAT_B8G8R8_USCALED: return "VK_FORMAT_B8G8R8_USCALED"; 425 case VK_FORMAT_B8G8R8_SSCALED: return "VK_FORMAT_B8G8R8_SSCALED"; 426 case VK_FORMAT_B8G8R8_UINT: return "VK_FORMAT_B8G8R8_UINT"; 427 case VK_FORMAT_B8G8R8_SINT: return "VK_FORMAT_B8G8R8_SINT"; 428 case VK_FORMAT_B8G8R8_SRGB: return "VK_FORMAT_B8G8R8_SRGB"; 429 case VK_FORMAT_R8G8B8A8_UNORM: return "VK_FORMAT_R8G8B8A8_UNORM"; 430 case VK_FORMAT_R8G8B8A8_SNORM: return "VK_FORMAT_R8G8B8A8_SNORM"; 431 case VK_FORMAT_R8G8B8A8_USCALED: return "VK_FORMAT_R8G8B8A8_USCALED"; 432 case VK_FORMAT_R8G8B8A8_SSCALED: return "VK_FORMAT_R8G8B8A8_SSCALED"; 433 case VK_FORMAT_R8G8B8A8_UINT: return "VK_FORMAT_R8G8B8A8_UINT"; 434 case VK_FORMAT_R8G8B8A8_SINT: return "VK_FORMAT_R8G8B8A8_SINT"; 435 case VK_FORMAT_R8G8B8A8_SRGB: return "VK_FORMAT_R8G8B8A8_SRGB"; 436 case VK_FORMAT_B8G8R8A8_UNORM: return "VK_FORMAT_B8G8R8A8_UNORM"; 437 case VK_FORMAT_B8G8R8A8_SNORM: return "VK_FORMAT_B8G8R8A8_SNORM"; 438 case VK_FORMAT_B8G8R8A8_USCALED: return "VK_FORMAT_B8G8R8A8_USCALED"; 439 case VK_FORMAT_B8G8R8A8_SSCALED: return "VK_FORMAT_B8G8R8A8_SSCALED"; 440 case VK_FORMAT_B8G8R8A8_UINT: return "VK_FORMAT_B8G8R8A8_UINT"; 441 case VK_FORMAT_B8G8R8A8_SINT: return "VK_FORMAT_B8G8R8A8_SINT"; 442 case VK_FORMAT_B8G8R8A8_SRGB: return "VK_FORMAT_B8G8R8A8_SRGB"; 443 case VK_FORMAT_A8B8G8R8_UNORM_PACK32: return "VK_FORMAT_A8B8G8R8_UNORM_PACK32"; 444 case VK_FORMAT_A8B8G8R8_SNORM_PACK32: return "VK_FORMAT_A8B8G8R8_SNORM_PACK32"; 445 case VK_FORMAT_A8B8G8R8_USCALED_PACK32: return "VK_FORMAT_A8B8G8R8_USCALED_PACK32"; 446 case VK_FORMAT_A8B8G8R8_SSCALED_PACK32: return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32"; 447 case VK_FORMAT_A8B8G8R8_UINT_PACK32: return "VK_FORMAT_A8B8G8R8_UINT_PACK32"; 448 case VK_FORMAT_A8B8G8R8_SINT_PACK32: return "VK_FORMAT_A8B8G8R8_SINT_PACK32"; 449 case VK_FORMAT_A8B8G8R8_SRGB_PACK32: return "VK_FORMAT_A8B8G8R8_SRGB_PACK32"; 450 case VK_FORMAT_A2R10G10B10_UNORM_PACK32: return "VK_FORMAT_A2R10G10B10_UNORM_PACK32"; 451 case VK_FORMAT_A2R10G10B10_SNORM_PACK32: return "VK_FORMAT_A2R10G10B10_SNORM_PACK32"; 452 case VK_FORMAT_A2R10G10B10_USCALED_PACK32: return "VK_FORMAT_A2R10G10B10_USCALED_PACK32"; 453 case VK_FORMAT_A2R10G10B10_SSCALED_PACK32: return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32"; 454 case VK_FORMAT_A2R10G10B10_UINT_PACK32: return "VK_FORMAT_A2R10G10B10_UINT_PACK32"; 455 case VK_FORMAT_A2R10G10B10_SINT_PACK32: return "VK_FORMAT_A2R10G10B10_SINT_PACK32"; 456 case VK_FORMAT_A2B10G10R10_UNORM_PACK32: return "VK_FORMAT_A2B10G10R10_UNORM_PACK32"; 457 case VK_FORMAT_A2B10G10R10_SNORM_PACK32: return "VK_FORMAT_A2B10G10R10_SNORM_PACK32"; 458 case VK_FORMAT_A2B10G10R10_USCALED_PACK32: return "VK_FORMAT_A2B10G10R10_USCALED_PACK32"; 459 case VK_FORMAT_A2B10G10R10_SSCALED_PACK32: return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32"; 460 case VK_FORMAT_A2B10G10R10_UINT_PACK32: return "VK_FORMAT_A2B10G10R10_UINT_PACK32"; 461 case VK_FORMAT_A2B10G10R10_SINT_PACK32: return "VK_FORMAT_A2B10G10R10_SINT_PACK32"; 462 case VK_FORMAT_R16_UNORM: return "VK_FORMAT_R16_UNORM"; 463 case VK_FORMAT_R16_SNORM: return "VK_FORMAT_R16_SNORM"; 464 case VK_FORMAT_R16_USCALED: return "VK_FORMAT_R16_USCALED"; 465 case VK_FORMAT_R16_SSCALED: return "VK_FORMAT_R16_SSCALED"; 466 case VK_FORMAT_R16_UINT: return "VK_FORMAT_R16_UINT"; 467 case VK_FORMAT_R16_SINT: return "VK_FORMAT_R16_SINT"; 468 case VK_FORMAT_R16_SFLOAT: return "VK_FORMAT_R16_SFLOAT"; 469 case VK_FORMAT_R16G16_UNORM: return "VK_FORMAT_R16G16_UNORM"; 470 case VK_FORMAT_R16G16_SNORM: return "VK_FORMAT_R16G16_SNORM"; 471 case VK_FORMAT_R16G16_USCALED: return "VK_FORMAT_R16G16_USCALED"; 472 case VK_FORMAT_R16G16_SSCALED: return "VK_FORMAT_R16G16_SSCALED"; 473 case VK_FORMAT_R16G16_UINT: return "VK_FORMAT_R16G16_UINT"; 474 case VK_FORMAT_R16G16_SINT: return "VK_FORMAT_R16G16_SINT"; 475 case VK_FORMAT_R16G16_SFLOAT: return "VK_FORMAT_R16G16_SFLOAT"; 476 case VK_FORMAT_R16G16B16_UNORM: return "VK_FORMAT_R16G16B16_UNORM"; 477 case VK_FORMAT_R16G16B16_SNORM: return "VK_FORMAT_R16G16B16_SNORM"; 478 case VK_FORMAT_R16G16B16_USCALED: return "VK_FORMAT_R16G16B16_USCALED"; 479 case VK_FORMAT_R16G16B16_SSCALED: return "VK_FORMAT_R16G16B16_SSCALED"; 480 case VK_FORMAT_R16G16B16_UINT: return "VK_FORMAT_R16G16B16_UINT"; 481 case VK_FORMAT_R16G16B16_SINT: return "VK_FORMAT_R16G16B16_SINT"; 482 case VK_FORMAT_R16G16B16_SFLOAT: return "VK_FORMAT_R16G16B16_SFLOAT"; 483 case VK_FORMAT_R16G16B16A16_UNORM: return "VK_FORMAT_R16G16B16A16_UNORM"; 484 case VK_FORMAT_R16G16B16A16_SNORM: return "VK_FORMAT_R16G16B16A16_SNORM"; 485 case VK_FORMAT_R16G16B16A16_USCALED: return "VK_FORMAT_R16G16B16A16_USCALED"; 486 case VK_FORMAT_R16G16B16A16_SSCALED: return "VK_FORMAT_R16G16B16A16_SSCALED"; 487 case VK_FORMAT_R16G16B16A16_UINT: return "VK_FORMAT_R16G16B16A16_UINT"; 488 case VK_FORMAT_R16G16B16A16_SINT: return "VK_FORMAT_R16G16B16A16_SINT"; 489 case VK_FORMAT_R16G16B16A16_SFLOAT: return "VK_FORMAT_R16G16B16A16_SFLOAT"; 490 case VK_FORMAT_R32_UINT: return "VK_FORMAT_R32_UINT"; 491 case VK_FORMAT_R32_SINT: return "VK_FORMAT_R32_SINT"; 492 case VK_FORMAT_R32_SFLOAT: return "VK_FORMAT_R32_SFLOAT"; 493 case VK_FORMAT_R32G32_UINT: return "VK_FORMAT_R32G32_UINT"; 494 case VK_FORMAT_R32G32_SINT: return "VK_FORMAT_R32G32_SINT"; 495 case VK_FORMAT_R32G32_SFLOAT: return "VK_FORMAT_R32G32_SFLOAT"; 496 case VK_FORMAT_R32G32B32_UINT: return "VK_FORMAT_R32G32B32_UINT"; 497 case VK_FORMAT_R32G32B32_SINT: return "VK_FORMAT_R32G32B32_SINT"; 498 case VK_FORMAT_R32G32B32_SFLOAT: return "VK_FORMAT_R32G32B32_SFLOAT"; 499 case VK_FORMAT_R32G32B32A32_UINT: return "VK_FORMAT_R32G32B32A32_UINT"; 500 case VK_FORMAT_R32G32B32A32_SINT: return "VK_FORMAT_R32G32B32A32_SINT"; 501 case VK_FORMAT_R32G32B32A32_SFLOAT: return "VK_FORMAT_R32G32B32A32_SFLOAT"; 502 case VK_FORMAT_R64_UINT: return "VK_FORMAT_R64_UINT"; 503 case VK_FORMAT_R64_SINT: return "VK_FORMAT_R64_SINT"; 504 case VK_FORMAT_R64_SFLOAT: return "VK_FORMAT_R64_SFLOAT"; 505 case VK_FORMAT_R64G64_UINT: return "VK_FORMAT_R64G64_UINT"; 506 case VK_FORMAT_R64G64_SINT: return "VK_FORMAT_R64G64_SINT"; 507 case VK_FORMAT_R64G64_SFLOAT: return "VK_FORMAT_R64G64_SFLOAT"; 508 case VK_FORMAT_R64G64B64_UINT: return "VK_FORMAT_R64G64B64_UINT"; 509 case VK_FORMAT_R64G64B64_SINT: return "VK_FORMAT_R64G64B64_SINT"; 510 case VK_FORMAT_R64G64B64_SFLOAT: return "VK_FORMAT_R64G64B64_SFLOAT"; 511 case VK_FORMAT_R64G64B64A64_UINT: return "VK_FORMAT_R64G64B64A64_UINT"; 512 case VK_FORMAT_R64G64B64A64_SINT: return "VK_FORMAT_R64G64B64A64_SINT"; 513 case VK_FORMAT_R64G64B64A64_SFLOAT: return "VK_FORMAT_R64G64B64A64_SFLOAT"; 514 case VK_FORMAT_B10G11R11_UFLOAT_PACK32: return "VK_FORMAT_B10G11R11_UFLOAT_PACK32"; 515 case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32: return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32"; 516 case VK_FORMAT_D16_UNORM: return "VK_FORMAT_D16_UNORM"; 517 case VK_FORMAT_X8_D24_UNORM_PACK32: return "VK_FORMAT_X8_D24_UNORM_PACK32"; 518 case VK_FORMAT_D32_SFLOAT: return "VK_FORMAT_D32_SFLOAT"; 519 case VK_FORMAT_S8_UINT: return "VK_FORMAT_S8_UINT"; 520 case VK_FORMAT_D16_UNORM_S8_UINT: return "VK_FORMAT_D16_UNORM_S8_UINT"; 521 case VK_FORMAT_D24_UNORM_S8_UINT: return "VK_FORMAT_D24_UNORM_S8_UINT"; 522 case VK_FORMAT_D32_SFLOAT_S8_UINT: return "VK_FORMAT_D32_SFLOAT_S8_UINT"; 523 case VK_FORMAT_BC1_RGB_UNORM_BLOCK: return "VK_FORMAT_BC1_RGB_UNORM_BLOCK"; 524 case VK_FORMAT_BC1_RGB_SRGB_BLOCK: return "VK_FORMAT_BC1_RGB_SRGB_BLOCK"; 525 case VK_FORMAT_BC1_RGBA_UNORM_BLOCK: return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK"; 526 case VK_FORMAT_BC1_RGBA_SRGB_BLOCK: return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK"; 527 case VK_FORMAT_BC2_UNORM_BLOCK: return "VK_FORMAT_BC2_UNORM_BLOCK"; 528 case VK_FORMAT_BC2_SRGB_BLOCK: return "VK_FORMAT_BC2_SRGB_BLOCK"; 529 case VK_FORMAT_BC3_UNORM_BLOCK: return "VK_FORMAT_BC3_UNORM_BLOCK"; 530 case VK_FORMAT_BC3_SRGB_BLOCK: return "VK_FORMAT_BC3_SRGB_BLOCK"; 531 case VK_FORMAT_BC4_UNORM_BLOCK: return "VK_FORMAT_BC4_UNORM_BLOCK"; 532 case VK_FORMAT_BC4_SNORM_BLOCK: return "VK_FORMAT_BC4_SNORM_BLOCK"; 533 case VK_FORMAT_BC5_UNORM_BLOCK: return "VK_FORMAT_BC5_UNORM_BLOCK"; 534 case VK_FORMAT_BC5_SNORM_BLOCK: return "VK_FORMAT_BC5_SNORM_BLOCK"; 535 case VK_FORMAT_BC6H_UFLOAT_BLOCK: return "VK_FORMAT_BC6H_UFLOAT_BLOCK"; 536 case VK_FORMAT_BC6H_SFLOAT_BLOCK: return "VK_FORMAT_BC6H_SFLOAT_BLOCK"; 537 case VK_FORMAT_BC7_UNORM_BLOCK: return "VK_FORMAT_BC7_UNORM_BLOCK"; 538 case VK_FORMAT_BC7_SRGB_BLOCK: return "VK_FORMAT_BC7_SRGB_BLOCK"; 539 case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK"; 540 case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK"; 541 case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK"; 542 case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK"; 543 case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK"; 544 case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK"; 545 case VK_FORMAT_EAC_R11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11_UNORM_BLOCK"; 546 case VK_FORMAT_EAC_R11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11_SNORM_BLOCK"; 547 case VK_FORMAT_EAC_R11G11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK"; 548 case VK_FORMAT_EAC_R11G11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK"; 549 case VK_FORMAT_ASTC_4x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK"; 550 case VK_FORMAT_ASTC_4x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK"; 551 case VK_FORMAT_ASTC_5x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK"; 552 case VK_FORMAT_ASTC_5x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK"; 553 case VK_FORMAT_ASTC_5x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK"; 554 case VK_FORMAT_ASTC_5x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK"; 555 case VK_FORMAT_ASTC_6x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK"; 556 case VK_FORMAT_ASTC_6x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK"; 557 case VK_FORMAT_ASTC_6x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK"; 558 case VK_FORMAT_ASTC_6x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK"; 559 case VK_FORMAT_ASTC_8x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK"; 560 case VK_FORMAT_ASTC_8x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK"; 561 case VK_FORMAT_ASTC_8x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK"; 562 case VK_FORMAT_ASTC_8x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK"; 563 case VK_FORMAT_ASTC_8x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK"; 564 case VK_FORMAT_ASTC_8x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK"; 565 case VK_FORMAT_ASTC_10x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK"; 566 case VK_FORMAT_ASTC_10x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK"; 567 case VK_FORMAT_ASTC_10x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK"; 568 case VK_FORMAT_ASTC_10x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK"; 569 case VK_FORMAT_ASTC_10x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK"; 570 case VK_FORMAT_ASTC_10x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK"; 571 case VK_FORMAT_ASTC_10x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK"; 572 case VK_FORMAT_ASTC_10x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK"; 573 case VK_FORMAT_ASTC_12x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK"; 574 case VK_FORMAT_ASTC_12x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK"; 575 case VK_FORMAT_ASTC_12x12_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK"; 576 case VK_FORMAT_ASTC_12x12_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"; 577 case VK_FORMAT_G8B8G8R8_422_UNORM: return "VK_FORMAT_G8B8G8R8_422_UNORM"; 578 case VK_FORMAT_B8G8R8G8_422_UNORM: return "VK_FORMAT_B8G8R8G8_422_UNORM"; 579 case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM: return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM"; 580 case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM: return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM"; 581 case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM: return "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM"; 582 case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM: return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM"; 583 case VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM: return "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM"; 584 case VK_FORMAT_R10X6_UNORM_PACK16: return "VK_FORMAT_R10X6_UNORM_PACK16"; 585 case VK_FORMAT_R10X6G10X6_UNORM_2PACK16: return "VK_FORMAT_R10X6G10X6_UNORM_2PACK16"; 586 case VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16: return "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16"; 587 case VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16: return "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16"; 588 case VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16: return "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16"; 589 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16"; 590 case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16: return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16"; 591 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16"; 592 case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16: return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16"; 593 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16"; 594 case VK_FORMAT_R12X4_UNORM_PACK16: return "VK_FORMAT_R12X4_UNORM_PACK16"; 595 case VK_FORMAT_R12X4G12X4_UNORM_2PACK16: return "VK_FORMAT_R12X4G12X4_UNORM_2PACK16"; 596 case VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16: return "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16"; 597 case VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16: return "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16"; 598 case VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16: return "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16"; 599 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16"; 600 case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16: return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16"; 601 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16"; 602 case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16: return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16"; 603 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16"; 604 case VK_FORMAT_G16B16G16R16_422_UNORM: return "VK_FORMAT_G16B16G16R16_422_UNORM"; 605 case VK_FORMAT_B16G16R16G16_422_UNORM: return "VK_FORMAT_B16G16R16G16_422_UNORM"; 606 case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM: return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM"; 607 case VK_FORMAT_G16_B16R16_2PLANE_420_UNORM: return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM"; 608 case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM: return "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM"; 609 case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM: return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM"; 610 case VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM: return "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM"; 611 case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG: return "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG"; 612 case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG: return "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG"; 613 case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG: return "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG"; 614 case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG: return "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG"; 615 case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG: return "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG"; 616 case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG: return "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG"; 617 case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG: return "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG"; 618 case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG: return "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG"; 619 default: return DE_NULL; 620 } 621} 622 623const char* getImageTypeName (VkImageType value) 624{ 625 switch (value) 626 { 627 case VK_IMAGE_TYPE_1D: return "VK_IMAGE_TYPE_1D"; 628 case VK_IMAGE_TYPE_2D: return "VK_IMAGE_TYPE_2D"; 629 case VK_IMAGE_TYPE_3D: return "VK_IMAGE_TYPE_3D"; 630 default: return DE_NULL; 631 } 632} 633 634const char* getImageTilingName (VkImageTiling value) 635{ 636 switch (value) 637 { 638 case VK_IMAGE_TILING_OPTIMAL: return "VK_IMAGE_TILING_OPTIMAL"; 639 case VK_IMAGE_TILING_LINEAR: return "VK_IMAGE_TILING_LINEAR"; 640 default: return DE_NULL; 641 } 642} 643 644const char* getPhysicalDeviceTypeName (VkPhysicalDeviceType value) 645{ 646 switch (value) 647 { 648 case VK_PHYSICAL_DEVICE_TYPE_OTHER: return "VK_PHYSICAL_DEVICE_TYPE_OTHER"; 649 case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU: return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU"; 650 case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU: return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU"; 651 case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU: return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"; 652 case VK_PHYSICAL_DEVICE_TYPE_CPU: return "VK_PHYSICAL_DEVICE_TYPE_CPU"; 653 default: return DE_NULL; 654 } 655} 656 657const char* getQueryTypeName (VkQueryType value) 658{ 659 switch (value) 660 { 661 case VK_QUERY_TYPE_OCCLUSION: return "VK_QUERY_TYPE_OCCLUSION"; 662 case VK_QUERY_TYPE_PIPELINE_STATISTICS: return "VK_QUERY_TYPE_PIPELINE_STATISTICS"; 663 case VK_QUERY_TYPE_TIMESTAMP: return "VK_QUERY_TYPE_TIMESTAMP"; 664 default: return DE_NULL; 665 } 666} 667 668const char* getSharingModeName (VkSharingMode value) 669{ 670 switch (value) 671 { 672 case VK_SHARING_MODE_EXCLUSIVE: return "VK_SHARING_MODE_EXCLUSIVE"; 673 case VK_SHARING_MODE_CONCURRENT: return "VK_SHARING_MODE_CONCURRENT"; 674 default: return DE_NULL; 675 } 676} 677 678const char* getImageLayoutName (VkImageLayout value) 679{ 680 switch (value) 681 { 682 case VK_IMAGE_LAYOUT_UNDEFINED: return "VK_IMAGE_LAYOUT_UNDEFINED"; 683 case VK_IMAGE_LAYOUT_GENERAL: return "VK_IMAGE_LAYOUT_GENERAL"; 684 case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL"; 685 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL"; 686 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL"; 687 case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL"; 688 case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL"; 689 case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL"; 690 case VK_IMAGE_LAYOUT_PREINITIALIZED: return "VK_IMAGE_LAYOUT_PREINITIALIZED"; 691 case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL"; 692 case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL"; 693 case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR: return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR"; 694 case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR: return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR"; 695 default: return DE_NULL; 696 } 697} 698 699const char* getImageViewTypeName (VkImageViewType value) 700{ 701 switch (value) 702 { 703 case VK_IMAGE_VIEW_TYPE_1D: return "VK_IMAGE_VIEW_TYPE_1D"; 704 case VK_IMAGE_VIEW_TYPE_2D: return "VK_IMAGE_VIEW_TYPE_2D"; 705 case VK_IMAGE_VIEW_TYPE_3D: return "VK_IMAGE_VIEW_TYPE_3D"; 706 case VK_IMAGE_VIEW_TYPE_CUBE: return "VK_IMAGE_VIEW_TYPE_CUBE"; 707 case VK_IMAGE_VIEW_TYPE_1D_ARRAY: return "VK_IMAGE_VIEW_TYPE_1D_ARRAY"; 708 case VK_IMAGE_VIEW_TYPE_2D_ARRAY: return "VK_IMAGE_VIEW_TYPE_2D_ARRAY"; 709 case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY: return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"; 710 default: return DE_NULL; 711 } 712} 713 714const char* getComponentSwizzleName (VkComponentSwizzle value) 715{ 716 switch (value) 717 { 718 case VK_COMPONENT_SWIZZLE_IDENTITY: return "VK_COMPONENT_SWIZZLE_IDENTITY"; 719 case VK_COMPONENT_SWIZZLE_ZERO: return "VK_COMPONENT_SWIZZLE_ZERO"; 720 case VK_COMPONENT_SWIZZLE_ONE: return "VK_COMPONENT_SWIZZLE_ONE"; 721 case VK_COMPONENT_SWIZZLE_R: return "VK_COMPONENT_SWIZZLE_R"; 722 case VK_COMPONENT_SWIZZLE_G: return "VK_COMPONENT_SWIZZLE_G"; 723 case VK_COMPONENT_SWIZZLE_B: return "VK_COMPONENT_SWIZZLE_B"; 724 case VK_COMPONENT_SWIZZLE_A: return "VK_COMPONENT_SWIZZLE_A"; 725 default: return DE_NULL; 726 } 727} 728 729const char* getVertexInputRateName (VkVertexInputRate value) 730{ 731 switch (value) 732 { 733 case VK_VERTEX_INPUT_RATE_VERTEX: return "VK_VERTEX_INPUT_RATE_VERTEX"; 734 case VK_VERTEX_INPUT_RATE_INSTANCE: return "VK_VERTEX_INPUT_RATE_INSTANCE"; 735 default: return DE_NULL; 736 } 737} 738 739const char* getPrimitiveTopologyName (VkPrimitiveTopology value) 740{ 741 switch (value) 742 { 743 case VK_PRIMITIVE_TOPOLOGY_POINT_LIST: return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST"; 744 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST"; 745 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP"; 746 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"; 747 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP"; 748 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN"; 749 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY"; 750 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY"; 751 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY"; 752 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"; 753 case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST: return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"; 754 default: return DE_NULL; 755 } 756} 757 758const char* getPolygonModeName (VkPolygonMode value) 759{ 760 switch (value) 761 { 762 case VK_POLYGON_MODE_FILL: return "VK_POLYGON_MODE_FILL"; 763 case VK_POLYGON_MODE_LINE: return "VK_POLYGON_MODE_LINE"; 764 case VK_POLYGON_MODE_POINT: return "VK_POLYGON_MODE_POINT"; 765 case VK_POLYGON_MODE_FILL_RECTANGLE_NV: return "VK_POLYGON_MODE_FILL_RECTANGLE_NV"; 766 default: return DE_NULL; 767 } 768} 769 770const char* getFrontFaceName (VkFrontFace value) 771{ 772 switch (value) 773 { 774 case VK_FRONT_FACE_COUNTER_CLOCKWISE: return "VK_FRONT_FACE_COUNTER_CLOCKWISE"; 775 case VK_FRONT_FACE_CLOCKWISE: return "VK_FRONT_FACE_CLOCKWISE"; 776 default: return DE_NULL; 777 } 778} 779 780const char* getCompareOpName (VkCompareOp value) 781{ 782 switch (value) 783 { 784 case VK_COMPARE_OP_NEVER: return "VK_COMPARE_OP_NEVER"; 785 case VK_COMPARE_OP_LESS: return "VK_COMPARE_OP_LESS"; 786 case VK_COMPARE_OP_EQUAL: return "VK_COMPARE_OP_EQUAL"; 787 case VK_COMPARE_OP_LESS_OR_EQUAL: return "VK_COMPARE_OP_LESS_OR_EQUAL"; 788 case VK_COMPARE_OP_GREATER: return "VK_COMPARE_OP_GREATER"; 789 case VK_COMPARE_OP_NOT_EQUAL: return "VK_COMPARE_OP_NOT_EQUAL"; 790 case VK_COMPARE_OP_GREATER_OR_EQUAL: return "VK_COMPARE_OP_GREATER_OR_EQUAL"; 791 case VK_COMPARE_OP_ALWAYS: return "VK_COMPARE_OP_ALWAYS"; 792 default: return DE_NULL; 793 } 794} 795 796const char* getStencilOpName (VkStencilOp value) 797{ 798 switch (value) 799 { 800 case VK_STENCIL_OP_KEEP: return "VK_STENCIL_OP_KEEP"; 801 case VK_STENCIL_OP_ZERO: return "VK_STENCIL_OP_ZERO"; 802 case VK_STENCIL_OP_REPLACE: return "VK_STENCIL_OP_REPLACE"; 803 case VK_STENCIL_OP_INCREMENT_AND_CLAMP: return "VK_STENCIL_OP_INCREMENT_AND_CLAMP"; 804 case VK_STENCIL_OP_DECREMENT_AND_CLAMP: return "VK_STENCIL_OP_DECREMENT_AND_CLAMP"; 805 case VK_STENCIL_OP_INVERT: return "VK_STENCIL_OP_INVERT"; 806 case VK_STENCIL_OP_INCREMENT_AND_WRAP: return "VK_STENCIL_OP_INCREMENT_AND_WRAP"; 807 case VK_STENCIL_OP_DECREMENT_AND_WRAP: return "VK_STENCIL_OP_DECREMENT_AND_WRAP"; 808 default: return DE_NULL; 809 } 810} 811 812const char* getLogicOpName (VkLogicOp value) 813{ 814 switch (value) 815 { 816 case VK_LOGIC_OP_CLEAR: return "VK_LOGIC_OP_CLEAR"; 817 case VK_LOGIC_OP_AND: return "VK_LOGIC_OP_AND"; 818 case VK_LOGIC_OP_AND_REVERSE: return "VK_LOGIC_OP_AND_REVERSE"; 819 case VK_LOGIC_OP_COPY: return "VK_LOGIC_OP_COPY"; 820 case VK_LOGIC_OP_AND_INVERTED: return "VK_LOGIC_OP_AND_INVERTED"; 821 case VK_LOGIC_OP_NO_OP: return "VK_LOGIC_OP_NO_OP"; 822 case VK_LOGIC_OP_XOR: return "VK_LOGIC_OP_XOR"; 823 case VK_LOGIC_OP_OR: return "VK_LOGIC_OP_OR"; 824 case VK_LOGIC_OP_NOR: return "VK_LOGIC_OP_NOR"; 825 case VK_LOGIC_OP_EQUIVALENT: return "VK_LOGIC_OP_EQUIVALENT"; 826 case VK_LOGIC_OP_INVERT: return "VK_LOGIC_OP_INVERT"; 827 case VK_LOGIC_OP_OR_REVERSE: return "VK_LOGIC_OP_OR_REVERSE"; 828 case VK_LOGIC_OP_COPY_INVERTED: return "VK_LOGIC_OP_COPY_INVERTED"; 829 case VK_LOGIC_OP_OR_INVERTED: return "VK_LOGIC_OP_OR_INVERTED"; 830 case VK_LOGIC_OP_NAND: return "VK_LOGIC_OP_NAND"; 831 case VK_LOGIC_OP_SET: return "VK_LOGIC_OP_SET"; 832 default: return DE_NULL; 833 } 834} 835 836const char* getBlendFactorName (VkBlendFactor value) 837{ 838 switch (value) 839 { 840 case VK_BLEND_FACTOR_ZERO: return "VK_BLEND_FACTOR_ZERO"; 841 case VK_BLEND_FACTOR_ONE: return "VK_BLEND_FACTOR_ONE"; 842 case VK_BLEND_FACTOR_SRC_COLOR: return "VK_BLEND_FACTOR_SRC_COLOR"; 843 case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR"; 844 case VK_BLEND_FACTOR_DST_COLOR: return "VK_BLEND_FACTOR_DST_COLOR"; 845 case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR"; 846 case VK_BLEND_FACTOR_SRC_ALPHA: return "VK_BLEND_FACTOR_SRC_ALPHA"; 847 case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA"; 848 case VK_BLEND_FACTOR_DST_ALPHA: return "VK_BLEND_FACTOR_DST_ALPHA"; 849 case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA"; 850 case VK_BLEND_FACTOR_CONSTANT_COLOR: return "VK_BLEND_FACTOR_CONSTANT_COLOR"; 851 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR"; 852 case VK_BLEND_FACTOR_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_CONSTANT_ALPHA"; 853 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA"; 854 case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE: return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE"; 855 case VK_BLEND_FACTOR_SRC1_COLOR: return "VK_BLEND_FACTOR_SRC1_COLOR"; 856 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR"; 857 case VK_BLEND_FACTOR_SRC1_ALPHA: return "VK_BLEND_FACTOR_SRC1_ALPHA"; 858 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"; 859 default: return DE_NULL; 860 } 861} 862 863const char* getBlendOpName (VkBlendOp value) 864{ 865 switch (value) 866 { 867 case VK_BLEND_OP_ADD: return "VK_BLEND_OP_ADD"; 868 case VK_BLEND_OP_SUBTRACT: return "VK_BLEND_OP_SUBTRACT"; 869 case VK_BLEND_OP_REVERSE_SUBTRACT: return "VK_BLEND_OP_REVERSE_SUBTRACT"; 870 case VK_BLEND_OP_MIN: return "VK_BLEND_OP_MIN"; 871 case VK_BLEND_OP_MAX: return "VK_BLEND_OP_MAX"; 872 case VK_BLEND_OP_ZERO_EXT: return "VK_BLEND_OP_ZERO_EXT"; 873 case VK_BLEND_OP_SRC_EXT: return "VK_BLEND_OP_SRC_EXT"; 874 case VK_BLEND_OP_DST_EXT: return "VK_BLEND_OP_DST_EXT"; 875 case VK_BLEND_OP_SRC_OVER_EXT: return "VK_BLEND_OP_SRC_OVER_EXT"; 876 case VK_BLEND_OP_DST_OVER_EXT: return "VK_BLEND_OP_DST_OVER_EXT"; 877 case VK_BLEND_OP_SRC_IN_EXT: return "VK_BLEND_OP_SRC_IN_EXT"; 878 case VK_BLEND_OP_DST_IN_EXT: return "VK_BLEND_OP_DST_IN_EXT"; 879 case VK_BLEND_OP_SRC_OUT_EXT: return "VK_BLEND_OP_SRC_OUT_EXT"; 880 case VK_BLEND_OP_DST_OUT_EXT: return "VK_BLEND_OP_DST_OUT_EXT"; 881 case VK_BLEND_OP_SRC_ATOP_EXT: return "VK_BLEND_OP_SRC_ATOP_EXT"; 882 case VK_BLEND_OP_DST_ATOP_EXT: return "VK_BLEND_OP_DST_ATOP_EXT"; 883 case VK_BLEND_OP_XOR_EXT: return "VK_BLEND_OP_XOR_EXT"; 884 case VK_BLEND_OP_MULTIPLY_EXT: return "VK_BLEND_OP_MULTIPLY_EXT"; 885 case VK_BLEND_OP_SCREEN_EXT: return "VK_BLEND_OP_SCREEN_EXT"; 886 case VK_BLEND_OP_OVERLAY_EXT: return "VK_BLEND_OP_OVERLAY_EXT"; 887 case VK_BLEND_OP_DARKEN_EXT: return "VK_BLEND_OP_DARKEN_EXT"; 888 case VK_BLEND_OP_LIGHTEN_EXT: return "VK_BLEND_OP_LIGHTEN_EXT"; 889 case VK_BLEND_OP_COLORDODGE_EXT: return "VK_BLEND_OP_COLORDODGE_EXT"; 890 case VK_BLEND_OP_COLORBURN_EXT: return "VK_BLEND_OP_COLORBURN_EXT"; 891 case VK_BLEND_OP_HARDLIGHT_EXT: return "VK_BLEND_OP_HARDLIGHT_EXT"; 892 case VK_BLEND_OP_SOFTLIGHT_EXT: return "VK_BLEND_OP_SOFTLIGHT_EXT"; 893 case VK_BLEND_OP_DIFFERENCE_EXT: return "VK_BLEND_OP_DIFFERENCE_EXT"; 894 case VK_BLEND_OP_EXCLUSION_EXT: return "VK_BLEND_OP_EXCLUSION_EXT"; 895 case VK_BLEND_OP_INVERT_EXT: return "VK_BLEND_OP_INVERT_EXT"; 896 case VK_BLEND_OP_INVERT_RGB_EXT: return "VK_BLEND_OP_INVERT_RGB_EXT"; 897 case VK_BLEND_OP_LINEARDODGE_EXT: return "VK_BLEND_OP_LINEARDODGE_EXT"; 898 case VK_BLEND_OP_LINEARBURN_EXT: return "VK_BLEND_OP_LINEARBURN_EXT"; 899 case VK_BLEND_OP_VIVIDLIGHT_EXT: return "VK_BLEND_OP_VIVIDLIGHT_EXT"; 900 case VK_BLEND_OP_LINEARLIGHT_EXT: return "VK_BLEND_OP_LINEARLIGHT_EXT"; 901 case VK_BLEND_OP_PINLIGHT_EXT: return "VK_BLEND_OP_PINLIGHT_EXT"; 902 case VK_BLEND_OP_HARDMIX_EXT: return "VK_BLEND_OP_HARDMIX_EXT"; 903 case VK_BLEND_OP_HSL_HUE_EXT: return "VK_BLEND_OP_HSL_HUE_EXT"; 904 case VK_BLEND_OP_HSL_SATURATION_EXT: return "VK_BLEND_OP_HSL_SATURATION_EXT"; 905 case VK_BLEND_OP_HSL_COLOR_EXT: return "VK_BLEND_OP_HSL_COLOR_EXT"; 906 case VK_BLEND_OP_HSL_LUMINOSITY_EXT: return "VK_BLEND_OP_HSL_LUMINOSITY_EXT"; 907 case VK_BLEND_OP_PLUS_EXT: return "VK_BLEND_OP_PLUS_EXT"; 908 case VK_BLEND_OP_PLUS_CLAMPED_EXT: return "VK_BLEND_OP_PLUS_CLAMPED_EXT"; 909 case VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT: return "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT"; 910 case VK_BLEND_OP_PLUS_DARKER_EXT: return "VK_BLEND_OP_PLUS_DARKER_EXT"; 911 case VK_BLEND_OP_MINUS_EXT: return "VK_BLEND_OP_MINUS_EXT"; 912 case VK_BLEND_OP_MINUS_CLAMPED_EXT: return "VK_BLEND_OP_MINUS_CLAMPED_EXT"; 913 case VK_BLEND_OP_CONTRAST_EXT: return "VK_BLEND_OP_CONTRAST_EXT"; 914 case VK_BLEND_OP_INVERT_OVG_EXT: return "VK_BLEND_OP_INVERT_OVG_EXT"; 915 case VK_BLEND_OP_RED_EXT: return "VK_BLEND_OP_RED_EXT"; 916 case VK_BLEND_OP_GREEN_EXT: return "VK_BLEND_OP_GREEN_EXT"; 917 case VK_BLEND_OP_BLUE_EXT: return "VK_BLEND_OP_BLUE_EXT"; 918 default: return DE_NULL; 919 } 920} 921 922const char* getDynamicStateName (VkDynamicState value) 923{ 924 switch (value) 925 { 926 case VK_DYNAMIC_STATE_VIEWPORT: return "VK_DYNAMIC_STATE_VIEWPORT"; 927 case VK_DYNAMIC_STATE_SCISSOR: return "VK_DYNAMIC_STATE_SCISSOR"; 928 case VK_DYNAMIC_STATE_LINE_WIDTH: return "VK_DYNAMIC_STATE_LINE_WIDTH"; 929 case VK_DYNAMIC_STATE_DEPTH_BIAS: return "VK_DYNAMIC_STATE_DEPTH_BIAS"; 930 case VK_DYNAMIC_STATE_BLEND_CONSTANTS: return "VK_DYNAMIC_STATE_BLEND_CONSTANTS"; 931 case VK_DYNAMIC_STATE_DEPTH_BOUNDS: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS"; 932 case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK: return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK"; 933 case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK: return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK"; 934 case VK_DYNAMIC_STATE_STENCIL_REFERENCE: return "VK_DYNAMIC_STATE_STENCIL_REFERENCE"; 935 case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV: return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV"; 936 case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT: return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT"; 937 case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT: return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT"; 938 default: return DE_NULL; 939 } 940} 941 942const char* getFilterName (VkFilter value) 943{ 944 switch (value) 945 { 946 case VK_FILTER_NEAREST: return "VK_FILTER_NEAREST"; 947 case VK_FILTER_LINEAR: return "VK_FILTER_LINEAR"; 948 case VK_FILTER_CUBIC_IMG: return "VK_FILTER_CUBIC_IMG"; 949 default: return DE_NULL; 950 } 951} 952 953const char* getSamplerMipmapModeName (VkSamplerMipmapMode value) 954{ 955 switch (value) 956 { 957 case VK_SAMPLER_MIPMAP_MODE_NEAREST: return "VK_SAMPLER_MIPMAP_MODE_NEAREST"; 958 case VK_SAMPLER_MIPMAP_MODE_LINEAR: return "VK_SAMPLER_MIPMAP_MODE_LINEAR"; 959 default: return DE_NULL; 960 } 961} 962 963const char* getSamplerAddressModeName (VkSamplerAddressMode value) 964{ 965 switch (value) 966 { 967 case VK_SAMPLER_ADDRESS_MODE_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_REPEAT"; 968 case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT"; 969 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE"; 970 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER"; 971 case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"; 972 default: return DE_NULL; 973 } 974} 975 976const char* getBorderColorName (VkBorderColor value) 977{ 978 switch (value) 979 { 980 case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK"; 981 case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK"; 982 case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK: return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK"; 983 case VK_BORDER_COLOR_INT_OPAQUE_BLACK: return "VK_BORDER_COLOR_INT_OPAQUE_BLACK"; 984 case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE: return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE"; 985 case VK_BORDER_COLOR_INT_OPAQUE_WHITE: return "VK_BORDER_COLOR_INT_OPAQUE_WHITE"; 986 default: return DE_NULL; 987 } 988} 989 990const char* getDescriptorTypeName (VkDescriptorType value) 991{ 992 switch (value) 993 { 994 case VK_DESCRIPTOR_TYPE_SAMPLER: return "VK_DESCRIPTOR_TYPE_SAMPLER"; 995 case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER: return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"; 996 case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE: return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"; 997 case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE: return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"; 998 case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"; 999 case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"; 1000 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"; 1001 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"; 1002 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"; 1003 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"; 1004 case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT: return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"; 1005 case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT: return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT"; 1006 default: return DE_NULL; 1007 } 1008} 1009 1010const char* getAttachmentLoadOpName (VkAttachmentLoadOp value) 1011{ 1012 switch (value) 1013 { 1014 case VK_ATTACHMENT_LOAD_OP_LOAD: return "VK_ATTACHMENT_LOAD_OP_LOAD"; 1015 case VK_ATTACHMENT_LOAD_OP_CLEAR: return "VK_ATTACHMENT_LOAD_OP_CLEAR"; 1016 case VK_ATTACHMENT_LOAD_OP_DONT_CARE: return "VK_ATTACHMENT_LOAD_OP_DONT_CARE"; 1017 default: return DE_NULL; 1018 } 1019} 1020 1021const char* getAttachmentStoreOpName (VkAttachmentStoreOp value) 1022{ 1023 switch (value) 1024 { 1025 case VK_ATTACHMENT_STORE_OP_STORE: return "VK_ATTACHMENT_STORE_OP_STORE"; 1026 case VK_ATTACHMENT_STORE_OP_DONT_CARE: return "VK_ATTACHMENT_STORE_OP_DONT_CARE"; 1027 default: return DE_NULL; 1028 } 1029} 1030 1031const char* getPipelineBindPointName (VkPipelineBindPoint value) 1032{ 1033 switch (value) 1034 { 1035 case VK_PIPELINE_BIND_POINT_GRAPHICS: return "VK_PIPELINE_BIND_POINT_GRAPHICS"; 1036 case VK_PIPELINE_BIND_POINT_COMPUTE: return "VK_PIPELINE_BIND_POINT_COMPUTE"; 1037 default: return DE_NULL; 1038 } 1039} 1040 1041const char* getCommandBufferLevelName (VkCommandBufferLevel value) 1042{ 1043 switch (value) 1044 { 1045 case VK_COMMAND_BUFFER_LEVEL_PRIMARY: return "VK_COMMAND_BUFFER_LEVEL_PRIMARY"; 1046 case VK_COMMAND_BUFFER_LEVEL_SECONDARY: return "VK_COMMAND_BUFFER_LEVEL_SECONDARY"; 1047 default: return DE_NULL; 1048 } 1049} 1050 1051const char* getIndexTypeName (VkIndexType value) 1052{ 1053 switch (value) 1054 { 1055 case VK_INDEX_TYPE_UINT16: return "VK_INDEX_TYPE_UINT16"; 1056 case VK_INDEX_TYPE_UINT32: return "VK_INDEX_TYPE_UINT32"; 1057 default: return DE_NULL; 1058 } 1059} 1060 1061const char* getSubpassContentsName (VkSubpassContents value) 1062{ 1063 switch (value) 1064 { 1065 case VK_SUBPASS_CONTENTS_INLINE: return "VK_SUBPASS_CONTENTS_INLINE"; 1066 case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS: return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"; 1067 default: return DE_NULL; 1068 } 1069} 1070 1071const char* getObjectTypeName (VkObjectType value) 1072{ 1073 switch (value) 1074 { 1075 case VK_OBJECT_TYPE_UNKNOWN: return "VK_OBJECT_TYPE_UNKNOWN"; 1076 case VK_OBJECT_TYPE_INSTANCE: return "VK_OBJECT_TYPE_INSTANCE"; 1077 case VK_OBJECT_TYPE_PHYSICAL_DEVICE: return "VK_OBJECT_TYPE_PHYSICAL_DEVICE"; 1078 case VK_OBJECT_TYPE_DEVICE: return "VK_OBJECT_TYPE_DEVICE"; 1079 case VK_OBJECT_TYPE_QUEUE: return "VK_OBJECT_TYPE_QUEUE"; 1080 case VK_OBJECT_TYPE_SEMAPHORE: return "VK_OBJECT_TYPE_SEMAPHORE"; 1081 case VK_OBJECT_TYPE_COMMAND_BUFFER: return "VK_OBJECT_TYPE_COMMAND_BUFFER"; 1082 case VK_OBJECT_TYPE_FENCE: return "VK_OBJECT_TYPE_FENCE"; 1083 case VK_OBJECT_TYPE_DEVICE_MEMORY: return "VK_OBJECT_TYPE_DEVICE_MEMORY"; 1084 case VK_OBJECT_TYPE_BUFFER: return "VK_OBJECT_TYPE_BUFFER"; 1085 case VK_OBJECT_TYPE_IMAGE: return "VK_OBJECT_TYPE_IMAGE"; 1086 case VK_OBJECT_TYPE_EVENT: return "VK_OBJECT_TYPE_EVENT"; 1087 case VK_OBJECT_TYPE_QUERY_POOL: return "VK_OBJECT_TYPE_QUERY_POOL"; 1088 case VK_OBJECT_TYPE_BUFFER_VIEW: return "VK_OBJECT_TYPE_BUFFER_VIEW"; 1089 case VK_OBJECT_TYPE_IMAGE_VIEW: return "VK_OBJECT_TYPE_IMAGE_VIEW"; 1090 case VK_OBJECT_TYPE_SHADER_MODULE: return "VK_OBJECT_TYPE_SHADER_MODULE"; 1091 case VK_OBJECT_TYPE_PIPELINE_CACHE: return "VK_OBJECT_TYPE_PIPELINE_CACHE"; 1092 case VK_OBJECT_TYPE_PIPELINE_LAYOUT: return "VK_OBJECT_TYPE_PIPELINE_LAYOUT"; 1093 case VK_OBJECT_TYPE_RENDER_PASS: return "VK_OBJECT_TYPE_RENDER_PASS"; 1094 case VK_OBJECT_TYPE_PIPELINE: return "VK_OBJECT_TYPE_PIPELINE"; 1095 case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT: return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"; 1096 case VK_OBJECT_TYPE_SAMPLER: return "VK_OBJECT_TYPE_SAMPLER"; 1097 case VK_OBJECT_TYPE_DESCRIPTOR_POOL: return "VK_OBJECT_TYPE_DESCRIPTOR_POOL"; 1098 case VK_OBJECT_TYPE_DESCRIPTOR_SET: return "VK_OBJECT_TYPE_DESCRIPTOR_SET"; 1099 case VK_OBJECT_TYPE_FRAMEBUFFER: return "VK_OBJECT_TYPE_FRAMEBUFFER"; 1100 case VK_OBJECT_TYPE_COMMAND_POOL: return "VK_OBJECT_TYPE_COMMAND_POOL"; 1101 case VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION: return "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"; 1102 case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE: return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE"; 1103 case VK_OBJECT_TYPE_SURFACE_KHR: return "VK_OBJECT_TYPE_SURFACE_KHR"; 1104 case VK_OBJECT_TYPE_SWAPCHAIN_KHR: return "VK_OBJECT_TYPE_SWAPCHAIN_KHR"; 1105 case VK_OBJECT_TYPE_DISPLAY_KHR: return "VK_OBJECT_TYPE_DISPLAY_KHR"; 1106 case VK_OBJECT_TYPE_DISPLAY_MODE_KHR: return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"; 1107 case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT: return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"; 1108 case VK_OBJECT_TYPE_OBJECT_TABLE_NVX: return "VK_OBJECT_TYPE_OBJECT_TABLE_NVX"; 1109 case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX: return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX"; 1110 case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT: return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"; 1111 default: return DE_NULL; 1112 } 1113} 1114 1115const char* getPointClippingBehaviorName (VkPointClippingBehavior value) 1116{ 1117 switch (value) 1118 { 1119 case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES: return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES"; 1120 case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY: return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY"; 1121 default: return DE_NULL; 1122 } 1123} 1124 1125const char* getTessellationDomainOriginName (VkTessellationDomainOrigin value) 1126{ 1127 switch (value) 1128 { 1129 case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT: return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT"; 1130 case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT: return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT"; 1131 default: return DE_NULL; 1132 } 1133} 1134 1135const char* getSamplerYcbcrModelConversionName (VkSamplerYcbcrModelConversion value) 1136{ 1137 switch (value) 1138 { 1139 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY"; 1140 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY"; 1141 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709"; 1142 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601"; 1143 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020"; 1144 default: return DE_NULL; 1145 } 1146} 1147 1148const char* getSamplerYcbcrRangeName (VkSamplerYcbcrRange value) 1149{ 1150 switch (value) 1151 { 1152 case VK_SAMPLER_YCBCR_RANGE_ITU_FULL: return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL"; 1153 case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW: return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW"; 1154 default: return DE_NULL; 1155 } 1156} 1157 1158const char* getChromaLocationName (VkChromaLocation value) 1159{ 1160 switch (value) 1161 { 1162 case VK_CHROMA_LOCATION_COSITED_EVEN: return "VK_CHROMA_LOCATION_COSITED_EVEN"; 1163 case VK_CHROMA_LOCATION_MIDPOINT: return "VK_CHROMA_LOCATION_MIDPOINT"; 1164 default: return DE_NULL; 1165 } 1166} 1167 1168const char* getDescriptorUpdateTemplateTypeName (VkDescriptorUpdateTemplateType value) 1169{ 1170 switch (value) 1171 { 1172 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET"; 1173 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR"; 1174 default: return DE_NULL; 1175 } 1176} 1177 1178const char* getColorSpaceKHRName (VkColorSpaceKHR value) 1179{ 1180 switch (value) 1181 { 1182 case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR: return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR"; 1183 case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT"; 1184 case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT: return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT"; 1185 case VK_COLOR_SPACE_DCI_P3_LINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_LINEAR_EXT"; 1186 case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT"; 1187 case VK_COLOR_SPACE_BT709_LINEAR_EXT: return "VK_COLOR_SPACE_BT709_LINEAR_EXT"; 1188 case VK_COLOR_SPACE_BT709_NONLINEAR_EXT: return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT"; 1189 case VK_COLOR_SPACE_BT2020_LINEAR_EXT: return "VK_COLOR_SPACE_BT2020_LINEAR_EXT"; 1190 case VK_COLOR_SPACE_HDR10_ST2084_EXT: return "VK_COLOR_SPACE_HDR10_ST2084_EXT"; 1191 case VK_COLOR_SPACE_DOLBYVISION_EXT: return "VK_COLOR_SPACE_DOLBYVISION_EXT"; 1192 case VK_COLOR_SPACE_HDR10_HLG_EXT: return "VK_COLOR_SPACE_HDR10_HLG_EXT"; 1193 case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT"; 1194 case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT"; 1195 case VK_COLOR_SPACE_PASS_THROUGH_EXT: return "VK_COLOR_SPACE_PASS_THROUGH_EXT"; 1196 case VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT: return "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT"; 1197 default: return DE_NULL; 1198 } 1199} 1200 1201const char* getPresentModeKHRName (VkPresentModeKHR value) 1202{ 1203 switch (value) 1204 { 1205 case VK_PRESENT_MODE_IMMEDIATE_KHR: return "VK_PRESENT_MODE_IMMEDIATE_KHR"; 1206 case VK_PRESENT_MODE_MAILBOX_KHR: return "VK_PRESENT_MODE_MAILBOX_KHR"; 1207 case VK_PRESENT_MODE_FIFO_KHR: return "VK_PRESENT_MODE_FIFO_KHR"; 1208 case VK_PRESENT_MODE_FIFO_RELAXED_KHR: return "VK_PRESENT_MODE_FIFO_RELAXED_KHR"; 1209 case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR"; 1210 case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR"; 1211 default: return DE_NULL; 1212 } 1213} 1214 1215const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value) 1216{ 1217 switch (value) 1218 { 1219 case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT"; 1220 case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT"; 1221 case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT"; 1222 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT"; 1223 case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT"; 1224 case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT"; 1225 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT"; 1226 case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT"; 1227 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT"; 1228 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT"; 1229 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT"; 1230 case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT"; 1231 case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT"; 1232 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT"; 1233 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT"; 1234 case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT"; 1235 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT"; 1236 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT"; 1237 case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT"; 1238 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT"; 1239 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT"; 1240 case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT"; 1241 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT"; 1242 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT"; 1243 case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT"; 1244 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT"; 1245 case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT"; 1246 case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT"; 1247 case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT"; 1248 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT"; 1249 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT"; 1250 case VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_OBJECT_TABLE_NVX_EXT"; 1251 case VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX_EXT"; 1252 case VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT"; 1253 case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT"; 1254 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT"; 1255 default: return DE_NULL; 1256 } 1257} 1258 1259const char* getRasterizationOrderAMDName (VkRasterizationOrderAMD value) 1260{ 1261 switch (value) 1262 { 1263 case VK_RASTERIZATION_ORDER_STRICT_AMD: return "VK_RASTERIZATION_ORDER_STRICT_AMD"; 1264 case VK_RASTERIZATION_ORDER_RELAXED_AMD: return "VK_RASTERIZATION_ORDER_RELAXED_AMD"; 1265 default: return DE_NULL; 1266 } 1267} 1268 1269const char* getValidationCheckEXTName (VkValidationCheckEXT value) 1270{ 1271 switch (value) 1272 { 1273 case VK_VALIDATION_CHECK_ALL_EXT: return "VK_VALIDATION_CHECK_ALL_EXT"; 1274 case VK_VALIDATION_CHECK_SHADERS_EXT: return "VK_VALIDATION_CHECK_SHADERS_EXT"; 1275 default: return DE_NULL; 1276 } 1277} 1278 1279const char* getIndirectCommandsTokenTypeNVXName (VkIndirectCommandsTokenTypeNVX value) 1280{ 1281 switch (value) 1282 { 1283 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NVX"; 1284 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DESCRIPTOR_SET_NVX"; 1285 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NVX"; 1286 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NVX"; 1287 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX"; 1288 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NVX"; 1289 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NVX"; 1290 case VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX: return "VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NVX"; 1291 default: return DE_NULL; 1292 } 1293} 1294 1295const char* getObjectEntryTypeNVXName (VkObjectEntryTypeNVX value) 1296{ 1297 switch (value) 1298 { 1299 case VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX: return "VK_OBJECT_ENTRY_TYPE_DESCRIPTOR_SET_NVX"; 1300 case VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX: return "VK_OBJECT_ENTRY_TYPE_PIPELINE_NVX"; 1301 case VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX: return "VK_OBJECT_ENTRY_TYPE_INDEX_BUFFER_NVX"; 1302 case VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX: return "VK_OBJECT_ENTRY_TYPE_VERTEX_BUFFER_NVX"; 1303 case VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX: return "VK_OBJECT_ENTRY_TYPE_PUSH_CONSTANT_NVX"; 1304 default: return DE_NULL; 1305 } 1306} 1307 1308const char* getDisplayPowerStateEXTName (VkDisplayPowerStateEXT value) 1309{ 1310 switch (value) 1311 { 1312 case VK_DISPLAY_POWER_STATE_OFF_EXT: return "VK_DISPLAY_POWER_STATE_OFF_EXT"; 1313 case VK_DISPLAY_POWER_STATE_SUSPEND_EXT: return "VK_DISPLAY_POWER_STATE_SUSPEND_EXT"; 1314 case VK_DISPLAY_POWER_STATE_ON_EXT: return "VK_DISPLAY_POWER_STATE_ON_EXT"; 1315 default: return DE_NULL; 1316 } 1317} 1318 1319const char* getDeviceEventTypeEXTName (VkDeviceEventTypeEXT value) 1320{ 1321 switch (value) 1322 { 1323 case VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT: return "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT"; 1324 default: return DE_NULL; 1325 } 1326} 1327 1328const char* getDisplayEventTypeEXTName (VkDisplayEventTypeEXT value) 1329{ 1330 switch (value) 1331 { 1332 case VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT: return "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT"; 1333 default: return DE_NULL; 1334 } 1335} 1336 1337const char* getViewportCoordinateSwizzleNVName (VkViewportCoordinateSwizzleNV value) 1338{ 1339 switch (value) 1340 { 1341 case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV"; 1342 case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV"; 1343 case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV"; 1344 case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV"; 1345 case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV"; 1346 case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV"; 1347 case VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV"; 1348 case VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV: return "VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV"; 1349 default: return DE_NULL; 1350 } 1351} 1352 1353const char* getDiscardRectangleModeEXTName (VkDiscardRectangleModeEXT value) 1354{ 1355 switch (value) 1356 { 1357 case VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT: return "VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT"; 1358 case VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT: return "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT"; 1359 default: return DE_NULL; 1360 } 1361} 1362 1363const char* getSamplerReductionModeEXTName (VkSamplerReductionModeEXT value) 1364{ 1365 switch (value) 1366 { 1367 case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT: return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT"; 1368 case VK_SAMPLER_REDUCTION_MODE_MIN_EXT: return "VK_SAMPLER_REDUCTION_MODE_MIN_EXT"; 1369 case VK_SAMPLER_REDUCTION_MODE_MAX_EXT: return "VK_SAMPLER_REDUCTION_MODE_MAX_EXT"; 1370 default: return DE_NULL; 1371 } 1372} 1373 1374const char* getBlendOverlapEXTName (VkBlendOverlapEXT value) 1375{ 1376 switch (value) 1377 { 1378 case VK_BLEND_OVERLAP_UNCORRELATED_EXT: return "VK_BLEND_OVERLAP_UNCORRELATED_EXT"; 1379 case VK_BLEND_OVERLAP_DISJOINT_EXT: return "VK_BLEND_OVERLAP_DISJOINT_EXT"; 1380 case VK_BLEND_OVERLAP_CONJOINT_EXT: return "VK_BLEND_OVERLAP_CONJOINT_EXT"; 1381 default: return DE_NULL; 1382 } 1383} 1384 1385const char* getCoverageModulationModeNVName (VkCoverageModulationModeNV value) 1386{ 1387 switch (value) 1388 { 1389 case VK_COVERAGE_MODULATION_MODE_NONE_NV: return "VK_COVERAGE_MODULATION_MODE_NONE_NV"; 1390 case VK_COVERAGE_MODULATION_MODE_RGB_NV: return "VK_COVERAGE_MODULATION_MODE_RGB_NV"; 1391 case VK_COVERAGE_MODULATION_MODE_ALPHA_NV: return "VK_COVERAGE_MODULATION_MODE_ALPHA_NV"; 1392 case VK_COVERAGE_MODULATION_MODE_RGBA_NV: return "VK_COVERAGE_MODULATION_MODE_RGBA_NV"; 1393 default: return DE_NULL; 1394 } 1395} 1396 1397const char* getValidationCacheHeaderVersionEXTName (VkValidationCacheHeaderVersionEXT value) 1398{ 1399 switch (value) 1400 { 1401 case VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT: return "VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT"; 1402 default: return DE_NULL; 1403 } 1404} 1405 1406tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value) 1407{ 1408 static const tcu::Format::BitDesc s_desc[] = 1409 { 1410 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"), 1411 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"), 1412 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"), 1413 tcu::Format::BitDesc(VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"), 1414 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"), 1415 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"), 1416 tcu::Format::BitDesc(VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"), 1417 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"), 1418 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"), 1419 tcu::Format::BitDesc(VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"), 1420 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_SRC_BIT, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"), 1421 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_DST_BIT, "VK_FORMAT_FEATURE_BLIT_DST_BIT"), 1422 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"), 1423 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT"), 1424 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT"), 1425 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT"), 1426 tcu::Format::BitDesc(VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT, "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT"), 1427 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT"), 1428 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT"), 1429 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT"), 1430 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT"), 1431 tcu::Format::BitDesc(VK_FORMAT_FEATURE_DISJOINT_BIT, "VK_FORMAT_FEATURE_DISJOINT_BIT"), 1432 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT, "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"), 1433 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"), 1434 }; 1435 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1436} 1437 1438tcu::Format::Bitfield<32> getImageUsageFlagsStr (VkImageUsageFlags value) 1439{ 1440 static const tcu::Format::BitDesc s_desc[] = 1441 { 1442 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_SRC_BIT, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"), 1443 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_DST_BIT, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"), 1444 tcu::Format::BitDesc(VK_IMAGE_USAGE_SAMPLED_BIT, "VK_IMAGE_USAGE_SAMPLED_BIT"), 1445 tcu::Format::BitDesc(VK_IMAGE_USAGE_STORAGE_BIT, "VK_IMAGE_USAGE_STORAGE_BIT"), 1446 tcu::Format::BitDesc(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"), 1447 tcu::Format::BitDesc(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"), 1448 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"), 1449 tcu::Format::BitDesc(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"), 1450 }; 1451 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1452} 1453 1454tcu::Format::Bitfield<32> getImageCreateFlagsStr (VkImageCreateFlags value) 1455{ 1456 static const tcu::Format::BitDesc s_desc[] = 1457 { 1458 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_BINDING_BIT, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"), 1459 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"), 1460 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"), 1461 tcu::Format::BitDesc(VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"), 1462 tcu::Format::BitDesc(VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"), 1463 tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT, "VK_IMAGE_CREATE_ALIAS_BIT"), 1464 tcu::Format::BitDesc(VK_IMAGE_CREATE_BIND_SFR_BIT, "VK_IMAGE_CREATE_BIND_SFR_BIT"), 1465 tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"), 1466 tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT, "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"), 1467 tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT, "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"), 1468 tcu::Format::BitDesc(VK_IMAGE_CREATE_PROTECTED_BIT, "VK_IMAGE_CREATE_PROTECTED_BIT"), 1469 tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT, "VK_IMAGE_CREATE_DISJOINT_BIT"), 1470 tcu::Format::BitDesc(VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT, "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"), 1471 }; 1472 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1473} 1474 1475tcu::Format::Bitfield<32> getSampleCountFlagsStr (VkSampleCountFlags value) 1476{ 1477 static const tcu::Format::BitDesc s_desc[] = 1478 { 1479 tcu::Format::BitDesc(VK_SAMPLE_COUNT_1_BIT, "VK_SAMPLE_COUNT_1_BIT"), 1480 tcu::Format::BitDesc(VK_SAMPLE_COUNT_2_BIT, "VK_SAMPLE_COUNT_2_BIT"), 1481 tcu::Format::BitDesc(VK_SAMPLE_COUNT_4_BIT, "VK_SAMPLE_COUNT_4_BIT"), 1482 tcu::Format::BitDesc(VK_SAMPLE_COUNT_8_BIT, "VK_SAMPLE_COUNT_8_BIT"), 1483 tcu::Format::BitDesc(VK_SAMPLE_COUNT_16_BIT, "VK_SAMPLE_COUNT_16_BIT"), 1484 tcu::Format::BitDesc(VK_SAMPLE_COUNT_32_BIT, "VK_SAMPLE_COUNT_32_BIT"), 1485 tcu::Format::BitDesc(VK_SAMPLE_COUNT_64_BIT, "VK_SAMPLE_COUNT_64_BIT"), 1486 }; 1487 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1488} 1489 1490tcu::Format::Bitfield<32> getQueueFlagsStr (VkQueueFlags value) 1491{ 1492 static const tcu::Format::BitDesc s_desc[] = 1493 { 1494 tcu::Format::BitDesc(VK_QUEUE_GRAPHICS_BIT, "VK_QUEUE_GRAPHICS_BIT"), 1495 tcu::Format::BitDesc(VK_QUEUE_COMPUTE_BIT, "VK_QUEUE_COMPUTE_BIT"), 1496 tcu::Format::BitDesc(VK_QUEUE_TRANSFER_BIT, "VK_QUEUE_TRANSFER_BIT"), 1497 tcu::Format::BitDesc(VK_QUEUE_SPARSE_BINDING_BIT, "VK_QUEUE_SPARSE_BINDING_BIT"), 1498 tcu::Format::BitDesc(VK_QUEUE_PROTECTED_BIT, "VK_QUEUE_PROTECTED_BIT"), 1499 }; 1500 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1501} 1502 1503tcu::Format::Bitfield<32> getMemoryPropertyFlagsStr (VkMemoryPropertyFlags value) 1504{ 1505 static const tcu::Format::BitDesc s_desc[] = 1506 { 1507 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"), 1508 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"), 1509 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"), 1510 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_CACHED_BIT, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"), 1511 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"), 1512 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_PROTECTED_BIT, "VK_MEMORY_PROPERTY_PROTECTED_BIT"), 1513 }; 1514 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1515} 1516 1517tcu::Format::Bitfield<32> getMemoryHeapFlagsStr (VkMemoryHeapFlags value) 1518{ 1519 static const tcu::Format::BitDesc s_desc[] = 1520 { 1521 tcu::Format::BitDesc(VK_MEMORY_HEAP_DEVICE_LOCAL_BIT, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"), 1522 tcu::Format::BitDesc(VK_MEMORY_HEAP_MULTI_INSTANCE_BIT, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT"), 1523 }; 1524 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1525} 1526 1527tcu::Format::Bitfield<32> getDeviceQueueCreateFlagsStr (VkDeviceQueueCreateFlags value) 1528{ 1529 static const tcu::Format::BitDesc s_desc[] = 1530 { 1531 tcu::Format::BitDesc(VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT, "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT"), 1532 }; 1533 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1534} 1535 1536tcu::Format::Bitfield<32> getPipelineStageFlagsStr (VkPipelineStageFlags value) 1537{ 1538 static const tcu::Format::BitDesc s_desc[] = 1539 { 1540 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"), 1541 tcu::Format::BitDesc(VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"), 1542 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"), 1543 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_SHADER_BIT, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"), 1544 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"), 1545 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"), 1546 tcu::Format::BitDesc(VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"), 1547 tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"), 1548 tcu::Format::BitDesc(VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"), 1549 tcu::Format::BitDesc(VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"), 1550 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"), 1551 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"), 1552 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TRANSFER_BIT, "VK_PIPELINE_STAGE_TRANSFER_BIT"), 1553 tcu::Format::BitDesc(VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"), 1554 tcu::Format::BitDesc(VK_PIPELINE_STAGE_HOST_BIT, "VK_PIPELINE_STAGE_HOST_BIT"), 1555 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"), 1556 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"), 1557 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX, "VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX"), 1558 tcu::Format::BitDesc(VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT, "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"), 1559 }; 1560 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1561} 1562 1563tcu::Format::Bitfield<32> getImageAspectFlagsStr (VkImageAspectFlags value) 1564{ 1565 static const tcu::Format::BitDesc s_desc[] = 1566 { 1567 tcu::Format::BitDesc(VK_IMAGE_ASPECT_COLOR_BIT, "VK_IMAGE_ASPECT_COLOR_BIT"), 1568 tcu::Format::BitDesc(VK_IMAGE_ASPECT_DEPTH_BIT, "VK_IMAGE_ASPECT_DEPTH_BIT"), 1569 tcu::Format::BitDesc(VK_IMAGE_ASPECT_STENCIL_BIT, "VK_IMAGE_ASPECT_STENCIL_BIT"), 1570 tcu::Format::BitDesc(VK_IMAGE_ASPECT_METADATA_BIT, "VK_IMAGE_ASPECT_METADATA_BIT"), 1571 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_0_BIT, "VK_IMAGE_ASPECT_PLANE_0_BIT"), 1572 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_1_BIT, "VK_IMAGE_ASPECT_PLANE_1_BIT"), 1573 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_2_BIT, "VK_IMAGE_ASPECT_PLANE_2_BIT"), 1574 }; 1575 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1576} 1577 1578tcu::Format::Bitfield<32> getSparseImageFormatFlagsStr (VkSparseImageFormatFlags value) 1579{ 1580 static const tcu::Format::BitDesc s_desc[] = 1581 { 1582 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT"), 1583 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT"), 1584 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT"), 1585 }; 1586 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1587} 1588 1589tcu::Format::Bitfield<32> getSparseMemoryBindFlagsStr (VkSparseMemoryBindFlags value) 1590{ 1591 static const tcu::Format::BitDesc s_desc[] = 1592 { 1593 tcu::Format::BitDesc(VK_SPARSE_MEMORY_BIND_METADATA_BIT, "VK_SPARSE_MEMORY_BIND_METADATA_BIT"), 1594 }; 1595 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1596} 1597 1598tcu::Format::Bitfield<32> getFenceCreateFlagsStr (VkFenceCreateFlags value) 1599{ 1600 static const tcu::Format::BitDesc s_desc[] = 1601 { 1602 tcu::Format::BitDesc(VK_FENCE_CREATE_SIGNALED_BIT, "VK_FENCE_CREATE_SIGNALED_BIT"), 1603 }; 1604 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1605} 1606 1607tcu::Format::Bitfield<32> getQueryPipelineStatisticFlagsStr (VkQueryPipelineStatisticFlags value) 1608{ 1609 static const tcu::Format::BitDesc s_desc[] = 1610 { 1611 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"), 1612 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"), 1613 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"), 1614 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"), 1615 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"), 1616 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"), 1617 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"), 1618 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"), 1619 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"), 1620 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"), 1621 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"), 1622 }; 1623 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1624} 1625 1626tcu::Format::Bitfield<32> getQueryResultFlagsStr (VkQueryResultFlags value) 1627{ 1628 static const tcu::Format::BitDesc s_desc[] = 1629 { 1630 tcu::Format::BitDesc(VK_QUERY_RESULT_64_BIT, "VK_QUERY_RESULT_64_BIT"), 1631 tcu::Format::BitDesc(VK_QUERY_RESULT_WAIT_BIT, "VK_QUERY_RESULT_WAIT_BIT"), 1632 tcu::Format::BitDesc(VK_QUERY_RESULT_WITH_AVAILABILITY_BIT, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"), 1633 tcu::Format::BitDesc(VK_QUERY_RESULT_PARTIAL_BIT, "VK_QUERY_RESULT_PARTIAL_BIT"), 1634 }; 1635 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1636} 1637 1638tcu::Format::Bitfield<32> getBufferCreateFlagsStr (VkBufferCreateFlags value) 1639{ 1640 static const tcu::Format::BitDesc s_desc[] = 1641 { 1642 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_BINDING_BIT, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"), 1643 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"), 1644 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"), 1645 tcu::Format::BitDesc(VK_BUFFER_CREATE_PROTECTED_BIT, "VK_BUFFER_CREATE_PROTECTED_BIT"), 1646 }; 1647 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1648} 1649 1650tcu::Format::Bitfield<32> getBufferUsageFlagsStr (VkBufferUsageFlags value) 1651{ 1652 static const tcu::Format::BitDesc s_desc[] = 1653 { 1654 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_SRC_BIT, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"), 1655 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_DST_BIT, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"), 1656 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"), 1657 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"), 1658 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"), 1659 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"), 1660 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDEX_BUFFER_BIT, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"), 1661 tcu::Format::BitDesc(VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"), 1662 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"), 1663 tcu::Format::BitDesc(VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT, "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT"), 1664 }; 1665 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1666} 1667 1668tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value) 1669{ 1670 static const tcu::Format::BitDesc s_desc[] = 1671 { 1672 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"), 1673 tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT, "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"), 1674 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT, "VK_PIPELINE_CREATE_DERIVATIVE_BIT"), 1675 tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"), 1676 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE, "VK_PIPELINE_CREATE_DISPATCH_BASE"), 1677 }; 1678 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1679} 1680 1681tcu::Format::Bitfield<32> getShaderStageFlagsStr (VkShaderStageFlags value) 1682{ 1683 static const tcu::Format::BitDesc s_desc[] = 1684 { 1685 tcu::Format::BitDesc(VK_SHADER_STAGE_VERTEX_BIT, "VK_SHADER_STAGE_VERTEX_BIT"), 1686 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"), 1687 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"), 1688 tcu::Format::BitDesc(VK_SHADER_STAGE_GEOMETRY_BIT, "VK_SHADER_STAGE_GEOMETRY_BIT"), 1689 tcu::Format::BitDesc(VK_SHADER_STAGE_FRAGMENT_BIT, "VK_SHADER_STAGE_FRAGMENT_BIT"), 1690 tcu::Format::BitDesc(VK_SHADER_STAGE_COMPUTE_BIT, "VK_SHADER_STAGE_COMPUTE_BIT"), 1691 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL_GRAPHICS, "VK_SHADER_STAGE_ALL_GRAPHICS"), 1692 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL, "VK_SHADER_STAGE_ALL"), 1693 }; 1694 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1695} 1696 1697tcu::Format::Bitfield<32> getCullModeFlagsStr (VkCullModeFlags value) 1698{ 1699 static const tcu::Format::BitDesc s_desc[] = 1700 { 1701 tcu::Format::BitDesc(VK_CULL_MODE_NONE, "VK_CULL_MODE_NONE"), 1702 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_BIT, "VK_CULL_MODE_FRONT_BIT"), 1703 tcu::Format::BitDesc(VK_CULL_MODE_BACK_BIT, "VK_CULL_MODE_BACK_BIT"), 1704 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_AND_BACK, "VK_CULL_MODE_FRONT_AND_BACK"), 1705 }; 1706 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1707} 1708 1709tcu::Format::Bitfield<32> getColorComponentFlagsStr (VkColorComponentFlags value) 1710{ 1711 static const tcu::Format::BitDesc s_desc[] = 1712 { 1713 tcu::Format::BitDesc(VK_COLOR_COMPONENT_R_BIT, "VK_COLOR_COMPONENT_R_BIT"), 1714 tcu::Format::BitDesc(VK_COLOR_COMPONENT_G_BIT, "VK_COLOR_COMPONENT_G_BIT"), 1715 tcu::Format::BitDesc(VK_COLOR_COMPONENT_B_BIT, "VK_COLOR_COMPONENT_B_BIT"), 1716 tcu::Format::BitDesc(VK_COLOR_COMPONENT_A_BIT, "VK_COLOR_COMPONENT_A_BIT"), 1717 }; 1718 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1719} 1720 1721tcu::Format::Bitfield<32> getDescriptorSetLayoutCreateFlagsStr (VkDescriptorSetLayoutCreateFlags value) 1722{ 1723 static const tcu::Format::BitDesc s_desc[] = 1724 { 1725 tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"), 1726 tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT"), 1727 }; 1728 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1729} 1730 1731tcu::Format::Bitfield<32> getDescriptorPoolCreateFlagsStr (VkDescriptorPoolCreateFlags value) 1732{ 1733 static const tcu::Format::BitDesc s_desc[] = 1734 { 1735 tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"), 1736 tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT"), 1737 }; 1738 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1739} 1740 1741tcu::Format::Bitfield<32> getAttachmentDescriptionFlagsStr (VkAttachmentDescriptionFlags value) 1742{ 1743 static const tcu::Format::BitDesc s_desc[] = 1744 { 1745 tcu::Format::BitDesc(VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"), 1746 }; 1747 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1748} 1749 1750tcu::Format::Bitfield<32> getSubpassDescriptionFlagsStr (VkSubpassDescriptionFlags value) 1751{ 1752 static const tcu::Format::BitDesc s_desc[] = 1753 { 1754 tcu::Format::BitDesc(VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX, "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX"), 1755 tcu::Format::BitDesc(VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX, "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX"), 1756 }; 1757 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1758} 1759 1760tcu::Format::Bitfield<32> getAccessFlagsStr (VkAccessFlags value) 1761{ 1762 static const tcu::Format::BitDesc s_desc[] = 1763 { 1764 tcu::Format::BitDesc(VK_ACCESS_INDIRECT_COMMAND_READ_BIT, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"), 1765 tcu::Format::BitDesc(VK_ACCESS_INDEX_READ_BIT, "VK_ACCESS_INDEX_READ_BIT"), 1766 tcu::Format::BitDesc(VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"), 1767 tcu::Format::BitDesc(VK_ACCESS_UNIFORM_READ_BIT, "VK_ACCESS_UNIFORM_READ_BIT"), 1768 tcu::Format::BitDesc(VK_ACCESS_INPUT_ATTACHMENT_READ_BIT, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"), 1769 tcu::Format::BitDesc(VK_ACCESS_SHADER_READ_BIT, "VK_ACCESS_SHADER_READ_BIT"), 1770 tcu::Format::BitDesc(VK_ACCESS_SHADER_WRITE_BIT, "VK_ACCESS_SHADER_WRITE_BIT"), 1771 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_READ_BIT, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"), 1772 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"), 1773 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"), 1774 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"), 1775 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_READ_BIT, "VK_ACCESS_TRANSFER_READ_BIT"), 1776 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_WRITE_BIT, "VK_ACCESS_TRANSFER_WRITE_BIT"), 1777 tcu::Format::BitDesc(VK_ACCESS_HOST_READ_BIT, "VK_ACCESS_HOST_READ_BIT"), 1778 tcu::Format::BitDesc(VK_ACCESS_HOST_WRITE_BIT, "VK_ACCESS_HOST_WRITE_BIT"), 1779 tcu::Format::BitDesc(VK_ACCESS_MEMORY_READ_BIT, "VK_ACCESS_MEMORY_READ_BIT"), 1780 tcu::Format::BitDesc(VK_ACCESS_MEMORY_WRITE_BIT, "VK_ACCESS_MEMORY_WRITE_BIT"), 1781 tcu::Format::BitDesc(VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT, "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT"), 1782 tcu::Format::BitDesc(VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX, "VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX"), 1783 tcu::Format::BitDesc(VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX, "VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX"), 1784 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"), 1785 }; 1786 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1787} 1788 1789tcu::Format::Bitfield<32> getDependencyFlagsStr (VkDependencyFlags value) 1790{ 1791 static const tcu::Format::BitDesc s_desc[] = 1792 { 1793 tcu::Format::BitDesc(VK_DEPENDENCY_BY_REGION_BIT, "VK_DEPENDENCY_BY_REGION_BIT"), 1794 tcu::Format::BitDesc(VK_DEPENDENCY_DEVICE_GROUP_BIT, "VK_DEPENDENCY_DEVICE_GROUP_BIT"), 1795 tcu::Format::BitDesc(VK_DEPENDENCY_VIEW_LOCAL_BIT, "VK_DEPENDENCY_VIEW_LOCAL_BIT"), 1796 }; 1797 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1798} 1799 1800tcu::Format::Bitfield<32> getCommandPoolCreateFlagsStr (VkCommandPoolCreateFlags value) 1801{ 1802 static const tcu::Format::BitDesc s_desc[] = 1803 { 1804 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"), 1805 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"), 1806 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_PROTECTED_BIT, "VK_COMMAND_POOL_CREATE_PROTECTED_BIT"), 1807 }; 1808 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1809} 1810 1811tcu::Format::Bitfield<32> getCommandPoolResetFlagsStr (VkCommandPoolResetFlags value) 1812{ 1813 static const tcu::Format::BitDesc s_desc[] = 1814 { 1815 tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"), 1816 }; 1817 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1818} 1819 1820tcu::Format::Bitfield<32> getCommandBufferUsageFlagsStr (VkCommandBufferUsageFlags value) 1821{ 1822 static const tcu::Format::BitDesc s_desc[] = 1823 { 1824 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"), 1825 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"), 1826 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"), 1827 }; 1828 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1829} 1830 1831tcu::Format::Bitfield<32> getQueryControlFlagsStr (VkQueryControlFlags value) 1832{ 1833 static const tcu::Format::BitDesc s_desc[] = 1834 { 1835 tcu::Format::BitDesc(VK_QUERY_CONTROL_PRECISE_BIT, "VK_QUERY_CONTROL_PRECISE_BIT"), 1836 }; 1837 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1838} 1839 1840tcu::Format::Bitfield<32> getCommandBufferResetFlagsStr (VkCommandBufferResetFlags value) 1841{ 1842 static const tcu::Format::BitDesc s_desc[] = 1843 { 1844 tcu::Format::BitDesc(VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"), 1845 }; 1846 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1847} 1848 1849tcu::Format::Bitfield<32> getStencilFaceFlagsStr (VkStencilFaceFlags value) 1850{ 1851 static const tcu::Format::BitDesc s_desc[] = 1852 { 1853 tcu::Format::BitDesc(VK_STENCIL_FACE_FRONT_BIT, "VK_STENCIL_FACE_FRONT_BIT"), 1854 tcu::Format::BitDesc(VK_STENCIL_FACE_BACK_BIT, "VK_STENCIL_FACE_BACK_BIT"), 1855 tcu::Format::BitDesc(VK_STENCIL_FRONT_AND_BACK, "VK_STENCIL_FRONT_AND_BACK"), 1856 }; 1857 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1858} 1859 1860tcu::Format::Bitfield<32> getSubgroupFeatureFlagsStr (VkSubgroupFeatureFlags value) 1861{ 1862 static const tcu::Format::BitDesc s_desc[] = 1863 { 1864 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_BASIC_BIT, "VK_SUBGROUP_FEATURE_BASIC_BIT"), 1865 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_VOTE_BIT, "VK_SUBGROUP_FEATURE_VOTE_BIT"), 1866 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_ARITHMETIC_BIT, "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT"), 1867 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_BALLOT_BIT, "VK_SUBGROUP_FEATURE_BALLOT_BIT"), 1868 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_SHUFFLE_BIT, "VK_SUBGROUP_FEATURE_SHUFFLE_BIT"), 1869 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT, "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT"), 1870 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_CLUSTERED_BIT, "VK_SUBGROUP_FEATURE_CLUSTERED_BIT"), 1871 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_QUAD_BIT, "VK_SUBGROUP_FEATURE_QUAD_BIT"), 1872 tcu::Format::BitDesc(VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV, "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV"), 1873 }; 1874 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1875} 1876 1877tcu::Format::Bitfield<32> getPeerMemoryFeatureFlagsStr (VkPeerMemoryFeatureFlags value) 1878{ 1879 static const tcu::Format::BitDesc s_desc[] = 1880 { 1881 tcu::Format::BitDesc(VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT, "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT"), 1882 tcu::Format::BitDesc(VK_PEER_MEMORY_FEATURE_COPY_DST_BIT, "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT"), 1883 tcu::Format::BitDesc(VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT, "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT"), 1884 tcu::Format::BitDesc(VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT, "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT"), 1885 }; 1886 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1887} 1888 1889tcu::Format::Bitfield<32> getMemoryAllocateFlagsStr (VkMemoryAllocateFlags value) 1890{ 1891 static const tcu::Format::BitDesc s_desc[] = 1892 { 1893 tcu::Format::BitDesc(VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT, "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT"), 1894 }; 1895 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1896} 1897 1898tcu::Format::Bitfield<32> getExternalMemoryHandleTypeFlagsStr (VkExternalMemoryHandleTypeFlags value) 1899{ 1900 static const tcu::Format::BitDesc s_desc[] = 1901 { 1902 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT"), 1903 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT"), 1904 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"), 1905 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT"), 1906 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT"), 1907 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT"), 1908 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT"), 1909 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT"), 1910 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT"), 1911 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID"), 1912 }; 1913 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1914} 1915 1916tcu::Format::Bitfield<32> getExternalMemoryFeatureFlagsStr (VkExternalMemoryFeatureFlags value) 1917{ 1918 static const tcu::Format::BitDesc s_desc[] = 1919 { 1920 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT, "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT"), 1921 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT"), 1922 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT"), 1923 }; 1924 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1925} 1926 1927tcu::Format::Bitfield<32> getExternalFenceHandleTypeFlagsStr (VkExternalFenceHandleTypeFlags value) 1928{ 1929 static const tcu::Format::BitDesc s_desc[] = 1930 { 1931 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT"), 1932 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT"), 1933 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"), 1934 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT"), 1935 }; 1936 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1937} 1938 1939tcu::Format::Bitfield<32> getExternalFenceFeatureFlagsStr (VkExternalFenceFeatureFlags value) 1940{ 1941 static const tcu::Format::BitDesc s_desc[] = 1942 { 1943 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT, "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT"), 1944 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT, "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT"), 1945 }; 1946 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1947} 1948 1949tcu::Format::Bitfield<32> getFenceImportFlagsStr (VkFenceImportFlags value) 1950{ 1951 static const tcu::Format::BitDesc s_desc[] = 1952 { 1953 tcu::Format::BitDesc(VK_FENCE_IMPORT_TEMPORARY_BIT, "VK_FENCE_IMPORT_TEMPORARY_BIT"), 1954 }; 1955 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1956} 1957 1958tcu::Format::Bitfield<32> getSemaphoreImportFlagsStr (VkSemaphoreImportFlags value) 1959{ 1960 static const tcu::Format::BitDesc s_desc[] = 1961 { 1962 tcu::Format::BitDesc(VK_SEMAPHORE_IMPORT_TEMPORARY_BIT, "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT"), 1963 }; 1964 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1965} 1966 1967tcu::Format::Bitfield<32> getExternalSemaphoreHandleTypeFlagsStr (VkExternalSemaphoreHandleTypeFlags value) 1968{ 1969 static const tcu::Format::BitDesc s_desc[] = 1970 { 1971 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT"), 1972 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT"), 1973 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"), 1974 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT"), 1975 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT"), 1976 }; 1977 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1978} 1979 1980tcu::Format::Bitfield<32> getExternalSemaphoreFeatureFlagsStr (VkExternalSemaphoreFeatureFlags value) 1981{ 1982 static const tcu::Format::BitDesc s_desc[] = 1983 { 1984 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT, "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT"), 1985 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT, "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT"), 1986 }; 1987 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1988} 1989 1990tcu::Format::Bitfield<32> getSurfaceTransformFlagsKHRStr (VkSurfaceTransformFlagsKHR value) 1991{ 1992 static const tcu::Format::BitDesc s_desc[] = 1993 { 1994 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR, "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR"), 1995 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR"), 1996 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR"), 1997 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR"), 1998 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR"), 1999 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR"), 2000 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR"), 2001 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"), 2002 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR, "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"), 2003 }; 2004 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2005} 2006 2007tcu::Format::Bitfield<32> getCompositeAlphaFlagsKHRStr (VkCompositeAlphaFlagsKHR value) 2008{ 2009 static const tcu::Format::BitDesc s_desc[] = 2010 { 2011 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR"), 2012 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR"), 2013 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR"), 2014 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR, "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR"), 2015 }; 2016 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2017} 2018 2019tcu::Format::Bitfield<32> getSwapchainCreateFlagsKHRStr (VkSwapchainCreateFlagsKHR value) 2020{ 2021 static const tcu::Format::BitDesc s_desc[] = 2022 { 2023 tcu::Format::BitDesc(VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHR, "VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHR"), 2024 tcu::Format::BitDesc(VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR, "VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR"), 2025 tcu::Format::BitDesc(VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR, "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR"), 2026 }; 2027 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2028} 2029 2030tcu::Format::Bitfield<32> getDeviceGroupPresentModeFlagsKHRStr (VkDeviceGroupPresentModeFlagsKHR value) 2031{ 2032 static const tcu::Format::BitDesc s_desc[] = 2033 { 2034 tcu::Format::BitDesc(VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR, "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR"), 2035 tcu::Format::BitDesc(VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR, "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR"), 2036 tcu::Format::BitDesc(VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR, "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR"), 2037 tcu::Format::BitDesc(VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR, "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR"), 2038 }; 2039 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2040} 2041 2042tcu::Format::Bitfield<32> getDisplayPlaneAlphaFlagsKHRStr (VkDisplayPlaneAlphaFlagsKHR value) 2043{ 2044 static const tcu::Format::BitDesc s_desc[] = 2045 { 2046 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR"), 2047 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR"), 2048 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR"), 2049 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR"), 2050 }; 2051 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2052} 2053 2054tcu::Format::Bitfield<32> getResolveModeFlagsKHRStr (VkResolveModeFlagsKHR value) 2055{ 2056 static const tcu::Format::BitDesc s_desc[] = 2057 { 2058 tcu::Format::BitDesc(VK_RESOLVE_MODE_NONE_KHR, "VK_RESOLVE_MODE_NONE_KHR"), 2059 tcu::Format::BitDesc(VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR, "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR"), 2060 tcu::Format::BitDesc(VK_RESOLVE_MODE_AVERAGE_BIT_KHR, "VK_RESOLVE_MODE_AVERAGE_BIT_KHR"), 2061 tcu::Format::BitDesc(VK_RESOLVE_MODE_MIN_BIT_KHR, "VK_RESOLVE_MODE_MIN_BIT_KHR"), 2062 tcu::Format::BitDesc(VK_RESOLVE_MODE_MAX_BIT_KHR, "VK_RESOLVE_MODE_MAX_BIT_KHR"), 2063 }; 2064 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2065} 2066 2067tcu::Format::Bitfield<32> getDebugReportFlagsEXTStr (VkDebugReportFlagsEXT value) 2068{ 2069 static const tcu::Format::BitDesc s_desc[] = 2070 { 2071 tcu::Format::BitDesc(VK_DEBUG_REPORT_INFORMATION_BIT_EXT, "VK_DEBUG_REPORT_INFORMATION_BIT_EXT"), 2072 tcu::Format::BitDesc(VK_DEBUG_REPORT_WARNING_BIT_EXT, "VK_DEBUG_REPORT_WARNING_BIT_EXT"), 2073 tcu::Format::BitDesc(VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT, "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT"), 2074 tcu::Format::BitDesc(VK_DEBUG_REPORT_ERROR_BIT_EXT, "VK_DEBUG_REPORT_ERROR_BIT_EXT"), 2075 tcu::Format::BitDesc(VK_DEBUG_REPORT_DEBUG_BIT_EXT, "VK_DEBUG_REPORT_DEBUG_BIT_EXT"), 2076 }; 2077 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2078} 2079 2080tcu::Format::Bitfield<32> getExternalMemoryHandleTypeFlagsNVStr (VkExternalMemoryHandleTypeFlagsNV value) 2081{ 2082 static const tcu::Format::BitDesc s_desc[] = 2083 { 2084 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV"), 2085 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV"), 2086 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV"), 2087 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV"), 2088 }; 2089 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2090} 2091 2092tcu::Format::Bitfield<32> getExternalMemoryFeatureFlagsNVStr (VkExternalMemoryFeatureFlagsNV value) 2093{ 2094 static const tcu::Format::BitDesc s_desc[] = 2095 { 2096 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV, "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV"), 2097 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV"), 2098 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV"), 2099 }; 2100 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2101} 2102 2103tcu::Format::Bitfield<32> getConditionalRenderingFlagsEXTStr (VkConditionalRenderingFlagsEXT value) 2104{ 2105 static const tcu::Format::BitDesc s_desc[] = 2106 { 2107 tcu::Format::BitDesc(VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT, "VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT"), 2108 }; 2109 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2110} 2111 2112tcu::Format::Bitfield<32> getIndirectCommandsLayoutUsageFlagsNVXStr (VkIndirectCommandsLayoutUsageFlagsNVX value) 2113{ 2114 static const tcu::Format::BitDesc s_desc[] = 2115 { 2116 tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX, "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NVX"), 2117 tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX, "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_SPARSE_SEQUENCES_BIT_NVX"), 2118 tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX, "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EMPTY_EXECUTIONS_BIT_NVX"), 2119 tcu::Format::BitDesc(VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX, "VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NVX"), 2120 }; 2121 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2122} 2123 2124tcu::Format::Bitfield<32> getObjectEntryUsageFlagsNVXStr (VkObjectEntryUsageFlagsNVX value) 2125{ 2126 static const tcu::Format::BitDesc s_desc[] = 2127 { 2128 tcu::Format::BitDesc(VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX, "VK_OBJECT_ENTRY_USAGE_GRAPHICS_BIT_NVX"), 2129 tcu::Format::BitDesc(VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX, "VK_OBJECT_ENTRY_USAGE_COMPUTE_BIT_NVX"), 2130 }; 2131 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2132} 2133 2134tcu::Format::Bitfield<32> getSurfaceCounterFlagsEXTStr (VkSurfaceCounterFlagsEXT value) 2135{ 2136 static const tcu::Format::BitDesc s_desc[] = 2137 { 2138 tcu::Format::BitDesc(VK_SURFACE_COUNTER_VBLANK_EXT, "VK_SURFACE_COUNTER_VBLANK_EXT"), 2139 }; 2140 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2141} 2142 2143tcu::Format::Bitfield<32> getDescriptorBindingFlagsEXTStr (VkDescriptorBindingFlagsEXT value) 2144{ 2145 static const tcu::Format::BitDesc s_desc[] = 2146 { 2147 tcu::Format::BitDesc(VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT, "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT"), 2148 tcu::Format::BitDesc(VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT, "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT"), 2149 tcu::Format::BitDesc(VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT, "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT"), 2150 tcu::Format::BitDesc(VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT, "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT"), 2151 }; 2152 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 2153} 2154 2155tcu::Format::Bitfield<32> getInstanceCreateFlagsStr (VkInstanceCreateFlags value) 2156{ 2157 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2158} 2159 2160tcu::Format::Bitfield<32> getDeviceCreateFlagsStr (VkDeviceCreateFlags value) 2161{ 2162 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2163} 2164 2165tcu::Format::Bitfield<32> getMemoryMapFlagsStr (VkMemoryMapFlags value) 2166{ 2167 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2168} 2169 2170tcu::Format::Bitfield<32> getSemaphoreCreateFlagsStr (VkSemaphoreCreateFlags value) 2171{ 2172 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2173} 2174 2175tcu::Format::Bitfield<32> getEventCreateFlagsStr (VkEventCreateFlags value) 2176{ 2177 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2178} 2179 2180tcu::Format::Bitfield<32> getQueryPoolCreateFlagsStr (VkQueryPoolCreateFlags value) 2181{ 2182 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2183} 2184 2185tcu::Format::Bitfield<32> getBufferViewCreateFlagsStr (VkBufferViewCreateFlags value) 2186{ 2187 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2188} 2189 2190tcu::Format::Bitfield<32> getImageViewCreateFlagsStr (VkImageViewCreateFlags value) 2191{ 2192 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2193} 2194 2195tcu::Format::Bitfield<32> getShaderModuleCreateFlagsStr (VkShaderModuleCreateFlags value) 2196{ 2197 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2198} 2199 2200tcu::Format::Bitfield<32> getPipelineCacheCreateFlagsStr (VkPipelineCacheCreateFlags value) 2201{ 2202 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2203} 2204 2205tcu::Format::Bitfield<32> getPipelineShaderStageCreateFlagsStr (VkPipelineShaderStageCreateFlags value) 2206{ 2207 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2208} 2209 2210tcu::Format::Bitfield<32> getPipelineVertexInputStateCreateFlagsStr (VkPipelineVertexInputStateCreateFlags value) 2211{ 2212 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2213} 2214 2215tcu::Format::Bitfield<32> getPipelineInputAssemblyStateCreateFlagsStr (VkPipelineInputAssemblyStateCreateFlags value) 2216{ 2217 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2218} 2219 2220tcu::Format::Bitfield<32> getPipelineTessellationStateCreateFlagsStr (VkPipelineTessellationStateCreateFlags value) 2221{ 2222 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2223} 2224 2225tcu::Format::Bitfield<32> getPipelineViewportStateCreateFlagsStr (VkPipelineViewportStateCreateFlags value) 2226{ 2227 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2228} 2229 2230tcu::Format::Bitfield<32> getPipelineRasterizationStateCreateFlagsStr (VkPipelineRasterizationStateCreateFlags value) 2231{ 2232 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2233} 2234 2235tcu::Format::Bitfield<32> getPipelineMultisampleStateCreateFlagsStr (VkPipelineMultisampleStateCreateFlags value) 2236{ 2237 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2238} 2239 2240tcu::Format::Bitfield<32> getPipelineDepthStencilStateCreateFlagsStr (VkPipelineDepthStencilStateCreateFlags value) 2241{ 2242 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2243} 2244 2245tcu::Format::Bitfield<32> getPipelineColorBlendStateCreateFlagsStr (VkPipelineColorBlendStateCreateFlags value) 2246{ 2247 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2248} 2249 2250tcu::Format::Bitfield<32> getPipelineDynamicStateCreateFlagsStr (VkPipelineDynamicStateCreateFlags value) 2251{ 2252 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2253} 2254 2255tcu::Format::Bitfield<32> getPipelineLayoutCreateFlagsStr (VkPipelineLayoutCreateFlags value) 2256{ 2257 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2258} 2259 2260tcu::Format::Bitfield<32> getSamplerCreateFlagsStr (VkSamplerCreateFlags value) 2261{ 2262 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2263} 2264 2265tcu::Format::Bitfield<32> getDescriptorPoolResetFlagsStr (VkDescriptorPoolResetFlags value) 2266{ 2267 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2268} 2269 2270tcu::Format::Bitfield<32> getFramebufferCreateFlagsStr (VkFramebufferCreateFlags value) 2271{ 2272 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2273} 2274 2275tcu::Format::Bitfield<32> getRenderPassCreateFlagsStr (VkRenderPassCreateFlags value) 2276{ 2277 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2278} 2279 2280tcu::Format::Bitfield<32> getCommandPoolTrimFlagsStr (VkCommandPoolTrimFlags value) 2281{ 2282 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2283} 2284 2285tcu::Format::Bitfield<32> getDescriptorUpdateTemplateCreateFlagsStr (VkDescriptorUpdateTemplateCreateFlags value) 2286{ 2287 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2288} 2289 2290tcu::Format::Bitfield<32> getDisplayModeCreateFlagsKHRStr (VkDisplayModeCreateFlagsKHR value) 2291{ 2292 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2293} 2294 2295tcu::Format::Bitfield<32> getDisplaySurfaceCreateFlagsKHRStr (VkDisplaySurfaceCreateFlagsKHR value) 2296{ 2297 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2298} 2299 2300tcu::Format::Bitfield<32> getXlibSurfaceCreateFlagsKHRStr (VkXlibSurfaceCreateFlagsKHR value) 2301{ 2302 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2303} 2304 2305tcu::Format::Bitfield<32> getXcbSurfaceCreateFlagsKHRStr (VkXcbSurfaceCreateFlagsKHR value) 2306{ 2307 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2308} 2309 2310tcu::Format::Bitfield<32> getWaylandSurfaceCreateFlagsKHRStr (VkWaylandSurfaceCreateFlagsKHR value) 2311{ 2312 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2313} 2314 2315tcu::Format::Bitfield<32> getMirSurfaceCreateFlagsKHRStr (VkMirSurfaceCreateFlagsKHR value) 2316{ 2317 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2318} 2319 2320tcu::Format::Bitfield<32> getAndroidSurfaceCreateFlagsKHRStr (VkAndroidSurfaceCreateFlagsKHR value) 2321{ 2322 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2323} 2324 2325tcu::Format::Bitfield<32> getWin32SurfaceCreateFlagsKHRStr (VkWin32SurfaceCreateFlagsKHR value) 2326{ 2327 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2328} 2329 2330tcu::Format::Bitfield<32> getViSurfaceCreateFlagsNNStr (VkViSurfaceCreateFlagsNN value) 2331{ 2332 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2333} 2334 2335tcu::Format::Bitfield<32> getPipelineViewportSwizzleStateCreateFlagsNVStr (VkPipelineViewportSwizzleStateCreateFlagsNV value) 2336{ 2337 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2338} 2339 2340tcu::Format::Bitfield<32> getPipelineDiscardRectangleStateCreateFlagsEXTStr (VkPipelineDiscardRectangleStateCreateFlagsEXT value) 2341{ 2342 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2343} 2344 2345tcu::Format::Bitfield<32> getIOSSurfaceCreateFlagsMVKStr (VkIOSSurfaceCreateFlagsMVK value) 2346{ 2347 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2348} 2349 2350tcu::Format::Bitfield<32> getMacOSSurfaceCreateFlagsMVKStr (VkMacOSSurfaceCreateFlagsMVK value) 2351{ 2352 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2353} 2354 2355tcu::Format::Bitfield<32> getPipelineCoverageToColorStateCreateFlagsNVStr (VkPipelineCoverageToColorStateCreateFlagsNV value) 2356{ 2357 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2358} 2359 2360tcu::Format::Bitfield<32> getPipelineCoverageModulationStateCreateFlagsNVStr (VkPipelineCoverageModulationStateCreateFlagsNV value) 2361{ 2362 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2363} 2364 2365tcu::Format::Bitfield<32> getValidationCacheCreateFlagsEXTStr (VkValidationCacheCreateFlagsEXT value) 2366{ 2367 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 2368} 2369 2370std::ostream& operator<< (std::ostream& s, const VkApplicationInfo& value) 2371{ 2372 s << "VkApplicationInfo = {\n"; 2373 s << "\tsType = " << value.sType << '\n'; 2374 s << "\tpNext = " << value.pNext << '\n'; 2375 s << "\tpApplicationName = " << getCharPtrStr(value.pApplicationName) << '\n'; 2376 s << "\tapplicationVersion = " << value.applicationVersion << '\n'; 2377 s << "\tpEngineName = " << getCharPtrStr(value.pEngineName) << '\n'; 2378 s << "\tengineVersion = " << value.engineVersion << '\n'; 2379 s << "\tapiVersion = " << value.apiVersion << '\n'; 2380 s << '}'; 2381 return s; 2382} 2383 2384std::ostream& operator<< (std::ostream& s, const VkInstanceCreateInfo& value) 2385{ 2386 s << "VkInstanceCreateInfo = {\n"; 2387 s << "\tsType = " << value.sType << '\n'; 2388 s << "\tpNext = " << value.pNext << '\n'; 2389 s << "\tflags = " << getInstanceCreateFlagsStr(value.flags) << '\n'; 2390 s << "\tpApplicationInfo = " << value.pApplicationInfo << '\n'; 2391 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n'; 2392 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n'; 2393 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n'; 2394 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n'; 2395 s << '}'; 2396 return s; 2397} 2398 2399std::ostream& operator<< (std::ostream& s, const VkAllocationCallbacks& value) 2400{ 2401 s << "VkAllocationCallbacks = {\n"; 2402 s << "\tpUserData = " << value.pUserData << '\n'; 2403 s << "\tpfnAllocation = " << value.pfnAllocation << '\n'; 2404 s << "\tpfnReallocation = " << value.pfnReallocation << '\n'; 2405 s << "\tpfnFree = " << value.pfnFree << '\n'; 2406 s << "\tpfnInternalAllocation = " << value.pfnInternalAllocation << '\n'; 2407 s << "\tpfnInternalFree = " << value.pfnInternalFree << '\n'; 2408 s << '}'; 2409 return s; 2410} 2411 2412std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures& value) 2413{ 2414 s << "VkPhysicalDeviceFeatures = {\n"; 2415 s << "\trobustBufferAccess = " << value.robustBufferAccess << '\n'; 2416 s << "\tfullDrawIndexUint32 = " << value.fullDrawIndexUint32 << '\n'; 2417 s << "\timageCubeArray = " << value.imageCubeArray << '\n'; 2418 s << "\tindependentBlend = " << value.independentBlend << '\n'; 2419 s << "\tgeometryShader = " << value.geometryShader << '\n'; 2420 s << "\ttessellationShader = " << value.tessellationShader << '\n'; 2421 s << "\tsampleRateShading = " << value.sampleRateShading << '\n'; 2422 s << "\tdualSrcBlend = " << value.dualSrcBlend << '\n'; 2423 s << "\tlogicOp = " << value.logicOp << '\n'; 2424 s << "\tmultiDrawIndirect = " << value.multiDrawIndirect << '\n'; 2425 s << "\tdrawIndirectFirstInstance = " << value.drawIndirectFirstInstance << '\n'; 2426 s << "\tdepthClamp = " << value.depthClamp << '\n'; 2427 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n'; 2428 s << "\tfillModeNonSolid = " << value.fillModeNonSolid << '\n'; 2429 s << "\tdepthBounds = " << value.depthBounds << '\n'; 2430 s << "\twideLines = " << value.wideLines << '\n'; 2431 s << "\tlargePoints = " << value.largePoints << '\n'; 2432 s << "\talphaToOne = " << value.alphaToOne << '\n'; 2433 s << "\tmultiViewport = " << value.multiViewport << '\n'; 2434 s << "\tsamplerAnisotropy = " << value.samplerAnisotropy << '\n'; 2435 s << "\ttextureCompressionETC2 = " << value.textureCompressionETC2 << '\n'; 2436 s << "\ttextureCompressionASTC_LDR = " << value.textureCompressionASTC_LDR << '\n'; 2437 s << "\ttextureCompressionBC = " << value.textureCompressionBC << '\n'; 2438 s << "\tocclusionQueryPrecise = " << value.occlusionQueryPrecise << '\n'; 2439 s << "\tpipelineStatisticsQuery = " << value.pipelineStatisticsQuery << '\n'; 2440 s << "\tvertexPipelineStoresAndAtomics = " << value.vertexPipelineStoresAndAtomics << '\n'; 2441 s << "\tfragmentStoresAndAtomics = " << value.fragmentStoresAndAtomics << '\n'; 2442 s << "\tshaderTessellationAndGeometryPointSize = " << value.shaderTessellationAndGeometryPointSize << '\n'; 2443 s << "\tshaderImageGatherExtended = " << value.shaderImageGatherExtended << '\n'; 2444 s << "\tshaderStorageImageExtendedFormats = " << value.shaderStorageImageExtendedFormats << '\n'; 2445 s << "\tshaderStorageImageMultisample = " << value.shaderStorageImageMultisample << '\n'; 2446 s << "\tshaderStorageImageReadWithoutFormat = " << value.shaderStorageImageReadWithoutFormat << '\n'; 2447 s << "\tshaderStorageImageWriteWithoutFormat = " << value.shaderStorageImageWriteWithoutFormat << '\n'; 2448 s << "\tshaderUniformBufferArrayDynamicIndexing = " << value.shaderUniformBufferArrayDynamicIndexing << '\n'; 2449 s << "\tshaderSampledImageArrayDynamicIndexing = " << value.shaderSampledImageArrayDynamicIndexing << '\n'; 2450 s << "\tshaderStorageBufferArrayDynamicIndexing = " << value.shaderStorageBufferArrayDynamicIndexing << '\n'; 2451 s << "\tshaderStorageImageArrayDynamicIndexing = " << value.shaderStorageImageArrayDynamicIndexing << '\n'; 2452 s << "\tshaderClipDistance = " << value.shaderClipDistance << '\n'; 2453 s << "\tshaderCullDistance = " << value.shaderCullDistance << '\n'; 2454 s << "\tshaderFloat64 = " << value.shaderFloat64 << '\n'; 2455 s << "\tshaderInt64 = " << value.shaderInt64 << '\n'; 2456 s << "\tshaderInt16 = " << value.shaderInt16 << '\n'; 2457 s << "\tshaderResourceResidency = " << value.shaderResourceResidency << '\n'; 2458 s << "\tshaderResourceMinLod = " << value.shaderResourceMinLod << '\n'; 2459 s << "\tsparseBinding = " << value.sparseBinding << '\n'; 2460 s << "\tsparseResidencyBuffer = " << value.sparseResidencyBuffer << '\n'; 2461 s << "\tsparseResidencyImage2D = " << value.sparseResidencyImage2D << '\n'; 2462 s << "\tsparseResidencyImage3D = " << value.sparseResidencyImage3D << '\n'; 2463 s << "\tsparseResidency2Samples = " << value.sparseResidency2Samples << '\n'; 2464 s << "\tsparseResidency4Samples = " << value.sparseResidency4Samples << '\n'; 2465 s << "\tsparseResidency8Samples = " << value.sparseResidency8Samples << '\n'; 2466 s << "\tsparseResidency16Samples = " << value.sparseResidency16Samples << '\n'; 2467 s << "\tsparseResidencyAliased = " << value.sparseResidencyAliased << '\n'; 2468 s << "\tvariableMultisampleRate = " << value.variableMultisampleRate << '\n'; 2469 s << "\tinheritedQueries = " << value.inheritedQueries << '\n'; 2470 s << '}'; 2471 return s; 2472} 2473 2474std::ostream& operator<< (std::ostream& s, const VkFormatProperties& value) 2475{ 2476 s << "VkFormatProperties = {\n"; 2477 s << "\tlinearTilingFeatures = " << getFormatFeatureFlagsStr(value.linearTilingFeatures) << '\n'; 2478 s << "\toptimalTilingFeatures = " << getFormatFeatureFlagsStr(value.optimalTilingFeatures) << '\n'; 2479 s << "\tbufferFeatures = " << getFormatFeatureFlagsStr(value.bufferFeatures) << '\n'; 2480 s << '}'; 2481 return s; 2482} 2483 2484std::ostream& operator<< (std::ostream& s, const VkExtent3D& value) 2485{ 2486 s << "VkExtent3D = {\n"; 2487 s << "\twidth = " << value.width << '\n'; 2488 s << "\theight = " << value.height << '\n'; 2489 s << "\tdepth = " << value.depth << '\n'; 2490 s << '}'; 2491 return s; 2492} 2493 2494std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties& value) 2495{ 2496 s << "VkImageFormatProperties = {\n"; 2497 s << "\tmaxExtent = " << value.maxExtent << '\n'; 2498 s << "\tmaxMipLevels = " << value.maxMipLevels << '\n'; 2499 s << "\tmaxArrayLayers = " << value.maxArrayLayers << '\n'; 2500 s << "\tsampleCounts = " << getSampleCountFlagsStr(value.sampleCounts) << '\n'; 2501 s << "\tmaxResourceSize = " << value.maxResourceSize << '\n'; 2502 s << '}'; 2503 return s; 2504} 2505 2506std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceLimits& value) 2507{ 2508 s << "VkPhysicalDeviceLimits = {\n"; 2509 s << "\tmaxImageDimension1D = " << value.maxImageDimension1D << '\n'; 2510 s << "\tmaxImageDimension2D = " << value.maxImageDimension2D << '\n'; 2511 s << "\tmaxImageDimension3D = " << value.maxImageDimension3D << '\n'; 2512 s << "\tmaxImageDimensionCube = " << value.maxImageDimensionCube << '\n'; 2513 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n'; 2514 s << "\tmaxTexelBufferElements = " << value.maxTexelBufferElements << '\n'; 2515 s << "\tmaxUniformBufferRange = " << value.maxUniformBufferRange << '\n'; 2516 s << "\tmaxStorageBufferRange = " << value.maxStorageBufferRange << '\n'; 2517 s << "\tmaxPushConstantsSize = " << value.maxPushConstantsSize << '\n'; 2518 s << "\tmaxMemoryAllocationCount = " << value.maxMemoryAllocationCount << '\n'; 2519 s << "\tmaxSamplerAllocationCount = " << value.maxSamplerAllocationCount << '\n'; 2520 s << "\tbufferImageGranularity = " << value.bufferImageGranularity << '\n'; 2521 s << "\tsparseAddressSpaceSize = " << value.sparseAddressSpaceSize << '\n'; 2522 s << "\tmaxBoundDescriptorSets = " << value.maxBoundDescriptorSets << '\n'; 2523 s << "\tmaxPerStageDescriptorSamplers = " << value.maxPerStageDescriptorSamplers << '\n'; 2524 s << "\tmaxPerStageDescriptorUniformBuffers = " << value.maxPerStageDescriptorUniformBuffers << '\n'; 2525 s << "\tmaxPerStageDescriptorStorageBuffers = " << value.maxPerStageDescriptorStorageBuffers << '\n'; 2526 s << "\tmaxPerStageDescriptorSampledImages = " << value.maxPerStageDescriptorSampledImages << '\n'; 2527 s << "\tmaxPerStageDescriptorStorageImages = " << value.maxPerStageDescriptorStorageImages << '\n'; 2528 s << "\tmaxPerStageDescriptorInputAttachments = " << value.maxPerStageDescriptorInputAttachments << '\n'; 2529 s << "\tmaxPerStageResources = " << value.maxPerStageResources << '\n'; 2530 s << "\tmaxDescriptorSetSamplers = " << value.maxDescriptorSetSamplers << '\n'; 2531 s << "\tmaxDescriptorSetUniformBuffers = " << value.maxDescriptorSetUniformBuffers << '\n'; 2532 s << "\tmaxDescriptorSetUniformBuffersDynamic = " << value.maxDescriptorSetUniformBuffersDynamic << '\n'; 2533 s << "\tmaxDescriptorSetStorageBuffers = " << value.maxDescriptorSetStorageBuffers << '\n'; 2534 s << "\tmaxDescriptorSetStorageBuffersDynamic = " << value.maxDescriptorSetStorageBuffersDynamic << '\n'; 2535 s << "\tmaxDescriptorSetSampledImages = " << value.maxDescriptorSetSampledImages << '\n'; 2536 s << "\tmaxDescriptorSetStorageImages = " << value.maxDescriptorSetStorageImages << '\n'; 2537 s << "\tmaxDescriptorSetInputAttachments = " << value.maxDescriptorSetInputAttachments << '\n'; 2538 s << "\tmaxVertexInputAttributes = " << value.maxVertexInputAttributes << '\n'; 2539 s << "\tmaxVertexInputBindings = " << value.maxVertexInputBindings << '\n'; 2540 s << "\tmaxVertexInputAttributeOffset = " << value.maxVertexInputAttributeOffset << '\n'; 2541 s << "\tmaxVertexInputBindingStride = " << value.maxVertexInputBindingStride << '\n'; 2542 s << "\tmaxVertexOutputComponents = " << value.maxVertexOutputComponents << '\n'; 2543 s << "\tmaxTessellationGenerationLevel = " << value.maxTessellationGenerationLevel << '\n'; 2544 s << "\tmaxTessellationPatchSize = " << value.maxTessellationPatchSize << '\n'; 2545 s << "\tmaxTessellationControlPerVertexInputComponents = " << value.maxTessellationControlPerVertexInputComponents << '\n'; 2546 s << "\tmaxTessellationControlPerVertexOutputComponents = " << value.maxTessellationControlPerVertexOutputComponents << '\n'; 2547 s << "\tmaxTessellationControlPerPatchOutputComponents = " << value.maxTessellationControlPerPatchOutputComponents << '\n'; 2548 s << "\tmaxTessellationControlTotalOutputComponents = " << value.maxTessellationControlTotalOutputComponents << '\n'; 2549 s << "\tmaxTessellationEvaluationInputComponents = " << value.maxTessellationEvaluationInputComponents << '\n'; 2550 s << "\tmaxTessellationEvaluationOutputComponents = " << value.maxTessellationEvaluationOutputComponents << '\n'; 2551 s << "\tmaxGeometryShaderInvocations = " << value.maxGeometryShaderInvocations << '\n'; 2552 s << "\tmaxGeometryInputComponents = " << value.maxGeometryInputComponents << '\n'; 2553 s << "\tmaxGeometryOutputComponents = " << value.maxGeometryOutputComponents << '\n'; 2554 s << "\tmaxGeometryOutputVertices = " << value.maxGeometryOutputVertices << '\n'; 2555 s << "\tmaxGeometryTotalOutputComponents = " << value.maxGeometryTotalOutputComponents << '\n'; 2556 s << "\tmaxFragmentInputComponents = " << value.maxFragmentInputComponents << '\n'; 2557 s << "\tmaxFragmentOutputAttachments = " << value.maxFragmentOutputAttachments << '\n'; 2558 s << "\tmaxFragmentDualSrcAttachments = " << value.maxFragmentDualSrcAttachments << '\n'; 2559 s << "\tmaxFragmentCombinedOutputResources = " << value.maxFragmentCombinedOutputResources << '\n'; 2560 s << "\tmaxComputeSharedMemorySize = " << value.maxComputeSharedMemorySize << '\n'; 2561 s << "\tmaxComputeWorkGroupCount = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupCount), DE_ARRAY_END(value.maxComputeWorkGroupCount)) << '\n'; 2562 s << "\tmaxComputeWorkGroupInvocations = " << value.maxComputeWorkGroupInvocations << '\n'; 2563 s << "\tmaxComputeWorkGroupSize = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupSize), DE_ARRAY_END(value.maxComputeWorkGroupSize)) << '\n'; 2564 s << "\tsubPixelPrecisionBits = " << value.subPixelPrecisionBits << '\n'; 2565 s << "\tsubTexelPrecisionBits = " << value.subTexelPrecisionBits << '\n'; 2566 s << "\tmipmapPrecisionBits = " << value.mipmapPrecisionBits << '\n'; 2567 s << "\tmaxDrawIndexedIndexValue = " << value.maxDrawIndexedIndexValue << '\n'; 2568 s << "\tmaxDrawIndirectCount = " << value.maxDrawIndirectCount << '\n'; 2569 s << "\tmaxSamplerLodBias = " << value.maxSamplerLodBias << '\n'; 2570 s << "\tmaxSamplerAnisotropy = " << value.maxSamplerAnisotropy << '\n'; 2571 s << "\tmaxViewports = " << value.maxViewports << '\n'; 2572 s << "\tmaxViewportDimensions = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxViewportDimensions), DE_ARRAY_END(value.maxViewportDimensions)) << '\n'; 2573 s << "\tviewportBoundsRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewportBoundsRange), DE_ARRAY_END(value.viewportBoundsRange)) << '\n'; 2574 s << "\tviewportSubPixelBits = " << value.viewportSubPixelBits << '\n'; 2575 s << "\tminMemoryMapAlignment = " << value.minMemoryMapAlignment << '\n'; 2576 s << "\tminTexelBufferOffsetAlignment = " << value.minTexelBufferOffsetAlignment << '\n'; 2577 s << "\tminUniformBufferOffsetAlignment = " << value.minUniformBufferOffsetAlignment << '\n'; 2578 s << "\tminStorageBufferOffsetAlignment = " << value.minStorageBufferOffsetAlignment << '\n'; 2579 s << "\tminTexelOffset = " << value.minTexelOffset << '\n'; 2580 s << "\tmaxTexelOffset = " << value.maxTexelOffset << '\n'; 2581 s << "\tminTexelGatherOffset = " << value.minTexelGatherOffset << '\n'; 2582 s << "\tmaxTexelGatherOffset = " << value.maxTexelGatherOffset << '\n'; 2583 s << "\tminInterpolationOffset = " << value.minInterpolationOffset << '\n'; 2584 s << "\tmaxInterpolationOffset = " << value.maxInterpolationOffset << '\n'; 2585 s << "\tsubPixelInterpolationOffsetBits = " << value.subPixelInterpolationOffsetBits << '\n'; 2586 s << "\tmaxFramebufferWidth = " << value.maxFramebufferWidth << '\n'; 2587 s << "\tmaxFramebufferHeight = " << value.maxFramebufferHeight << '\n'; 2588 s << "\tmaxFramebufferLayers = " << value.maxFramebufferLayers << '\n'; 2589 s << "\tframebufferColorSampleCounts = " << getSampleCountFlagsStr(value.framebufferColorSampleCounts) << '\n'; 2590 s << "\tframebufferDepthSampleCounts = " << getSampleCountFlagsStr(value.framebufferDepthSampleCounts) << '\n'; 2591 s << "\tframebufferStencilSampleCounts = " << getSampleCountFlagsStr(value.framebufferStencilSampleCounts) << '\n'; 2592 s << "\tframebufferNoAttachmentsSampleCounts = " << getSampleCountFlagsStr(value.framebufferNoAttachmentsSampleCounts) << '\n'; 2593 s << "\tmaxColorAttachments = " << value.maxColorAttachments << '\n'; 2594 s << "\tsampledImageColorSampleCounts = " << getSampleCountFlagsStr(value.sampledImageColorSampleCounts) << '\n'; 2595 s << "\tsampledImageIntegerSampleCounts = " << getSampleCountFlagsStr(value.sampledImageIntegerSampleCounts) << '\n'; 2596 s << "\tsampledImageDepthSampleCounts = " << getSampleCountFlagsStr(value.sampledImageDepthSampleCounts) << '\n'; 2597 s << "\tsampledImageStencilSampleCounts = " << getSampleCountFlagsStr(value.sampledImageStencilSampleCounts) << '\n'; 2598 s << "\tstorageImageSampleCounts = " << getSampleCountFlagsStr(value.storageImageSampleCounts) << '\n'; 2599 s << "\tmaxSampleMaskWords = " << value.maxSampleMaskWords << '\n'; 2600 s << "\ttimestampComputeAndGraphics = " << value.timestampComputeAndGraphics << '\n'; 2601 s << "\ttimestampPeriod = " << value.timestampPeriod << '\n'; 2602 s << "\tmaxClipDistances = " << value.maxClipDistances << '\n'; 2603 s << "\tmaxCullDistances = " << value.maxCullDistances << '\n'; 2604 s << "\tmaxCombinedClipAndCullDistances = " << value.maxCombinedClipAndCullDistances << '\n'; 2605 s << "\tdiscreteQueuePriorities = " << value.discreteQueuePriorities << '\n'; 2606 s << "\tpointSizeRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.pointSizeRange), DE_ARRAY_END(value.pointSizeRange)) << '\n'; 2607 s << "\tlineWidthRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.lineWidthRange), DE_ARRAY_END(value.lineWidthRange)) << '\n'; 2608 s << "\tpointSizeGranularity = " << value.pointSizeGranularity << '\n'; 2609 s << "\tlineWidthGranularity = " << value.lineWidthGranularity << '\n'; 2610 s << "\tstrictLines = " << value.strictLines << '\n'; 2611 s << "\tstandardSampleLocations = " << value.standardSampleLocations << '\n'; 2612 s << "\toptimalBufferCopyOffsetAlignment = " << value.optimalBufferCopyOffsetAlignment << '\n'; 2613 s << "\toptimalBufferCopyRowPitchAlignment = " << value.optimalBufferCopyRowPitchAlignment << '\n'; 2614 s << "\tnonCoherentAtomSize = " << value.nonCoherentAtomSize << '\n'; 2615 s << '}'; 2616 return s; 2617} 2618 2619std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseProperties& value) 2620{ 2621 s << "VkPhysicalDeviceSparseProperties = {\n"; 2622 s << "\tresidencyStandard2DBlockShape = " << value.residencyStandard2DBlockShape << '\n'; 2623 s << "\tresidencyStandard2DMultisampleBlockShape = " << value.residencyStandard2DMultisampleBlockShape << '\n'; 2624 s << "\tresidencyStandard3DBlockShape = " << value.residencyStandard3DBlockShape << '\n'; 2625 s << "\tresidencyAlignedMipSize = " << value.residencyAlignedMipSize << '\n'; 2626 s << "\tresidencyNonResidentStrict = " << value.residencyNonResidentStrict << '\n'; 2627 s << '}'; 2628 return s; 2629} 2630 2631std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties& value) 2632{ 2633 s << "VkPhysicalDeviceProperties = {\n"; 2634 s << "\tapiVersion = " << value.apiVersion << '\n'; 2635 s << "\tdriverVersion = " << value.driverVersion << '\n'; 2636 s << "\tvendorID = " << value.vendorID << '\n'; 2637 s << "\tdeviceID = " << value.deviceID << '\n'; 2638 s << "\tdeviceType = " << value.deviceType << '\n'; 2639 s << "\tdeviceName = " << (const char*)value.deviceName << '\n'; 2640 s << "\tpipelineCacheUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.pipelineCacheUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.pipelineCacheUUID))) << '\n'; 2641 s << "\tlimits = " << value.limits << '\n'; 2642 s << "\tsparseProperties = " << value.sparseProperties << '\n'; 2643 s << '}'; 2644 return s; 2645} 2646 2647std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties& value) 2648{ 2649 s << "VkQueueFamilyProperties = {\n"; 2650 s << "\tqueueFlags = " << getQueueFlagsStr(value.queueFlags) << '\n'; 2651 s << "\tqueueCount = " << value.queueCount << '\n'; 2652 s << "\ttimestampValidBits = " << value.timestampValidBits << '\n'; 2653 s << "\tminImageTransferGranularity = " << value.minImageTransferGranularity << '\n'; 2654 s << '}'; 2655 return s; 2656} 2657 2658std::ostream& operator<< (std::ostream& s, const VkMemoryType& value) 2659{ 2660 s << "VkMemoryType = {\n"; 2661 s << "\tpropertyFlags = " << getMemoryPropertyFlagsStr(value.propertyFlags) << '\n'; 2662 s << "\theapIndex = " << value.heapIndex << '\n'; 2663 s << '}'; 2664 return s; 2665} 2666 2667std::ostream& operator<< (std::ostream& s, const VkMemoryHeap& value) 2668{ 2669 s << "VkMemoryHeap = {\n"; 2670 s << "\tsize = " << value.size << '\n'; 2671 s << "\tflags = " << getMemoryHeapFlagsStr(value.flags) << '\n'; 2672 s << '}'; 2673 return s; 2674} 2675 2676std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties& value) 2677{ 2678 s << "VkPhysicalDeviceMemoryProperties = {\n"; 2679 s << "\tmemoryTypeCount = " << value.memoryTypeCount << '\n'; 2680 s << "\tmemoryTypes = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryTypes), DE_ARRAY_BEGIN(value.memoryTypes) + value.memoryTypeCount) << '\n'; 2681 s << "\tmemoryHeapCount = " << value.memoryHeapCount << '\n'; 2682 s << "\tmemoryHeaps = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryHeaps), DE_ARRAY_BEGIN(value.memoryHeaps) + value.memoryHeapCount) << '\n'; 2683 s << '}'; 2684 return s; 2685} 2686 2687std::ostream& operator<< (std::ostream& s, const VkDeviceQueueCreateInfo& value) 2688{ 2689 s << "VkDeviceQueueCreateInfo = {\n"; 2690 s << "\tsType = " << value.sType << '\n'; 2691 s << "\tpNext = " << value.pNext << '\n'; 2692 s << "\tflags = " << getDeviceQueueCreateFlagsStr(value.flags) << '\n'; 2693 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n'; 2694 s << "\tqueueCount = " << value.queueCount << '\n'; 2695 s << "\tpQueuePriorities = " << value.pQueuePriorities << '\n'; 2696 s << '}'; 2697 return s; 2698} 2699 2700std::ostream& operator<< (std::ostream& s, const VkDeviceCreateInfo& value) 2701{ 2702 s << "VkDeviceCreateInfo = {\n"; 2703 s << "\tsType = " << value.sType << '\n'; 2704 s << "\tpNext = " << value.pNext << '\n'; 2705 s << "\tflags = " << getDeviceCreateFlagsStr(value.flags) << '\n'; 2706 s << "\tqueueCreateInfoCount = " << value.queueCreateInfoCount << '\n'; 2707 s << "\tpQueueCreateInfos = " << value.pQueueCreateInfos << '\n'; 2708 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n'; 2709 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n'; 2710 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n'; 2711 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n'; 2712 s << "\tpEnabledFeatures = " << value.pEnabledFeatures << '\n'; 2713 s << '}'; 2714 return s; 2715} 2716 2717std::ostream& operator<< (std::ostream& s, const VkExtensionProperties& value) 2718{ 2719 s << "VkExtensionProperties = {\n"; 2720 s << "\textensionName = " << (const char*)value.extensionName << '\n'; 2721 s << "\tspecVersion = " << value.specVersion << '\n'; 2722 s << '}'; 2723 return s; 2724} 2725 2726std::ostream& operator<< (std::ostream& s, const VkLayerProperties& value) 2727{ 2728 s << "VkLayerProperties = {\n"; 2729 s << "\tlayerName = " << (const char*)value.layerName << '\n'; 2730 s << "\tspecVersion = " << value.specVersion << '\n'; 2731 s << "\timplementationVersion = " << value.implementationVersion << '\n'; 2732 s << "\tdescription = " << (const char*)value.description << '\n'; 2733 s << '}'; 2734 return s; 2735} 2736 2737std::ostream& operator<< (std::ostream& s, const VkSubmitInfo& value) 2738{ 2739 s << "VkSubmitInfo = {\n"; 2740 s << "\tsType = " << value.sType << '\n'; 2741 s << "\tpNext = " << value.pNext << '\n'; 2742 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 2743 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 2744 s << "\tpWaitDstStageMask = " << value.pWaitDstStageMask << '\n'; 2745 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n'; 2746 s << "\tpCommandBuffers = " << value.pCommandBuffers << '\n'; 2747 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n'; 2748 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n'; 2749 s << '}'; 2750 return s; 2751} 2752 2753std::ostream& operator<< (std::ostream& s, const VkMemoryAllocateInfo& value) 2754{ 2755 s << "VkMemoryAllocateInfo = {\n"; 2756 s << "\tsType = " << value.sType << '\n'; 2757 s << "\tpNext = " << value.pNext << '\n'; 2758 s << "\tallocationSize = " << value.allocationSize << '\n'; 2759 s << "\tmemoryTypeIndex = " << value.memoryTypeIndex << '\n'; 2760 s << '}'; 2761 return s; 2762} 2763 2764std::ostream& operator<< (std::ostream& s, const VkMappedMemoryRange& value) 2765{ 2766 s << "VkMappedMemoryRange = {\n"; 2767 s << "\tsType = " << value.sType << '\n'; 2768 s << "\tpNext = " << value.pNext << '\n'; 2769 s << "\tmemory = " << value.memory << '\n'; 2770 s << "\toffset = " << value.offset << '\n'; 2771 s << "\tsize = " << value.size << '\n'; 2772 s << '}'; 2773 return s; 2774} 2775 2776std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements& value) 2777{ 2778 s << "VkMemoryRequirements = {\n"; 2779 s << "\tsize = " << value.size << '\n'; 2780 s << "\talignment = " << value.alignment << '\n'; 2781 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 2782 s << '}'; 2783 return s; 2784} 2785 2786std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties& value) 2787{ 2788 s << "VkSparseImageFormatProperties = {\n"; 2789 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 2790 s << "\timageGranularity = " << value.imageGranularity << '\n'; 2791 s << "\tflags = " << getSparseImageFormatFlagsStr(value.flags) << '\n'; 2792 s << '}'; 2793 return s; 2794} 2795 2796std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements& value) 2797{ 2798 s << "VkSparseImageMemoryRequirements = {\n"; 2799 s << "\tformatProperties = " << value.formatProperties << '\n'; 2800 s << "\timageMipTailFirstLod = " << value.imageMipTailFirstLod << '\n'; 2801 s << "\timageMipTailSize = " << value.imageMipTailSize << '\n'; 2802 s << "\timageMipTailOffset = " << value.imageMipTailOffset << '\n'; 2803 s << "\timageMipTailStride = " << value.imageMipTailStride << '\n'; 2804 s << '}'; 2805 return s; 2806} 2807 2808std::ostream& operator<< (std::ostream& s, const VkSparseMemoryBind& value) 2809{ 2810 s << "VkSparseMemoryBind = {\n"; 2811 s << "\tresourceOffset = " << value.resourceOffset << '\n'; 2812 s << "\tsize = " << value.size << '\n'; 2813 s << "\tmemory = " << value.memory << '\n'; 2814 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 2815 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n'; 2816 s << '}'; 2817 return s; 2818} 2819 2820std::ostream& operator<< (std::ostream& s, const VkSparseBufferMemoryBindInfo& value) 2821{ 2822 s << "VkSparseBufferMemoryBindInfo = {\n"; 2823 s << "\tbuffer = " << value.buffer << '\n'; 2824 s << "\tbindCount = " << value.bindCount << '\n'; 2825 s << "\tpBinds = " << value.pBinds << '\n'; 2826 s << '}'; 2827 return s; 2828} 2829 2830std::ostream& operator<< (std::ostream& s, const VkSparseImageOpaqueMemoryBindInfo& value) 2831{ 2832 s << "VkSparseImageOpaqueMemoryBindInfo = {\n"; 2833 s << "\timage = " << value.image << '\n'; 2834 s << "\tbindCount = " << value.bindCount << '\n'; 2835 s << "\tpBinds = " << value.pBinds << '\n'; 2836 s << '}'; 2837 return s; 2838} 2839 2840std::ostream& operator<< (std::ostream& s, const VkImageSubresource& value) 2841{ 2842 s << "VkImageSubresource = {\n"; 2843 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 2844 s << "\tmipLevel = " << value.mipLevel << '\n'; 2845 s << "\tarrayLayer = " << value.arrayLayer << '\n'; 2846 s << '}'; 2847 return s; 2848} 2849 2850std::ostream& operator<< (std::ostream& s, const VkOffset3D& value) 2851{ 2852 s << "VkOffset3D = {\n"; 2853 s << "\tx = " << value.x << '\n'; 2854 s << "\ty = " << value.y << '\n'; 2855 s << "\tz = " << value.z << '\n'; 2856 s << '}'; 2857 return s; 2858} 2859 2860std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBind& value) 2861{ 2862 s << "VkSparseImageMemoryBind = {\n"; 2863 s << "\tsubresource = " << value.subresource << '\n'; 2864 s << "\toffset = " << value.offset << '\n'; 2865 s << "\textent = " << value.extent << '\n'; 2866 s << "\tmemory = " << value.memory << '\n'; 2867 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 2868 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n'; 2869 s << '}'; 2870 return s; 2871} 2872 2873std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBindInfo& value) 2874{ 2875 s << "VkSparseImageMemoryBindInfo = {\n"; 2876 s << "\timage = " << value.image << '\n'; 2877 s << "\tbindCount = " << value.bindCount << '\n'; 2878 s << "\tpBinds = " << value.pBinds << '\n'; 2879 s << '}'; 2880 return s; 2881} 2882 2883std::ostream& operator<< (std::ostream& s, const VkBindSparseInfo& value) 2884{ 2885 s << "VkBindSparseInfo = {\n"; 2886 s << "\tsType = " << value.sType << '\n'; 2887 s << "\tpNext = " << value.pNext << '\n'; 2888 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 2889 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 2890 s << "\tbufferBindCount = " << value.bufferBindCount << '\n'; 2891 s << "\tpBufferBinds = " << value.pBufferBinds << '\n'; 2892 s << "\timageOpaqueBindCount = " << value.imageOpaqueBindCount << '\n'; 2893 s << "\tpImageOpaqueBinds = " << value.pImageOpaqueBinds << '\n'; 2894 s << "\timageBindCount = " << value.imageBindCount << '\n'; 2895 s << "\tpImageBinds = " << value.pImageBinds << '\n'; 2896 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n'; 2897 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n'; 2898 s << '}'; 2899 return s; 2900} 2901 2902std::ostream& operator<< (std::ostream& s, const VkFenceCreateInfo& value) 2903{ 2904 s << "VkFenceCreateInfo = {\n"; 2905 s << "\tsType = " << value.sType << '\n'; 2906 s << "\tpNext = " << value.pNext << '\n'; 2907 s << "\tflags = " << getFenceCreateFlagsStr(value.flags) << '\n'; 2908 s << '}'; 2909 return s; 2910} 2911 2912std::ostream& operator<< (std::ostream& s, const VkSemaphoreCreateInfo& value) 2913{ 2914 s << "VkSemaphoreCreateInfo = {\n"; 2915 s << "\tsType = " << value.sType << '\n'; 2916 s << "\tpNext = " << value.pNext << '\n'; 2917 s << "\tflags = " << getSemaphoreCreateFlagsStr(value.flags) << '\n'; 2918 s << '}'; 2919 return s; 2920} 2921 2922std::ostream& operator<< (std::ostream& s, const VkEventCreateInfo& value) 2923{ 2924 s << "VkEventCreateInfo = {\n"; 2925 s << "\tsType = " << value.sType << '\n'; 2926 s << "\tpNext = " << value.pNext << '\n'; 2927 s << "\tflags = " << getEventCreateFlagsStr(value.flags) << '\n'; 2928 s << '}'; 2929 return s; 2930} 2931 2932std::ostream& operator<< (std::ostream& s, const VkQueryPoolCreateInfo& value) 2933{ 2934 s << "VkQueryPoolCreateInfo = {\n"; 2935 s << "\tsType = " << value.sType << '\n'; 2936 s << "\tpNext = " << value.pNext << '\n'; 2937 s << "\tflags = " << getQueryPoolCreateFlagsStr(value.flags) << '\n'; 2938 s << "\tqueryType = " << value.queryType << '\n'; 2939 s << "\tqueryCount = " << value.queryCount << '\n'; 2940 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n'; 2941 s << '}'; 2942 return s; 2943} 2944 2945std::ostream& operator<< (std::ostream& s, const VkBufferCreateInfo& value) 2946{ 2947 s << "VkBufferCreateInfo = {\n"; 2948 s << "\tsType = " << value.sType << '\n'; 2949 s << "\tpNext = " << value.pNext << '\n'; 2950 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n'; 2951 s << "\tsize = " << value.size << '\n'; 2952 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n'; 2953 s << "\tsharingMode = " << value.sharingMode << '\n'; 2954 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 2955 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 2956 s << '}'; 2957 return s; 2958} 2959 2960std::ostream& operator<< (std::ostream& s, const VkBufferViewCreateInfo& value) 2961{ 2962 s << "VkBufferViewCreateInfo = {\n"; 2963 s << "\tsType = " << value.sType << '\n'; 2964 s << "\tpNext = " << value.pNext << '\n'; 2965 s << "\tflags = " << getBufferViewCreateFlagsStr(value.flags) << '\n'; 2966 s << "\tbuffer = " << value.buffer << '\n'; 2967 s << "\tformat = " << value.format << '\n'; 2968 s << "\toffset = " << value.offset << '\n'; 2969 s << "\trange = " << value.range << '\n'; 2970 s << '}'; 2971 return s; 2972} 2973 2974std::ostream& operator<< (std::ostream& s, const VkImageCreateInfo& value) 2975{ 2976 s << "VkImageCreateInfo = {\n"; 2977 s << "\tsType = " << value.sType << '\n'; 2978 s << "\tpNext = " << value.pNext << '\n'; 2979 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n'; 2980 s << "\timageType = " << value.imageType << '\n'; 2981 s << "\tformat = " << value.format << '\n'; 2982 s << "\textent = " << value.extent << '\n'; 2983 s << "\tmipLevels = " << value.mipLevels << '\n'; 2984 s << "\tarrayLayers = " << value.arrayLayers << '\n'; 2985 s << "\tsamples = " << value.samples << '\n'; 2986 s << "\ttiling = " << value.tiling << '\n'; 2987 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 2988 s << "\tsharingMode = " << value.sharingMode << '\n'; 2989 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 2990 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 2991 s << "\tinitialLayout = " << value.initialLayout << '\n'; 2992 s << '}'; 2993 return s; 2994} 2995 2996std::ostream& operator<< (std::ostream& s, const VkSubresourceLayout& value) 2997{ 2998 s << "VkSubresourceLayout = {\n"; 2999 s << "\toffset = " << value.offset << '\n'; 3000 s << "\tsize = " << value.size << '\n'; 3001 s << "\trowPitch = " << value.rowPitch << '\n'; 3002 s << "\tarrayPitch = " << value.arrayPitch << '\n'; 3003 s << "\tdepthPitch = " << value.depthPitch << '\n'; 3004 s << '}'; 3005 return s; 3006} 3007 3008std::ostream& operator<< (std::ostream& s, const VkComponentMapping& value) 3009{ 3010 s << "VkComponentMapping = {\n"; 3011 s << "\tr = " << value.r << '\n'; 3012 s << "\tg = " << value.g << '\n'; 3013 s << "\tb = " << value.b << '\n'; 3014 s << "\ta = " << value.a << '\n'; 3015 s << '}'; 3016 return s; 3017} 3018 3019std::ostream& operator<< (std::ostream& s, const VkImageSubresourceRange& value) 3020{ 3021 s << "VkImageSubresourceRange = {\n"; 3022 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3023 s << "\tbaseMipLevel = " << value.baseMipLevel << '\n'; 3024 s << "\tlevelCount = " << value.levelCount << '\n'; 3025 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 3026 s << "\tlayerCount = " << value.layerCount << '\n'; 3027 s << '}'; 3028 return s; 3029} 3030 3031std::ostream& operator<< (std::ostream& s, const VkImageViewCreateInfo& value) 3032{ 3033 s << "VkImageViewCreateInfo = {\n"; 3034 s << "\tsType = " << value.sType << '\n'; 3035 s << "\tpNext = " << value.pNext << '\n'; 3036 s << "\tflags = " << getImageViewCreateFlagsStr(value.flags) << '\n'; 3037 s << "\timage = " << value.image << '\n'; 3038 s << "\tviewType = " << value.viewType << '\n'; 3039 s << "\tformat = " << value.format << '\n'; 3040 s << "\tcomponents = " << value.components << '\n'; 3041 s << "\tsubresourceRange = " << value.subresourceRange << '\n'; 3042 s << '}'; 3043 return s; 3044} 3045 3046std::ostream& operator<< (std::ostream& s, const VkShaderModuleCreateInfo& value) 3047{ 3048 s << "VkShaderModuleCreateInfo = {\n"; 3049 s << "\tsType = " << value.sType << '\n'; 3050 s << "\tpNext = " << value.pNext << '\n'; 3051 s << "\tflags = " << getShaderModuleCreateFlagsStr(value.flags) << '\n'; 3052 s << "\tcodeSize = " << value.codeSize << '\n'; 3053 s << "\tpCode = " << value.pCode << '\n'; 3054 s << '}'; 3055 return s; 3056} 3057 3058std::ostream& operator<< (std::ostream& s, const VkPipelineCacheCreateInfo& value) 3059{ 3060 s << "VkPipelineCacheCreateInfo = {\n"; 3061 s << "\tsType = " << value.sType << '\n'; 3062 s << "\tpNext = " << value.pNext << '\n'; 3063 s << "\tflags = " << getPipelineCacheCreateFlagsStr(value.flags) << '\n'; 3064 s << "\tinitialDataSize = " << value.initialDataSize << '\n'; 3065 s << "\tpInitialData = " << value.pInitialData << '\n'; 3066 s << '}'; 3067 return s; 3068} 3069 3070std::ostream& operator<< (std::ostream& s, const VkSpecializationMapEntry& value) 3071{ 3072 s << "VkSpecializationMapEntry = {\n"; 3073 s << "\tconstantID = " << value.constantID << '\n'; 3074 s << "\toffset = " << value.offset << '\n'; 3075 s << "\tsize = " << value.size << '\n'; 3076 s << '}'; 3077 return s; 3078} 3079 3080std::ostream& operator<< (std::ostream& s, const VkSpecializationInfo& value) 3081{ 3082 s << "VkSpecializationInfo = {\n"; 3083 s << "\tmapEntryCount = " << value.mapEntryCount << '\n'; 3084 s << "\tpMapEntries = " << value.pMapEntries << '\n'; 3085 s << "\tdataSize = " << value.dataSize << '\n'; 3086 s << "\tpData = " << value.pData << '\n'; 3087 s << '}'; 3088 return s; 3089} 3090 3091std::ostream& operator<< (std::ostream& s, const VkPipelineShaderStageCreateInfo& value) 3092{ 3093 s << "VkPipelineShaderStageCreateInfo = {\n"; 3094 s << "\tsType = " << value.sType << '\n'; 3095 s << "\tpNext = " << value.pNext << '\n'; 3096 s << "\tflags = " << getPipelineShaderStageCreateFlagsStr(value.flags) << '\n'; 3097 s << "\tstage = " << value.stage << '\n'; 3098 s << "\tmodule = " << value.module << '\n'; 3099 s << "\tpName = " << getCharPtrStr(value.pName) << '\n'; 3100 s << "\tpSpecializationInfo = " << value.pSpecializationInfo << '\n'; 3101 s << '}'; 3102 return s; 3103} 3104 3105std::ostream& operator<< (std::ostream& s, const VkVertexInputBindingDescription& value) 3106{ 3107 s << "VkVertexInputBindingDescription = {\n"; 3108 s << "\tbinding = " << value.binding << '\n'; 3109 s << "\tstride = " << value.stride << '\n'; 3110 s << "\tinputRate = " << value.inputRate << '\n'; 3111 s << '}'; 3112 return s; 3113} 3114 3115std::ostream& operator<< (std::ostream& s, const VkVertexInputAttributeDescription& value) 3116{ 3117 s << "VkVertexInputAttributeDescription = {\n"; 3118 s << "\tlocation = " << value.location << '\n'; 3119 s << "\tbinding = " << value.binding << '\n'; 3120 s << "\tformat = " << value.format << '\n'; 3121 s << "\toffset = " << value.offset << '\n'; 3122 s << '}'; 3123 return s; 3124} 3125 3126std::ostream& operator<< (std::ostream& s, const VkPipelineVertexInputStateCreateInfo& value) 3127{ 3128 s << "VkPipelineVertexInputStateCreateInfo = {\n"; 3129 s << "\tsType = " << value.sType << '\n'; 3130 s << "\tpNext = " << value.pNext << '\n'; 3131 s << "\tflags = " << getPipelineVertexInputStateCreateFlagsStr(value.flags) << '\n'; 3132 s << "\tvertexBindingDescriptionCount = " << value.vertexBindingDescriptionCount << '\n'; 3133 s << "\tpVertexBindingDescriptions = " << value.pVertexBindingDescriptions << '\n'; 3134 s << "\tvertexAttributeDescriptionCount = " << value.vertexAttributeDescriptionCount << '\n'; 3135 s << "\tpVertexAttributeDescriptions = " << value.pVertexAttributeDescriptions << '\n'; 3136 s << '}'; 3137 return s; 3138} 3139 3140std::ostream& operator<< (std::ostream& s, const VkPipelineInputAssemblyStateCreateInfo& value) 3141{ 3142 s << "VkPipelineInputAssemblyStateCreateInfo = {\n"; 3143 s << "\tsType = " << value.sType << '\n'; 3144 s << "\tpNext = " << value.pNext << '\n'; 3145 s << "\tflags = " << getPipelineInputAssemblyStateCreateFlagsStr(value.flags) << '\n'; 3146 s << "\ttopology = " << value.topology << '\n'; 3147 s << "\tprimitiveRestartEnable = " << value.primitiveRestartEnable << '\n'; 3148 s << '}'; 3149 return s; 3150} 3151 3152std::ostream& operator<< (std::ostream& s, const VkPipelineTessellationStateCreateInfo& value) 3153{ 3154 s << "VkPipelineTessellationStateCreateInfo = {\n"; 3155 s << "\tsType = " << value.sType << '\n'; 3156 s << "\tpNext = " << value.pNext << '\n'; 3157 s << "\tflags = " << getPipelineTessellationStateCreateFlagsStr(value.flags) << '\n'; 3158 s << "\tpatchControlPoints = " << value.patchControlPoints << '\n'; 3159 s << '}'; 3160 return s; 3161} 3162 3163std::ostream& operator<< (std::ostream& s, const VkViewport& value) 3164{ 3165 s << "VkViewport = {\n"; 3166 s << "\tx = " << value.x << '\n'; 3167 s << "\ty = " << value.y << '\n'; 3168 s << "\twidth = " << value.width << '\n'; 3169 s << "\theight = " << value.height << '\n'; 3170 s << "\tminDepth = " << value.minDepth << '\n'; 3171 s << "\tmaxDepth = " << value.maxDepth << '\n'; 3172 s << '}'; 3173 return s; 3174} 3175 3176std::ostream& operator<< (std::ostream& s, const VkOffset2D& value) 3177{ 3178 s << "VkOffset2D = {\n"; 3179 s << "\tx = " << value.x << '\n'; 3180 s << "\ty = " << value.y << '\n'; 3181 s << '}'; 3182 return s; 3183} 3184 3185std::ostream& operator<< (std::ostream& s, const VkExtent2D& value) 3186{ 3187 s << "VkExtent2D = {\n"; 3188 s << "\twidth = " << value.width << '\n'; 3189 s << "\theight = " << value.height << '\n'; 3190 s << '}'; 3191 return s; 3192} 3193 3194std::ostream& operator<< (std::ostream& s, const VkRect2D& value) 3195{ 3196 s << "VkRect2D = {\n"; 3197 s << "\toffset = " << value.offset << '\n'; 3198 s << "\textent = " << value.extent << '\n'; 3199 s << '}'; 3200 return s; 3201} 3202 3203std::ostream& operator<< (std::ostream& s, const VkPipelineViewportStateCreateInfo& value) 3204{ 3205 s << "VkPipelineViewportStateCreateInfo = {\n"; 3206 s << "\tsType = " << value.sType << '\n'; 3207 s << "\tpNext = " << value.pNext << '\n'; 3208 s << "\tflags = " << getPipelineViewportStateCreateFlagsStr(value.flags) << '\n'; 3209 s << "\tviewportCount = " << value.viewportCount << '\n'; 3210 s << "\tpViewports = " << value.pViewports << '\n'; 3211 s << "\tscissorCount = " << value.scissorCount << '\n'; 3212 s << "\tpScissors = " << value.pScissors << '\n'; 3213 s << '}'; 3214 return s; 3215} 3216 3217std::ostream& operator<< (std::ostream& s, const VkPipelineRasterizationStateCreateInfo& value) 3218{ 3219 s << "VkPipelineRasterizationStateCreateInfo = {\n"; 3220 s << "\tsType = " << value.sType << '\n'; 3221 s << "\tpNext = " << value.pNext << '\n'; 3222 s << "\tflags = " << getPipelineRasterizationStateCreateFlagsStr(value.flags) << '\n'; 3223 s << "\tdepthClampEnable = " << value.depthClampEnable << '\n'; 3224 s << "\trasterizerDiscardEnable = " << value.rasterizerDiscardEnable << '\n'; 3225 s << "\tpolygonMode = " << value.polygonMode << '\n'; 3226 s << "\tcullMode = " << getCullModeFlagsStr(value.cullMode) << '\n'; 3227 s << "\tfrontFace = " << value.frontFace << '\n'; 3228 s << "\tdepthBiasEnable = " << value.depthBiasEnable << '\n'; 3229 s << "\tdepthBiasConstantFactor = " << value.depthBiasConstantFactor << '\n'; 3230 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n'; 3231 s << "\tdepthBiasSlopeFactor = " << value.depthBiasSlopeFactor << '\n'; 3232 s << "\tlineWidth = " << value.lineWidth << '\n'; 3233 s << '}'; 3234 return s; 3235} 3236 3237std::ostream& operator<< (std::ostream& s, const VkPipelineMultisampleStateCreateInfo& value) 3238{ 3239 s << "VkPipelineMultisampleStateCreateInfo = {\n"; 3240 s << "\tsType = " << value.sType << '\n'; 3241 s << "\tpNext = " << value.pNext << '\n'; 3242 s << "\tflags = " << getPipelineMultisampleStateCreateFlagsStr(value.flags) << '\n'; 3243 s << "\trasterizationSamples = " << value.rasterizationSamples << '\n'; 3244 s << "\tsampleShadingEnable = " << value.sampleShadingEnable << '\n'; 3245 s << "\tminSampleShading = " << value.minSampleShading << '\n'; 3246 s << "\tpSampleMask = " << value.pSampleMask << '\n'; 3247 s << "\talphaToCoverageEnable = " << value.alphaToCoverageEnable << '\n'; 3248 s << "\talphaToOneEnable = " << value.alphaToOneEnable << '\n'; 3249 s << '}'; 3250 return s; 3251} 3252 3253std::ostream& operator<< (std::ostream& s, const VkStencilOpState& value) 3254{ 3255 s << "VkStencilOpState = {\n"; 3256 s << "\tfailOp = " << value.failOp << '\n'; 3257 s << "\tpassOp = " << value.passOp << '\n'; 3258 s << "\tdepthFailOp = " << value.depthFailOp << '\n'; 3259 s << "\tcompareOp = " << value.compareOp << '\n'; 3260 s << "\tcompareMask = " << value.compareMask << '\n'; 3261 s << "\twriteMask = " << value.writeMask << '\n'; 3262 s << "\treference = " << value.reference << '\n'; 3263 s << '}'; 3264 return s; 3265} 3266 3267std::ostream& operator<< (std::ostream& s, const VkPipelineDepthStencilStateCreateInfo& value) 3268{ 3269 s << "VkPipelineDepthStencilStateCreateInfo = {\n"; 3270 s << "\tsType = " << value.sType << '\n'; 3271 s << "\tpNext = " << value.pNext << '\n'; 3272 s << "\tflags = " << getPipelineDepthStencilStateCreateFlagsStr(value.flags) << '\n'; 3273 s << "\tdepthTestEnable = " << value.depthTestEnable << '\n'; 3274 s << "\tdepthWriteEnable = " << value.depthWriteEnable << '\n'; 3275 s << "\tdepthCompareOp = " << value.depthCompareOp << '\n'; 3276 s << "\tdepthBoundsTestEnable = " << value.depthBoundsTestEnable << '\n'; 3277 s << "\tstencilTestEnable = " << value.stencilTestEnable << '\n'; 3278 s << "\tfront = " << value.front << '\n'; 3279 s << "\tback = " << value.back << '\n'; 3280 s << "\tminDepthBounds = " << value.minDepthBounds << '\n'; 3281 s << "\tmaxDepthBounds = " << value.maxDepthBounds << '\n'; 3282 s << '}'; 3283 return s; 3284} 3285 3286std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendAttachmentState& value) 3287{ 3288 s << "VkPipelineColorBlendAttachmentState = {\n"; 3289 s << "\tblendEnable = " << value.blendEnable << '\n'; 3290 s << "\tsrcColorBlendFactor = " << value.srcColorBlendFactor << '\n'; 3291 s << "\tdstColorBlendFactor = " << value.dstColorBlendFactor << '\n'; 3292 s << "\tcolorBlendOp = " << value.colorBlendOp << '\n'; 3293 s << "\tsrcAlphaBlendFactor = " << value.srcAlphaBlendFactor << '\n'; 3294 s << "\tdstAlphaBlendFactor = " << value.dstAlphaBlendFactor << '\n'; 3295 s << "\talphaBlendOp = " << value.alphaBlendOp << '\n'; 3296 s << "\tcolorWriteMask = " << getColorComponentFlagsStr(value.colorWriteMask) << '\n'; 3297 s << '}'; 3298 return s; 3299} 3300 3301std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendStateCreateInfo& value) 3302{ 3303 s << "VkPipelineColorBlendStateCreateInfo = {\n"; 3304 s << "\tsType = " << value.sType << '\n'; 3305 s << "\tpNext = " << value.pNext << '\n'; 3306 s << "\tflags = " << getPipelineColorBlendStateCreateFlagsStr(value.flags) << '\n'; 3307 s << "\tlogicOpEnable = " << value.logicOpEnable << '\n'; 3308 s << "\tlogicOp = " << value.logicOp << '\n'; 3309 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 3310 s << "\tpAttachments = " << value.pAttachments << '\n'; 3311 s << "\tblendConstants = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.blendConstants), DE_ARRAY_END(value.blendConstants)) << '\n'; 3312 s << '}'; 3313 return s; 3314} 3315 3316std::ostream& operator<< (std::ostream& s, const VkPipelineDynamicStateCreateInfo& value) 3317{ 3318 s << "VkPipelineDynamicStateCreateInfo = {\n"; 3319 s << "\tsType = " << value.sType << '\n'; 3320 s << "\tpNext = " << value.pNext << '\n'; 3321 s << "\tflags = " << getPipelineDynamicStateCreateFlagsStr(value.flags) << '\n'; 3322 s << "\tdynamicStateCount = " << value.dynamicStateCount << '\n'; 3323 s << "\tpDynamicStates = " << value.pDynamicStates << '\n'; 3324 s << '}'; 3325 return s; 3326} 3327 3328std::ostream& operator<< (std::ostream& s, const VkGraphicsPipelineCreateInfo& value) 3329{ 3330 s << "VkGraphicsPipelineCreateInfo = {\n"; 3331 s << "\tsType = " << value.sType << '\n'; 3332 s << "\tpNext = " << value.pNext << '\n'; 3333 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n'; 3334 s << "\tstageCount = " << value.stageCount << '\n'; 3335 s << "\tpStages = " << value.pStages << '\n'; 3336 s << "\tpVertexInputState = " << value.pVertexInputState << '\n'; 3337 s << "\tpInputAssemblyState = " << value.pInputAssemblyState << '\n'; 3338 s << "\tpTessellationState = " << value.pTessellationState << '\n'; 3339 s << "\tpViewportState = " << value.pViewportState << '\n'; 3340 s << "\tpRasterizationState = " << value.pRasterizationState << '\n'; 3341 s << "\tpMultisampleState = " << value.pMultisampleState << '\n'; 3342 s << "\tpDepthStencilState = " << value.pDepthStencilState << '\n'; 3343 s << "\tpColorBlendState = " << value.pColorBlendState << '\n'; 3344 s << "\tpDynamicState = " << value.pDynamicState << '\n'; 3345 s << "\tlayout = " << value.layout << '\n'; 3346 s << "\trenderPass = " << value.renderPass << '\n'; 3347 s << "\tsubpass = " << value.subpass << '\n'; 3348 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n'; 3349 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n'; 3350 s << '}'; 3351 return s; 3352} 3353 3354std::ostream& operator<< (std::ostream& s, const VkComputePipelineCreateInfo& value) 3355{ 3356 s << "VkComputePipelineCreateInfo = {\n"; 3357 s << "\tsType = " << value.sType << '\n'; 3358 s << "\tpNext = " << value.pNext << '\n'; 3359 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n'; 3360 s << "\tstage = " << value.stage << '\n'; 3361 s << "\tlayout = " << value.layout << '\n'; 3362 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n'; 3363 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n'; 3364 s << '}'; 3365 return s; 3366} 3367 3368std::ostream& operator<< (std::ostream& s, const VkPushConstantRange& value) 3369{ 3370 s << "VkPushConstantRange = {\n"; 3371 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n'; 3372 s << "\toffset = " << value.offset << '\n'; 3373 s << "\tsize = " << value.size << '\n'; 3374 s << '}'; 3375 return s; 3376} 3377 3378std::ostream& operator<< (std::ostream& s, const VkPipelineLayoutCreateInfo& value) 3379{ 3380 s << "VkPipelineLayoutCreateInfo = {\n"; 3381 s << "\tsType = " << value.sType << '\n'; 3382 s << "\tpNext = " << value.pNext << '\n'; 3383 s << "\tflags = " << getPipelineLayoutCreateFlagsStr(value.flags) << '\n'; 3384 s << "\tsetLayoutCount = " << value.setLayoutCount << '\n'; 3385 s << "\tpSetLayouts = " << value.pSetLayouts << '\n'; 3386 s << "\tpushConstantRangeCount = " << value.pushConstantRangeCount << '\n'; 3387 s << "\tpPushConstantRanges = " << value.pPushConstantRanges << '\n'; 3388 s << '}'; 3389 return s; 3390} 3391 3392std::ostream& operator<< (std::ostream& s, const VkSamplerCreateInfo& value) 3393{ 3394 s << "VkSamplerCreateInfo = {\n"; 3395 s << "\tsType = " << value.sType << '\n'; 3396 s << "\tpNext = " << value.pNext << '\n'; 3397 s << "\tflags = " << getSamplerCreateFlagsStr(value.flags) << '\n'; 3398 s << "\tmagFilter = " << value.magFilter << '\n'; 3399 s << "\tminFilter = " << value.minFilter << '\n'; 3400 s << "\tmipmapMode = " << value.mipmapMode << '\n'; 3401 s << "\taddressModeU = " << value.addressModeU << '\n'; 3402 s << "\taddressModeV = " << value.addressModeV << '\n'; 3403 s << "\taddressModeW = " << value.addressModeW << '\n'; 3404 s << "\tmipLodBias = " << value.mipLodBias << '\n'; 3405 s << "\tanisotropyEnable = " << value.anisotropyEnable << '\n'; 3406 s << "\tmaxAnisotropy = " << value.maxAnisotropy << '\n'; 3407 s << "\tcompareEnable = " << value.compareEnable << '\n'; 3408 s << "\tcompareOp = " << value.compareOp << '\n'; 3409 s << "\tminLod = " << value.minLod << '\n'; 3410 s << "\tmaxLod = " << value.maxLod << '\n'; 3411 s << "\tborderColor = " << value.borderColor << '\n'; 3412 s << "\tunnormalizedCoordinates = " << value.unnormalizedCoordinates << '\n'; 3413 s << '}'; 3414 return s; 3415} 3416 3417std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutBinding& value) 3418{ 3419 s << "VkDescriptorSetLayoutBinding = {\n"; 3420 s << "\tbinding = " << value.binding << '\n'; 3421 s << "\tdescriptorType = " << value.descriptorType << '\n'; 3422 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 3423 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n'; 3424 s << "\tpImmutableSamplers = " << value.pImmutableSamplers << '\n'; 3425 s << '}'; 3426 return s; 3427} 3428 3429std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutCreateInfo& value) 3430{ 3431 s << "VkDescriptorSetLayoutCreateInfo = {\n"; 3432 s << "\tsType = " << value.sType << '\n'; 3433 s << "\tpNext = " << value.pNext << '\n'; 3434 s << "\tflags = " << getDescriptorSetLayoutCreateFlagsStr(value.flags) << '\n'; 3435 s << "\tbindingCount = " << value.bindingCount << '\n'; 3436 s << "\tpBindings = " << value.pBindings << '\n'; 3437 s << '}'; 3438 return s; 3439} 3440 3441std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolSize& value) 3442{ 3443 s << "VkDescriptorPoolSize = {\n"; 3444 s << "\ttype = " << value.type << '\n'; 3445 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 3446 s << '}'; 3447 return s; 3448} 3449 3450std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolCreateInfo& value) 3451{ 3452 s << "VkDescriptorPoolCreateInfo = {\n"; 3453 s << "\tsType = " << value.sType << '\n'; 3454 s << "\tpNext = " << value.pNext << '\n'; 3455 s << "\tflags = " << getDescriptorPoolCreateFlagsStr(value.flags) << '\n'; 3456 s << "\tmaxSets = " << value.maxSets << '\n'; 3457 s << "\tpoolSizeCount = " << value.poolSizeCount << '\n'; 3458 s << "\tpPoolSizes = " << value.pPoolSizes << '\n'; 3459 s << '}'; 3460 return s; 3461} 3462 3463std::ostream& operator<< (std::ostream& s, const VkDescriptorSetAllocateInfo& value) 3464{ 3465 s << "VkDescriptorSetAllocateInfo = {\n"; 3466 s << "\tsType = " << value.sType << '\n'; 3467 s << "\tpNext = " << value.pNext << '\n'; 3468 s << "\tdescriptorPool = " << value.descriptorPool << '\n'; 3469 s << "\tdescriptorSetCount = " << value.descriptorSetCount << '\n'; 3470 s << "\tpSetLayouts = " << value.pSetLayouts << '\n'; 3471 s << '}'; 3472 return s; 3473} 3474 3475std::ostream& operator<< (std::ostream& s, const VkDescriptorImageInfo& value) 3476{ 3477 s << "VkDescriptorImageInfo = {\n"; 3478 s << "\tsampler = " << value.sampler << '\n'; 3479 s << "\timageView = " << value.imageView << '\n'; 3480 s << "\timageLayout = " << value.imageLayout << '\n'; 3481 s << '}'; 3482 return s; 3483} 3484 3485std::ostream& operator<< (std::ostream& s, const VkDescriptorBufferInfo& value) 3486{ 3487 s << "VkDescriptorBufferInfo = {\n"; 3488 s << "\tbuffer = " << value.buffer << '\n'; 3489 s << "\toffset = " << value.offset << '\n'; 3490 s << "\trange = " << value.range << '\n'; 3491 s << '}'; 3492 return s; 3493} 3494 3495std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSet& value) 3496{ 3497 s << "VkWriteDescriptorSet = {\n"; 3498 s << "\tsType = " << value.sType << '\n'; 3499 s << "\tpNext = " << value.pNext << '\n'; 3500 s << "\tdstSet = " << value.dstSet << '\n'; 3501 s << "\tdstBinding = " << value.dstBinding << '\n'; 3502 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 3503 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 3504 s << "\tdescriptorType = " << value.descriptorType << '\n'; 3505 s << "\tpImageInfo = " << value.pImageInfo << '\n'; 3506 s << "\tpBufferInfo = " << value.pBufferInfo << '\n'; 3507 s << "\tpTexelBufferView = " << value.pTexelBufferView << '\n'; 3508 s << '}'; 3509 return s; 3510} 3511 3512std::ostream& operator<< (std::ostream& s, const VkCopyDescriptorSet& value) 3513{ 3514 s << "VkCopyDescriptorSet = {\n"; 3515 s << "\tsType = " << value.sType << '\n'; 3516 s << "\tpNext = " << value.pNext << '\n'; 3517 s << "\tsrcSet = " << value.srcSet << '\n'; 3518 s << "\tsrcBinding = " << value.srcBinding << '\n'; 3519 s << "\tsrcArrayElement = " << value.srcArrayElement << '\n'; 3520 s << "\tdstSet = " << value.dstSet << '\n'; 3521 s << "\tdstBinding = " << value.dstBinding << '\n'; 3522 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 3523 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 3524 s << '}'; 3525 return s; 3526} 3527 3528std::ostream& operator<< (std::ostream& s, const VkFramebufferCreateInfo& value) 3529{ 3530 s << "VkFramebufferCreateInfo = {\n"; 3531 s << "\tsType = " << value.sType << '\n'; 3532 s << "\tpNext = " << value.pNext << '\n'; 3533 s << "\tflags = " << getFramebufferCreateFlagsStr(value.flags) << '\n'; 3534 s << "\trenderPass = " << value.renderPass << '\n'; 3535 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 3536 s << "\tpAttachments = " << value.pAttachments << '\n'; 3537 s << "\twidth = " << value.width << '\n'; 3538 s << "\theight = " << value.height << '\n'; 3539 s << "\tlayers = " << value.layers << '\n'; 3540 s << '}'; 3541 return s; 3542} 3543 3544std::ostream& operator<< (std::ostream& s, const VkAttachmentDescription& value) 3545{ 3546 s << "VkAttachmentDescription = {\n"; 3547 s << "\tflags = " << getAttachmentDescriptionFlagsStr(value.flags) << '\n'; 3548 s << "\tformat = " << value.format << '\n'; 3549 s << "\tsamples = " << value.samples << '\n'; 3550 s << "\tloadOp = " << value.loadOp << '\n'; 3551 s << "\tstoreOp = " << value.storeOp << '\n'; 3552 s << "\tstencilLoadOp = " << value.stencilLoadOp << '\n'; 3553 s << "\tstencilStoreOp = " << value.stencilStoreOp << '\n'; 3554 s << "\tinitialLayout = " << value.initialLayout << '\n'; 3555 s << "\tfinalLayout = " << value.finalLayout << '\n'; 3556 s << '}'; 3557 return s; 3558} 3559 3560std::ostream& operator<< (std::ostream& s, const VkAttachmentReference& value) 3561{ 3562 s << "VkAttachmentReference = {\n"; 3563 s << "\tattachment = " << value.attachment << '\n'; 3564 s << "\tlayout = " << value.layout << '\n'; 3565 s << '}'; 3566 return s; 3567} 3568 3569std::ostream& operator<< (std::ostream& s, const VkSubpassDescription& value) 3570{ 3571 s << "VkSubpassDescription = {\n"; 3572 s << "\tflags = " << getSubpassDescriptionFlagsStr(value.flags) << '\n'; 3573 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 3574 s << "\tinputAttachmentCount = " << value.inputAttachmentCount << '\n'; 3575 s << "\tpInputAttachments = " << value.pInputAttachments << '\n'; 3576 s << "\tcolorAttachmentCount = " << value.colorAttachmentCount << '\n'; 3577 s << "\tpColorAttachments = " << value.pColorAttachments << '\n'; 3578 s << "\tpResolveAttachments = " << value.pResolveAttachments << '\n'; 3579 s << "\tpDepthStencilAttachment = " << value.pDepthStencilAttachment << '\n'; 3580 s << "\tpreserveAttachmentCount = " << value.preserveAttachmentCount << '\n'; 3581 s << "\tpPreserveAttachments = " << value.pPreserveAttachments << '\n'; 3582 s << '}'; 3583 return s; 3584} 3585 3586std::ostream& operator<< (std::ostream& s, const VkSubpassDependency& value) 3587{ 3588 s << "VkSubpassDependency = {\n"; 3589 s << "\tsrcSubpass = " << value.srcSubpass << '\n'; 3590 s << "\tdstSubpass = " << value.dstSubpass << '\n'; 3591 s << "\tsrcStageMask = " << getPipelineStageFlagsStr(value.srcStageMask) << '\n'; 3592 s << "\tdstStageMask = " << getPipelineStageFlagsStr(value.dstStageMask) << '\n'; 3593 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3594 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3595 s << "\tdependencyFlags = " << getDependencyFlagsStr(value.dependencyFlags) << '\n'; 3596 s << '}'; 3597 return s; 3598} 3599 3600std::ostream& operator<< (std::ostream& s, const VkRenderPassCreateInfo& value) 3601{ 3602 s << "VkRenderPassCreateInfo = {\n"; 3603 s << "\tsType = " << value.sType << '\n'; 3604 s << "\tpNext = " << value.pNext << '\n'; 3605 s << "\tflags = " << getRenderPassCreateFlagsStr(value.flags) << '\n'; 3606 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 3607 s << "\tpAttachments = " << value.pAttachments << '\n'; 3608 s << "\tsubpassCount = " << value.subpassCount << '\n'; 3609 s << "\tpSubpasses = " << value.pSubpasses << '\n'; 3610 s << "\tdependencyCount = " << value.dependencyCount << '\n'; 3611 s << "\tpDependencies = " << value.pDependencies << '\n'; 3612 s << '}'; 3613 return s; 3614} 3615 3616std::ostream& operator<< (std::ostream& s, const VkCommandPoolCreateInfo& value) 3617{ 3618 s << "VkCommandPoolCreateInfo = {\n"; 3619 s << "\tsType = " << value.sType << '\n'; 3620 s << "\tpNext = " << value.pNext << '\n'; 3621 s << "\tflags = " << getCommandPoolCreateFlagsStr(value.flags) << '\n'; 3622 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n'; 3623 s << '}'; 3624 return s; 3625} 3626 3627std::ostream& operator<< (std::ostream& s, const VkCommandBufferAllocateInfo& value) 3628{ 3629 s << "VkCommandBufferAllocateInfo = {\n"; 3630 s << "\tsType = " << value.sType << '\n'; 3631 s << "\tpNext = " << value.pNext << '\n'; 3632 s << "\tcommandPool = " << value.commandPool << '\n'; 3633 s << "\tlevel = " << value.level << '\n'; 3634 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n'; 3635 s << '}'; 3636 return s; 3637} 3638 3639std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceInfo& value) 3640{ 3641 s << "VkCommandBufferInheritanceInfo = {\n"; 3642 s << "\tsType = " << value.sType << '\n'; 3643 s << "\tpNext = " << value.pNext << '\n'; 3644 s << "\trenderPass = " << value.renderPass << '\n'; 3645 s << "\tsubpass = " << value.subpass << '\n'; 3646 s << "\tframebuffer = " << value.framebuffer << '\n'; 3647 s << "\tocclusionQueryEnable = " << value.occlusionQueryEnable << '\n'; 3648 s << "\tqueryFlags = " << getQueryControlFlagsStr(value.queryFlags) << '\n'; 3649 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n'; 3650 s << '}'; 3651 return s; 3652} 3653 3654std::ostream& operator<< (std::ostream& s, const VkCommandBufferBeginInfo& value) 3655{ 3656 s << "VkCommandBufferBeginInfo = {\n"; 3657 s << "\tsType = " << value.sType << '\n'; 3658 s << "\tpNext = " << value.pNext << '\n'; 3659 s << "\tflags = " << getCommandBufferUsageFlagsStr(value.flags) << '\n'; 3660 s << "\tpInheritanceInfo = " << value.pInheritanceInfo << '\n'; 3661 s << '}'; 3662 return s; 3663} 3664 3665std::ostream& operator<< (std::ostream& s, const VkBufferCopy& value) 3666{ 3667 s << "VkBufferCopy = {\n"; 3668 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3669 s << "\tdstOffset = " << value.dstOffset << '\n'; 3670 s << "\tsize = " << value.size << '\n'; 3671 s << '}'; 3672 return s; 3673} 3674 3675std::ostream& operator<< (std::ostream& s, const VkImageSubresourceLayers& value) 3676{ 3677 s << "VkImageSubresourceLayers = {\n"; 3678 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3679 s << "\tmipLevel = " << value.mipLevel << '\n'; 3680 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 3681 s << "\tlayerCount = " << value.layerCount << '\n'; 3682 s << '}'; 3683 return s; 3684} 3685 3686std::ostream& operator<< (std::ostream& s, const VkImageCopy& value) 3687{ 3688 s << "VkImageCopy = {\n"; 3689 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3690 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3691 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3692 s << "\tdstOffset = " << value.dstOffset << '\n'; 3693 s << "\textent = " << value.extent << '\n'; 3694 s << '}'; 3695 return s; 3696} 3697 3698std::ostream& operator<< (std::ostream& s, const VkImageBlit& value) 3699{ 3700 s << "VkImageBlit = {\n"; 3701 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3702 s << "\tsrcOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.srcOffsets), DE_ARRAY_END(value.srcOffsets)) << '\n'; 3703 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3704 s << "\tdstOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.dstOffsets), DE_ARRAY_END(value.dstOffsets)) << '\n'; 3705 s << '}'; 3706 return s; 3707} 3708 3709std::ostream& operator<< (std::ostream& s, const VkBufferImageCopy& value) 3710{ 3711 s << "VkBufferImageCopy = {\n"; 3712 s << "\tbufferOffset = " << value.bufferOffset << '\n'; 3713 s << "\tbufferRowLength = " << value.bufferRowLength << '\n'; 3714 s << "\tbufferImageHeight = " << value.bufferImageHeight << '\n'; 3715 s << "\timageSubresource = " << value.imageSubresource << '\n'; 3716 s << "\timageOffset = " << value.imageOffset << '\n'; 3717 s << "\timageExtent = " << value.imageExtent << '\n'; 3718 s << '}'; 3719 return s; 3720} 3721 3722std::ostream& operator<< (std::ostream& s, const VkClearColorValue& value) 3723{ 3724 s << "VkClearColorValue = {\n"; 3725 s << "\tfloat32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.float32), DE_ARRAY_END(value.float32)) << '\n'; 3726 s << "\tint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.int32), DE_ARRAY_END(value.int32)) << '\n'; 3727 s << "\tuint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.uint32), DE_ARRAY_END(value.uint32)) << '\n'; 3728 s << '}'; 3729 return s; 3730} 3731 3732std::ostream& operator<< (std::ostream& s, const VkClearDepthStencilValue& value) 3733{ 3734 s << "VkClearDepthStencilValue = {\n"; 3735 s << "\tdepth = " << value.depth << '\n'; 3736 s << "\tstencil = " << value.stencil << '\n'; 3737 s << '}'; 3738 return s; 3739} 3740 3741std::ostream& operator<< (std::ostream& s, const VkClearValue& value) 3742{ 3743 s << "VkClearValue = {\n"; 3744 s << "\tcolor = " << value.color << '\n'; 3745 s << "\tdepthStencil = " << value.depthStencil << '\n'; 3746 s << '}'; 3747 return s; 3748} 3749 3750std::ostream& operator<< (std::ostream& s, const VkClearAttachment& value) 3751{ 3752 s << "VkClearAttachment = {\n"; 3753 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3754 s << "\tcolorAttachment = " << value.colorAttachment << '\n'; 3755 s << "\tclearValue = " << value.clearValue << '\n'; 3756 s << '}'; 3757 return s; 3758} 3759 3760std::ostream& operator<< (std::ostream& s, const VkClearRect& value) 3761{ 3762 s << "VkClearRect = {\n"; 3763 s << "\trect = " << value.rect << '\n'; 3764 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 3765 s << "\tlayerCount = " << value.layerCount << '\n'; 3766 s << '}'; 3767 return s; 3768} 3769 3770std::ostream& operator<< (std::ostream& s, const VkImageResolve& value) 3771{ 3772 s << "VkImageResolve = {\n"; 3773 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3774 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3775 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3776 s << "\tdstOffset = " << value.dstOffset << '\n'; 3777 s << "\textent = " << value.extent << '\n'; 3778 s << '}'; 3779 return s; 3780} 3781 3782std::ostream& operator<< (std::ostream& s, const VkMemoryBarrier& value) 3783{ 3784 s << "VkMemoryBarrier = {\n"; 3785 s << "\tsType = " << value.sType << '\n'; 3786 s << "\tpNext = " << value.pNext << '\n'; 3787 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3788 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3789 s << '}'; 3790 return s; 3791} 3792 3793std::ostream& operator<< (std::ostream& s, const VkBufferMemoryBarrier& value) 3794{ 3795 s << "VkBufferMemoryBarrier = {\n"; 3796 s << "\tsType = " << value.sType << '\n'; 3797 s << "\tpNext = " << value.pNext << '\n'; 3798 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3799 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3800 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n'; 3801 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n'; 3802 s << "\tbuffer = " << value.buffer << '\n'; 3803 s << "\toffset = " << value.offset << '\n'; 3804 s << "\tsize = " << value.size << '\n'; 3805 s << '}'; 3806 return s; 3807} 3808 3809std::ostream& operator<< (std::ostream& s, const VkImageMemoryBarrier& value) 3810{ 3811 s << "VkImageMemoryBarrier = {\n"; 3812 s << "\tsType = " << value.sType << '\n'; 3813 s << "\tpNext = " << value.pNext << '\n'; 3814 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3815 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3816 s << "\toldLayout = " << value.oldLayout << '\n'; 3817 s << "\tnewLayout = " << value.newLayout << '\n'; 3818 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n'; 3819 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n'; 3820 s << "\timage = " << value.image << '\n'; 3821 s << "\tsubresourceRange = " << value.subresourceRange << '\n'; 3822 s << '}'; 3823 return s; 3824} 3825 3826std::ostream& operator<< (std::ostream& s, const VkRenderPassBeginInfo& value) 3827{ 3828 s << "VkRenderPassBeginInfo = {\n"; 3829 s << "\tsType = " << value.sType << '\n'; 3830 s << "\tpNext = " << value.pNext << '\n'; 3831 s << "\trenderPass = " << value.renderPass << '\n'; 3832 s << "\tframebuffer = " << value.framebuffer << '\n'; 3833 s << "\trenderArea = " << value.renderArea << '\n'; 3834 s << "\tclearValueCount = " << value.clearValueCount << '\n'; 3835 s << "\tpClearValues = " << value.pClearValues << '\n'; 3836 s << '}'; 3837 return s; 3838} 3839 3840std::ostream& operator<< (std::ostream& s, const VkDispatchIndirectCommand& value) 3841{ 3842 s << "VkDispatchIndirectCommand = {\n"; 3843 s << "\tx = " << value.x << '\n'; 3844 s << "\ty = " << value.y << '\n'; 3845 s << "\tz = " << value.z << '\n'; 3846 s << '}'; 3847 return s; 3848} 3849 3850std::ostream& operator<< (std::ostream& s, const VkDrawIndexedIndirectCommand& value) 3851{ 3852 s << "VkDrawIndexedIndirectCommand = {\n"; 3853 s << "\tindexCount = " << value.indexCount << '\n'; 3854 s << "\tinstanceCount = " << value.instanceCount << '\n'; 3855 s << "\tfirstIndex = " << value.firstIndex << '\n'; 3856 s << "\tvertexOffset = " << value.vertexOffset << '\n'; 3857 s << "\tfirstInstance = " << value.firstInstance << '\n'; 3858 s << '}'; 3859 return s; 3860} 3861 3862std::ostream& operator<< (std::ostream& s, const VkDrawIndirectCommand& value) 3863{ 3864 s << "VkDrawIndirectCommand = {\n"; 3865 s << "\tvertexCount = " << value.vertexCount << '\n'; 3866 s << "\tinstanceCount = " << value.instanceCount << '\n'; 3867 s << "\tfirstVertex = " << value.firstVertex << '\n'; 3868 s << "\tfirstInstance = " << value.firstInstance << '\n'; 3869 s << '}'; 3870 return s; 3871} 3872 3873std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSubgroupProperties& value) 3874{ 3875 s << "VkPhysicalDeviceSubgroupProperties = {\n"; 3876 s << "\tsType = " << value.sType << '\n'; 3877 s << "\tpNext = " << value.pNext << '\n'; 3878 s << "\tsubgroupSize = " << value.subgroupSize << '\n'; 3879 s << "\tsupportedStages = " << getShaderStageFlagsStr(value.supportedStages) << '\n'; 3880 s << "\tsupportedOperations = " << getSubgroupFeatureFlagsStr(value.supportedOperations) << '\n'; 3881 s << "\tquadOperationsInAllStages = " << value.quadOperationsInAllStages << '\n'; 3882 s << '}'; 3883 return s; 3884} 3885 3886std::ostream& operator<< (std::ostream& s, const VkBindBufferMemoryInfo& value) 3887{ 3888 s << "VkBindBufferMemoryInfo = {\n"; 3889 s << "\tsType = " << value.sType << '\n'; 3890 s << "\tpNext = " << value.pNext << '\n'; 3891 s << "\tbuffer = " << value.buffer << '\n'; 3892 s << "\tmemory = " << value.memory << '\n'; 3893 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 3894 s << '}'; 3895 return s; 3896} 3897 3898std::ostream& operator<< (std::ostream& s, const VkBindImageMemoryInfo& value) 3899{ 3900 s << "VkBindImageMemoryInfo = {\n"; 3901 s << "\tsType = " << value.sType << '\n'; 3902 s << "\tpNext = " << value.pNext << '\n'; 3903 s << "\timage = " << value.image << '\n'; 3904 s << "\tmemory = " << value.memory << '\n'; 3905 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 3906 s << '}'; 3907 return s; 3908} 3909 3910std::ostream& operator<< (std::ostream& s, const VkPhysicalDevice8BitStorageFeaturesKHR& value) 3911{ 3912 s << "VkPhysicalDevice8BitStorageFeaturesKHR = {\n"; 3913 s << "\tsType = " << value.sType << '\n'; 3914 s << "\tpNext = " << value.pNext << '\n'; 3915 s << "\tstorageBuffer8BitAccess = " << value.storageBuffer8BitAccess << '\n'; 3916 s << "\tuniformAndStorageBuffer8BitAccess = " << value.uniformAndStorageBuffer8BitAccess << '\n'; 3917 s << "\tstoragePushConstant8 = " << value.storagePushConstant8 << '\n'; 3918 s << '}'; 3919 return s; 3920} 3921 3922std::ostream& operator<< (std::ostream& s, const VkPhysicalDevice16BitStorageFeatures& value) 3923{ 3924 s << "VkPhysicalDevice16BitStorageFeatures = {\n"; 3925 s << "\tsType = " << value.sType << '\n'; 3926 s << "\tpNext = " << value.pNext << '\n'; 3927 s << "\tstorageBuffer16BitAccess = " << value.storageBuffer16BitAccess << '\n'; 3928 s << "\tuniformAndStorageBuffer16BitAccess = " << value.uniformAndStorageBuffer16BitAccess << '\n'; 3929 s << "\tstoragePushConstant16 = " << value.storagePushConstant16 << '\n'; 3930 s << "\tstorageInputOutput16 = " << value.storageInputOutput16 << '\n'; 3931 s << '}'; 3932 return s; 3933} 3934 3935std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedRequirements& value) 3936{ 3937 s << "VkMemoryDedicatedRequirements = {\n"; 3938 s << "\tsType = " << value.sType << '\n'; 3939 s << "\tpNext = " << value.pNext << '\n'; 3940 s << "\tprefersDedicatedAllocation = " << value.prefersDedicatedAllocation << '\n'; 3941 s << "\trequiresDedicatedAllocation = " << value.requiresDedicatedAllocation << '\n'; 3942 s << '}'; 3943 return s; 3944} 3945 3946std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedAllocateInfo& value) 3947{ 3948 s << "VkMemoryDedicatedAllocateInfo = {\n"; 3949 s << "\tsType = " << value.sType << '\n'; 3950 s << "\tpNext = " << value.pNext << '\n'; 3951 s << "\timage = " << value.image << '\n'; 3952 s << "\tbuffer = " << value.buffer << '\n'; 3953 s << '}'; 3954 return s; 3955} 3956 3957std::ostream& operator<< (std::ostream& s, const VkMemoryAllocateFlagsInfo& value) 3958{ 3959 s << "VkMemoryAllocateFlagsInfo = {\n"; 3960 s << "\tsType = " << value.sType << '\n'; 3961 s << "\tpNext = " << value.pNext << '\n'; 3962 s << "\tflags = " << getMemoryAllocateFlagsStr(value.flags) << '\n'; 3963 s << "\tdeviceMask = " << value.deviceMask << '\n'; 3964 s << '}'; 3965 return s; 3966} 3967 3968std::ostream& operator<< (std::ostream& s, const VkDeviceGroupRenderPassBeginInfo& value) 3969{ 3970 s << "VkDeviceGroupRenderPassBeginInfo = {\n"; 3971 s << "\tsType = " << value.sType << '\n'; 3972 s << "\tpNext = " << value.pNext << '\n'; 3973 s << "\tdeviceMask = " << value.deviceMask << '\n'; 3974 s << "\tdeviceRenderAreaCount = " << value.deviceRenderAreaCount << '\n'; 3975 s << "\tpDeviceRenderAreas = " << value.pDeviceRenderAreas << '\n'; 3976 s << '}'; 3977 return s; 3978} 3979 3980std::ostream& operator<< (std::ostream& s, const VkDeviceGroupCommandBufferBeginInfo& value) 3981{ 3982 s << "VkDeviceGroupCommandBufferBeginInfo = {\n"; 3983 s << "\tsType = " << value.sType << '\n'; 3984 s << "\tpNext = " << value.pNext << '\n'; 3985 s << "\tdeviceMask = " << value.deviceMask << '\n'; 3986 s << '}'; 3987 return s; 3988} 3989 3990std::ostream& operator<< (std::ostream& s, const VkDeviceGroupSubmitInfo& value) 3991{ 3992 s << "VkDeviceGroupSubmitInfo = {\n"; 3993 s << "\tsType = " << value.sType << '\n'; 3994 s << "\tpNext = " << value.pNext << '\n'; 3995 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 3996 s << "\tpWaitSemaphoreDeviceIndices = " << value.pWaitSemaphoreDeviceIndices << '\n'; 3997 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n'; 3998 s << "\tpCommandBufferDeviceMasks = " << value.pCommandBufferDeviceMasks << '\n'; 3999 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n'; 4000 s << "\tpSignalSemaphoreDeviceIndices = " << value.pSignalSemaphoreDeviceIndices << '\n'; 4001 s << '}'; 4002 return s; 4003} 4004 4005std::ostream& operator<< (std::ostream& s, const VkDeviceGroupBindSparseInfo& value) 4006{ 4007 s << "VkDeviceGroupBindSparseInfo = {\n"; 4008 s << "\tsType = " << value.sType << '\n'; 4009 s << "\tpNext = " << value.pNext << '\n'; 4010 s << "\tresourceDeviceIndex = " << value.resourceDeviceIndex << '\n'; 4011 s << "\tmemoryDeviceIndex = " << value.memoryDeviceIndex << '\n'; 4012 s << '}'; 4013 return s; 4014} 4015 4016std::ostream& operator<< (std::ostream& s, const VkBindBufferMemoryDeviceGroupInfo& value) 4017{ 4018 s << "VkBindBufferMemoryDeviceGroupInfo = {\n"; 4019 s << "\tsType = " << value.sType << '\n'; 4020 s << "\tpNext = " << value.pNext << '\n'; 4021 s << "\tdeviceIndexCount = " << value.deviceIndexCount << '\n'; 4022 s << "\tpDeviceIndices = " << value.pDeviceIndices << '\n'; 4023 s << '}'; 4024 return s; 4025} 4026 4027std::ostream& operator<< (std::ostream& s, const VkBindImageMemoryDeviceGroupInfo& value) 4028{ 4029 s << "VkBindImageMemoryDeviceGroupInfo = {\n"; 4030 s << "\tsType = " << value.sType << '\n'; 4031 s << "\tpNext = " << value.pNext << '\n'; 4032 s << "\tdeviceIndexCount = " << value.deviceIndexCount << '\n'; 4033 s << "\tpDeviceIndices = " << value.pDeviceIndices << '\n'; 4034 s << "\tSFRRectCount = " << value.SFRRectCount << '\n'; 4035 s << "\tpSFRRects = " << value.pSFRRects << '\n'; 4036 s << '}'; 4037 return s; 4038} 4039 4040std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceGroupProperties& value) 4041{ 4042 s << "VkPhysicalDeviceGroupProperties = {\n"; 4043 s << "\tsType = " << value.sType << '\n'; 4044 s << "\tpNext = " << value.pNext << '\n'; 4045 s << "\tphysicalDeviceCount = " << value.physicalDeviceCount << '\n'; 4046 s << "\tphysicalDevices = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.physicalDevices), DE_ARRAY_END(value.physicalDevices)) << '\n'; 4047 s << "\tsubsetAllocation = " << value.subsetAllocation << '\n'; 4048 s << '}'; 4049 return s; 4050} 4051 4052std::ostream& operator<< (std::ostream& s, const VkDeviceGroupDeviceCreateInfo& value) 4053{ 4054 s << "VkDeviceGroupDeviceCreateInfo = {\n"; 4055 s << "\tsType = " << value.sType << '\n'; 4056 s << "\tpNext = " << value.pNext << '\n'; 4057 s << "\tphysicalDeviceCount = " << value.physicalDeviceCount << '\n'; 4058 s << "\tpPhysicalDevices = " << value.pPhysicalDevices << '\n'; 4059 s << '}'; 4060 return s; 4061} 4062 4063std::ostream& operator<< (std::ostream& s, const VkBufferMemoryRequirementsInfo2& value) 4064{ 4065 s << "VkBufferMemoryRequirementsInfo2 = {\n"; 4066 s << "\tsType = " << value.sType << '\n'; 4067 s << "\tpNext = " << value.pNext << '\n'; 4068 s << "\tbuffer = " << value.buffer << '\n'; 4069 s << '}'; 4070 return s; 4071} 4072 4073std::ostream& operator<< (std::ostream& s, const VkImageMemoryRequirementsInfo2& value) 4074{ 4075 s << "VkImageMemoryRequirementsInfo2 = {\n"; 4076 s << "\tsType = " << value.sType << '\n'; 4077 s << "\tpNext = " << value.pNext << '\n'; 4078 s << "\timage = " << value.image << '\n'; 4079 s << '}'; 4080 return s; 4081} 4082 4083std::ostream& operator<< (std::ostream& s, const VkImageSparseMemoryRequirementsInfo2& value) 4084{ 4085 s << "VkImageSparseMemoryRequirementsInfo2 = {\n"; 4086 s << "\tsType = " << value.sType << '\n'; 4087 s << "\tpNext = " << value.pNext << '\n'; 4088 s << "\timage = " << value.image << '\n'; 4089 s << '}'; 4090 return s; 4091} 4092 4093std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements2& value) 4094{ 4095 s << "VkMemoryRequirements2 = {\n"; 4096 s << "\tsType = " << value.sType << '\n'; 4097 s << "\tpNext = " << value.pNext << '\n'; 4098 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n'; 4099 s << '}'; 4100 return s; 4101} 4102 4103std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements2& value) 4104{ 4105 s << "VkSparseImageMemoryRequirements2 = {\n"; 4106 s << "\tsType = " << value.sType << '\n'; 4107 s << "\tpNext = " << value.pNext << '\n'; 4108 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n'; 4109 s << '}'; 4110 return s; 4111} 4112 4113std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures2& value) 4114{ 4115 s << "VkPhysicalDeviceFeatures2 = {\n"; 4116 s << "\tsType = " << value.sType << '\n'; 4117 s << "\tpNext = " << value.pNext << '\n'; 4118 s << "\tfeatures = " << value.features << '\n'; 4119 s << '}'; 4120 return s; 4121} 4122 4123std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties2& value) 4124{ 4125 s << "VkPhysicalDeviceProperties2 = {\n"; 4126 s << "\tsType = " << value.sType << '\n'; 4127 s << "\tpNext = " << value.pNext << '\n'; 4128 s << "\tproperties = " << value.properties << '\n'; 4129 s << '}'; 4130 return s; 4131} 4132 4133std::ostream& operator<< (std::ostream& s, const VkFormatProperties2& value) 4134{ 4135 s << "VkFormatProperties2 = {\n"; 4136 s << "\tsType = " << value.sType << '\n'; 4137 s << "\tpNext = " << value.pNext << '\n'; 4138 s << "\tformatProperties = " << value.formatProperties << '\n'; 4139 s << '}'; 4140 return s; 4141} 4142 4143std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties2& value) 4144{ 4145 s << "VkImageFormatProperties2 = {\n"; 4146 s << "\tsType = " << value.sType << '\n'; 4147 s << "\tpNext = " << value.pNext << '\n'; 4148 s << "\timageFormatProperties = " << value.imageFormatProperties << '\n'; 4149 s << '}'; 4150 return s; 4151} 4152 4153std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageFormatInfo2& value) 4154{ 4155 s << "VkPhysicalDeviceImageFormatInfo2 = {\n"; 4156 s << "\tsType = " << value.sType << '\n'; 4157 s << "\tpNext = " << value.pNext << '\n'; 4158 s << "\tformat = " << value.format << '\n'; 4159 s << "\ttype = " << value.type << '\n'; 4160 s << "\ttiling = " << value.tiling << '\n'; 4161 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 4162 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n'; 4163 s << '}'; 4164 return s; 4165} 4166 4167std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties2& value) 4168{ 4169 s << "VkQueueFamilyProperties2 = {\n"; 4170 s << "\tsType = " << value.sType << '\n'; 4171 s << "\tpNext = " << value.pNext << '\n'; 4172 s << "\tqueueFamilyProperties = " << value.queueFamilyProperties << '\n'; 4173 s << '}'; 4174 return s; 4175} 4176 4177std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties2& value) 4178{ 4179 s << "VkPhysicalDeviceMemoryProperties2 = {\n"; 4180 s << "\tsType = " << value.sType << '\n'; 4181 s << "\tpNext = " << value.pNext << '\n'; 4182 s << "\tmemoryProperties = " << value.memoryProperties << '\n'; 4183 s << '}'; 4184 return s; 4185} 4186 4187std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties2& value) 4188{ 4189 s << "VkSparseImageFormatProperties2 = {\n"; 4190 s << "\tsType = " << value.sType << '\n'; 4191 s << "\tpNext = " << value.pNext << '\n'; 4192 s << "\tproperties = " << value.properties << '\n'; 4193 s << '}'; 4194 return s; 4195} 4196 4197std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseImageFormatInfo2& value) 4198{ 4199 s << "VkPhysicalDeviceSparseImageFormatInfo2 = {\n"; 4200 s << "\tsType = " << value.sType << '\n'; 4201 s << "\tpNext = " << value.pNext << '\n'; 4202 s << "\tformat = " << value.format << '\n'; 4203 s << "\ttype = " << value.type << '\n'; 4204 s << "\tsamples = " << value.samples << '\n'; 4205 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 4206 s << "\ttiling = " << value.tiling << '\n'; 4207 s << '}'; 4208 return s; 4209} 4210 4211std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePointClippingProperties& value) 4212{ 4213 s << "VkPhysicalDevicePointClippingProperties = {\n"; 4214 s << "\tsType = " << value.sType << '\n'; 4215 s << "\tpNext = " << value.pNext << '\n'; 4216 s << "\tpointClippingBehavior = " << value.pointClippingBehavior << '\n'; 4217 s << '}'; 4218 return s; 4219} 4220 4221std::ostream& operator<< (std::ostream& s, const VkInputAttachmentAspectReference& value) 4222{ 4223 s << "VkInputAttachmentAspectReference = {\n"; 4224 s << "\tsubpass = " << value.subpass << '\n'; 4225 s << "\tinputAttachmentIndex = " << value.inputAttachmentIndex << '\n'; 4226 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 4227 s << '}'; 4228 return s; 4229} 4230 4231std::ostream& operator<< (std::ostream& s, const VkRenderPassInputAttachmentAspectCreateInfo& value) 4232{ 4233 s << "VkRenderPassInputAttachmentAspectCreateInfo = {\n"; 4234 s << "\tsType = " << value.sType << '\n'; 4235 s << "\tpNext = " << value.pNext << '\n'; 4236 s << "\taspectReferenceCount = " << value.aspectReferenceCount << '\n'; 4237 s << "\tpAspectReferences = " << value.pAspectReferences << '\n'; 4238 s << '}'; 4239 return s; 4240} 4241 4242std::ostream& operator<< (std::ostream& s, const VkImageViewUsageCreateInfo& value) 4243{ 4244 s << "VkImageViewUsageCreateInfo = {\n"; 4245 s << "\tsType = " << value.sType << '\n'; 4246 s << "\tpNext = " << value.pNext << '\n'; 4247 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 4248 s << '}'; 4249 return s; 4250} 4251 4252std::ostream& operator<< (std::ostream& s, const VkPipelineTessellationDomainOriginStateCreateInfo& value) 4253{ 4254 s << "VkPipelineTessellationDomainOriginStateCreateInfo = {\n"; 4255 s << "\tsType = " << value.sType << '\n'; 4256 s << "\tpNext = " << value.pNext << '\n'; 4257 s << "\tdomainOrigin = " << value.domainOrigin << '\n'; 4258 s << '}'; 4259 return s; 4260} 4261 4262std::ostream& operator<< (std::ostream& s, const VkRenderPassMultiviewCreateInfo& value) 4263{ 4264 s << "VkRenderPassMultiviewCreateInfo = {\n"; 4265 s << "\tsType = " << value.sType << '\n'; 4266 s << "\tpNext = " << value.pNext << '\n'; 4267 s << "\tsubpassCount = " << value.subpassCount << '\n'; 4268 s << "\tpViewMasks = " << value.pViewMasks << '\n'; 4269 s << "\tdependencyCount = " << value.dependencyCount << '\n'; 4270 s << "\tpViewOffsets = " << value.pViewOffsets << '\n'; 4271 s << "\tcorrelationMaskCount = " << value.correlationMaskCount << '\n'; 4272 s << "\tpCorrelationMasks = " << value.pCorrelationMasks << '\n'; 4273 s << '}'; 4274 return s; 4275} 4276 4277std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewFeatures& value) 4278{ 4279 s << "VkPhysicalDeviceMultiviewFeatures = {\n"; 4280 s << "\tsType = " << value.sType << '\n'; 4281 s << "\tpNext = " << value.pNext << '\n'; 4282 s << "\tmultiview = " << value.multiview << '\n'; 4283 s << "\tmultiviewGeometryShader = " << value.multiviewGeometryShader << '\n'; 4284 s << "\tmultiviewTessellationShader = " << value.multiviewTessellationShader << '\n'; 4285 s << '}'; 4286 return s; 4287} 4288 4289std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewProperties& value) 4290{ 4291 s << "VkPhysicalDeviceMultiviewProperties = {\n"; 4292 s << "\tsType = " << value.sType << '\n'; 4293 s << "\tpNext = " << value.pNext << '\n'; 4294 s << "\tmaxMultiviewViewCount = " << value.maxMultiviewViewCount << '\n'; 4295 s << "\tmaxMultiviewInstanceIndex = " << value.maxMultiviewInstanceIndex << '\n'; 4296 s << '}'; 4297 return s; 4298} 4299 4300std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVariablePointerFeatures& value) 4301{ 4302 s << "VkPhysicalDeviceVariablePointerFeatures = {\n"; 4303 s << "\tsType = " << value.sType << '\n'; 4304 s << "\tpNext = " << value.pNext << '\n'; 4305 s << "\tvariablePointersStorageBuffer = " << value.variablePointersStorageBuffer << '\n'; 4306 s << "\tvariablePointers = " << value.variablePointers << '\n'; 4307 s << '}'; 4308 return s; 4309} 4310 4311std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProtectedMemoryFeatures& value) 4312{ 4313 s << "VkPhysicalDeviceProtectedMemoryFeatures = {\n"; 4314 s << "\tsType = " << value.sType << '\n'; 4315 s << "\tpNext = " << value.pNext << '\n'; 4316 s << "\tprotectedMemory = " << value.protectedMemory << '\n'; 4317 s << '}'; 4318 return s; 4319} 4320 4321std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProtectedMemoryProperties& value) 4322{ 4323 s << "VkPhysicalDeviceProtectedMemoryProperties = {\n"; 4324 s << "\tsType = " << value.sType << '\n'; 4325 s << "\tpNext = " << value.pNext << '\n'; 4326 s << "\tprotectedNoFault = " << value.protectedNoFault << '\n'; 4327 s << '}'; 4328 return s; 4329} 4330 4331std::ostream& operator<< (std::ostream& s, const VkDeviceQueueInfo2& value) 4332{ 4333 s << "VkDeviceQueueInfo2 = {\n"; 4334 s << "\tsType = " << value.sType << '\n'; 4335 s << "\tpNext = " << value.pNext << '\n'; 4336 s << "\tflags = " << getDeviceQueueCreateFlagsStr(value.flags) << '\n'; 4337 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n'; 4338 s << "\tqueueIndex = " << value.queueIndex << '\n'; 4339 s << '}'; 4340 return s; 4341} 4342 4343std::ostream& operator<< (std::ostream& s, const VkProtectedSubmitInfo& value) 4344{ 4345 s << "VkProtectedSubmitInfo = {\n"; 4346 s << "\tsType = " << value.sType << '\n'; 4347 s << "\tpNext = " << value.pNext << '\n'; 4348 s << "\tprotectedSubmit = " << value.protectedSubmit << '\n'; 4349 s << '}'; 4350 return s; 4351} 4352 4353std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionCreateInfo& value) 4354{ 4355 s << "VkSamplerYcbcrConversionCreateInfo = {\n"; 4356 s << "\tsType = " << value.sType << '\n'; 4357 s << "\tpNext = " << value.pNext << '\n'; 4358 s << "\tformat = " << value.format << '\n'; 4359 s << "\tycbcrModel = " << value.ycbcrModel << '\n'; 4360 s << "\tycbcrRange = " << value.ycbcrRange << '\n'; 4361 s << "\tcomponents = " << value.components << '\n'; 4362 s << "\txChromaOffset = " << value.xChromaOffset << '\n'; 4363 s << "\tyChromaOffset = " << value.yChromaOffset << '\n'; 4364 s << "\tchromaFilter = " << value.chromaFilter << '\n'; 4365 s << "\tforceExplicitReconstruction = " << value.forceExplicitReconstruction << '\n'; 4366 s << '}'; 4367 return s; 4368} 4369 4370std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionInfo& value) 4371{ 4372 s << "VkSamplerYcbcrConversionInfo = {\n"; 4373 s << "\tsType = " << value.sType << '\n'; 4374 s << "\tpNext = " << value.pNext << '\n'; 4375 s << "\tconversion = " << value.conversion << '\n'; 4376 s << '}'; 4377 return s; 4378} 4379 4380std::ostream& operator<< (std::ostream& s, const VkBindImagePlaneMemoryInfo& value) 4381{ 4382 s << "VkBindImagePlaneMemoryInfo = {\n"; 4383 s << "\tsType = " << value.sType << '\n'; 4384 s << "\tpNext = " << value.pNext << '\n'; 4385 s << "\tplaneAspect = " << value.planeAspect << '\n'; 4386 s << '}'; 4387 return s; 4388} 4389 4390std::ostream& operator<< (std::ostream& s, const VkImagePlaneMemoryRequirementsInfo& value) 4391{ 4392 s << "VkImagePlaneMemoryRequirementsInfo = {\n"; 4393 s << "\tsType = " << value.sType << '\n'; 4394 s << "\tpNext = " << value.pNext << '\n'; 4395 s << "\tplaneAspect = " << value.planeAspect << '\n'; 4396 s << '}'; 4397 return s; 4398} 4399 4400std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSamplerYcbcrConversionFeatures& value) 4401{ 4402 s << "VkPhysicalDeviceSamplerYcbcrConversionFeatures = {\n"; 4403 s << "\tsType = " << value.sType << '\n'; 4404 s << "\tpNext = " << value.pNext << '\n'; 4405 s << "\tsamplerYcbcrConversion = " << value.samplerYcbcrConversion << '\n'; 4406 s << '}'; 4407 return s; 4408} 4409 4410std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionImageFormatProperties& value) 4411{ 4412 s << "VkSamplerYcbcrConversionImageFormatProperties = {\n"; 4413 s << "\tsType = " << value.sType << '\n'; 4414 s << "\tpNext = " << value.pNext << '\n'; 4415 s << "\tcombinedImageSamplerDescriptorCount = " << value.combinedImageSamplerDescriptorCount << '\n'; 4416 s << '}'; 4417 return s; 4418} 4419 4420std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateEntry& value) 4421{ 4422 s << "VkDescriptorUpdateTemplateEntry = {\n"; 4423 s << "\tdstBinding = " << value.dstBinding << '\n'; 4424 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 4425 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 4426 s << "\tdescriptorType = " << value.descriptorType << '\n'; 4427 s << "\toffset = " << value.offset << '\n'; 4428 s << "\tstride = " << value.stride << '\n'; 4429 s << '}'; 4430 return s; 4431} 4432 4433std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfo& value) 4434{ 4435 s << "VkDescriptorUpdateTemplateCreateInfo = {\n"; 4436 s << "\tsType = " << value.sType << '\n'; 4437 s << "\tpNext = " << value.pNext << '\n'; 4438 s << "\tflags = " << getDescriptorUpdateTemplateCreateFlagsStr(value.flags) << '\n'; 4439 s << "\tdescriptorUpdateEntryCount = " << value.descriptorUpdateEntryCount << '\n'; 4440 s << "\tpDescriptorUpdateEntries = " << value.pDescriptorUpdateEntries << '\n'; 4441 s << "\ttemplateType = " << value.templateType << '\n'; 4442 s << "\tdescriptorSetLayout = " << value.descriptorSetLayout << '\n'; 4443 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 4444 s << "\tpipelineLayout = " << value.pipelineLayout << '\n'; 4445 s << "\tset = " << value.set << '\n'; 4446 s << '}'; 4447 return s; 4448} 4449 4450std::ostream& operator<< (std::ostream& s, const VkExternalMemoryProperties& value) 4451{ 4452 s << "VkExternalMemoryProperties = {\n"; 4453 s << "\texternalMemoryFeatures = " << getExternalMemoryFeatureFlagsStr(value.externalMemoryFeatures) << '\n'; 4454 s << "\texportFromImportedHandleTypes = " << getExternalMemoryHandleTypeFlagsStr(value.exportFromImportedHandleTypes) << '\n'; 4455 s << "\tcompatibleHandleTypes = " << getExternalMemoryHandleTypeFlagsStr(value.compatibleHandleTypes) << '\n'; 4456 s << '}'; 4457 return s; 4458} 4459 4460std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalImageFormatInfo& value) 4461{ 4462 s << "VkPhysicalDeviceExternalImageFormatInfo = {\n"; 4463 s << "\tsType = " << value.sType << '\n'; 4464 s << "\tpNext = " << value.pNext << '\n'; 4465 s << "\thandleType = " << value.handleType << '\n'; 4466 s << '}'; 4467 return s; 4468} 4469 4470std::ostream& operator<< (std::ostream& s, const VkExternalImageFormatProperties& value) 4471{ 4472 s << "VkExternalImageFormatProperties = {\n"; 4473 s << "\tsType = " << value.sType << '\n'; 4474 s << "\tpNext = " << value.pNext << '\n'; 4475 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n'; 4476 s << '}'; 4477 return s; 4478} 4479 4480std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalBufferInfo& value) 4481{ 4482 s << "VkPhysicalDeviceExternalBufferInfo = {\n"; 4483 s << "\tsType = " << value.sType << '\n'; 4484 s << "\tpNext = " << value.pNext << '\n'; 4485 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n'; 4486 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n'; 4487 s << "\thandleType = " << value.handleType << '\n'; 4488 s << '}'; 4489 return s; 4490} 4491 4492std::ostream& operator<< (std::ostream& s, const VkExternalBufferProperties& value) 4493{ 4494 s << "VkExternalBufferProperties = {\n"; 4495 s << "\tsType = " << value.sType << '\n'; 4496 s << "\tpNext = " << value.pNext << '\n'; 4497 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n'; 4498 s << '}'; 4499 return s; 4500} 4501 4502std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceIDProperties& value) 4503{ 4504 s << "VkPhysicalDeviceIDProperties = {\n"; 4505 s << "\tsType = " << value.sType << '\n'; 4506 s << "\tpNext = " << value.pNext << '\n'; 4507 s << "\tdeviceUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceUUID))) << '\n'; 4508 s << "\tdriverUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.driverUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.driverUUID))) << '\n'; 4509 s << "\tdeviceLUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceLUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceLUID))) << '\n'; 4510 s << "\tdeviceNodeMask = " << value.deviceNodeMask << '\n'; 4511 s << "\tdeviceLUIDValid = " << value.deviceLUIDValid << '\n'; 4512 s << '}'; 4513 return s; 4514} 4515 4516std::ostream& operator<< (std::ostream& s, const VkExternalMemoryImageCreateInfo& value) 4517{ 4518 s << "VkExternalMemoryImageCreateInfo = {\n"; 4519 s << "\tsType = " << value.sType << '\n'; 4520 s << "\tpNext = " << value.pNext << '\n'; 4521 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsStr(value.handleTypes) << '\n'; 4522 s << '}'; 4523 return s; 4524} 4525 4526std::ostream& operator<< (std::ostream& s, const VkExternalMemoryBufferCreateInfo& value) 4527{ 4528 s << "VkExternalMemoryBufferCreateInfo = {\n"; 4529 s << "\tsType = " << value.sType << '\n'; 4530 s << "\tpNext = " << value.pNext << '\n'; 4531 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsStr(value.handleTypes) << '\n'; 4532 s << '}'; 4533 return s; 4534} 4535 4536std::ostream& operator<< (std::ostream& s, const VkExportMemoryAllocateInfo& value) 4537{ 4538 s << "VkExportMemoryAllocateInfo = {\n"; 4539 s << "\tsType = " << value.sType << '\n'; 4540 s << "\tpNext = " << value.pNext << '\n'; 4541 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsStr(value.handleTypes) << '\n'; 4542 s << '}'; 4543 return s; 4544} 4545 4546std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalFenceInfo& value) 4547{ 4548 s << "VkPhysicalDeviceExternalFenceInfo = {\n"; 4549 s << "\tsType = " << value.sType << '\n'; 4550 s << "\tpNext = " << value.pNext << '\n'; 4551 s << "\thandleType = " << value.handleType << '\n'; 4552 s << '}'; 4553 return s; 4554} 4555 4556std::ostream& operator<< (std::ostream& s, const VkExternalFenceProperties& value) 4557{ 4558 s << "VkExternalFenceProperties = {\n"; 4559 s << "\tsType = " << value.sType << '\n'; 4560 s << "\tpNext = " << value.pNext << '\n'; 4561 s << "\texportFromImportedHandleTypes = " << getExternalFenceHandleTypeFlagsStr(value.exportFromImportedHandleTypes) << '\n'; 4562 s << "\tcompatibleHandleTypes = " << getExternalFenceHandleTypeFlagsStr(value.compatibleHandleTypes) << '\n'; 4563 s << "\texternalFenceFeatures = " << getExternalFenceFeatureFlagsStr(value.externalFenceFeatures) << '\n'; 4564 s << '}'; 4565 return s; 4566} 4567 4568std::ostream& operator<< (std::ostream& s, const VkExportFenceCreateInfo& value) 4569{ 4570 s << "VkExportFenceCreateInfo = {\n"; 4571 s << "\tsType = " << value.sType << '\n'; 4572 s << "\tpNext = " << value.pNext << '\n'; 4573 s << "\thandleTypes = " << getExternalFenceHandleTypeFlagsStr(value.handleTypes) << '\n'; 4574 s << '}'; 4575 return s; 4576} 4577 4578std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreCreateInfo& value) 4579{ 4580 s << "VkExportSemaphoreCreateInfo = {\n"; 4581 s << "\tsType = " << value.sType << '\n'; 4582 s << "\tpNext = " << value.pNext << '\n'; 4583 s << "\thandleTypes = " << getExternalSemaphoreHandleTypeFlagsStr(value.handleTypes) << '\n'; 4584 s << '}'; 4585 return s; 4586} 4587 4588std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalSemaphoreInfo& value) 4589{ 4590 s << "VkPhysicalDeviceExternalSemaphoreInfo = {\n"; 4591 s << "\tsType = " << value.sType << '\n'; 4592 s << "\tpNext = " << value.pNext << '\n'; 4593 s << "\thandleType = " << value.handleType << '\n'; 4594 s << '}'; 4595 return s; 4596} 4597 4598std::ostream& operator<< (std::ostream& s, const VkExternalSemaphoreProperties& value) 4599{ 4600 s << "VkExternalSemaphoreProperties = {\n"; 4601 s << "\tsType = " << value.sType << '\n'; 4602 s << "\tpNext = " << value.pNext << '\n'; 4603 s << "\texportFromImportedHandleTypes = " << getExternalSemaphoreHandleTypeFlagsStr(value.exportFromImportedHandleTypes) << '\n'; 4604 s << "\tcompatibleHandleTypes = " << getExternalSemaphoreHandleTypeFlagsStr(value.compatibleHandleTypes) << '\n'; 4605 s << "\texternalSemaphoreFeatures = " << getExternalSemaphoreFeatureFlagsStr(value.externalSemaphoreFeatures) << '\n'; 4606 s << '}'; 4607 return s; 4608} 4609 4610std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMaintenance3Properties& value) 4611{ 4612 s << "VkPhysicalDeviceMaintenance3Properties = {\n"; 4613 s << "\tsType = " << value.sType << '\n'; 4614 s << "\tpNext = " << value.pNext << '\n'; 4615 s << "\tmaxPerSetDescriptors = " << value.maxPerSetDescriptors << '\n'; 4616 s << "\tmaxMemoryAllocationSize = " << value.maxMemoryAllocationSize << '\n'; 4617 s << '}'; 4618 return s; 4619} 4620 4621std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutSupport& value) 4622{ 4623 s << "VkDescriptorSetLayoutSupport = {\n"; 4624 s << "\tsType = " << value.sType << '\n'; 4625 s << "\tpNext = " << value.pNext << '\n'; 4626 s << "\tsupported = " << value.supported << '\n'; 4627 s << '}'; 4628 return s; 4629} 4630 4631std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderDrawParameterFeatures& value) 4632{ 4633 s << "VkPhysicalDeviceShaderDrawParameterFeatures = {\n"; 4634 s << "\tsType = " << value.sType << '\n'; 4635 s << "\tpNext = " << value.pNext << '\n'; 4636 s << "\tshaderDrawParameters = " << value.shaderDrawParameters << '\n'; 4637 s << '}'; 4638 return s; 4639} 4640 4641std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesKHR& value) 4642{ 4643 s << "VkSurfaceCapabilitiesKHR = {\n"; 4644 s << "\tminImageCount = " << value.minImageCount << '\n'; 4645 s << "\tmaxImageCount = " << value.maxImageCount << '\n'; 4646 s << "\tcurrentExtent = " << value.currentExtent << '\n'; 4647 s << "\tminImageExtent = " << value.minImageExtent << '\n'; 4648 s << "\tmaxImageExtent = " << value.maxImageExtent << '\n'; 4649 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n'; 4650 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n'; 4651 s << "\tcurrentTransform = " << value.currentTransform << '\n'; 4652 s << "\tsupportedCompositeAlpha = " << getCompositeAlphaFlagsKHRStr(value.supportedCompositeAlpha) << '\n'; 4653 s << "\tsupportedUsageFlags = " << getImageUsageFlagsStr(value.supportedUsageFlags) << '\n'; 4654 s << '}'; 4655 return s; 4656} 4657 4658std::ostream& operator<< (std::ostream& s, const VkSurfaceFormatKHR& value) 4659{ 4660 s << "VkSurfaceFormatKHR = {\n"; 4661 s << "\tformat = " << value.format << '\n'; 4662 s << "\tcolorSpace = " << value.colorSpace << '\n'; 4663 s << '}'; 4664 return s; 4665} 4666 4667std::ostream& operator<< (std::ostream& s, const VkSwapchainCreateInfoKHR& value) 4668{ 4669 s << "VkSwapchainCreateInfoKHR = {\n"; 4670 s << "\tsType = " << value.sType << '\n'; 4671 s << "\tpNext = " << value.pNext << '\n'; 4672 s << "\tflags = " << getSwapchainCreateFlagsKHRStr(value.flags) << '\n'; 4673 s << "\tsurface = " << value.surface << '\n'; 4674 s << "\tminImageCount = " << value.minImageCount << '\n'; 4675 s << "\timageFormat = " << value.imageFormat << '\n'; 4676 s << "\timageColorSpace = " << value.imageColorSpace << '\n'; 4677 s << "\timageExtent = " << value.imageExtent << '\n'; 4678 s << "\timageArrayLayers = " << value.imageArrayLayers << '\n'; 4679 s << "\timageUsage = " << getImageUsageFlagsStr(value.imageUsage) << '\n'; 4680 s << "\timageSharingMode = " << value.imageSharingMode << '\n'; 4681 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 4682 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 4683 s << "\tpreTransform = " << value.preTransform << '\n'; 4684 s << "\tcompositeAlpha = " << value.compositeAlpha << '\n'; 4685 s << "\tpresentMode = " << value.presentMode << '\n'; 4686 s << "\tclipped = " << value.clipped << '\n'; 4687 s << "\toldSwapchain = " << value.oldSwapchain << '\n'; 4688 s << '}'; 4689 return s; 4690} 4691 4692std::ostream& operator<< (std::ostream& s, const VkPresentInfoKHR& value) 4693{ 4694 s << "VkPresentInfoKHR = {\n"; 4695 s << "\tsType = " << value.sType << '\n'; 4696 s << "\tpNext = " << value.pNext << '\n'; 4697 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 4698 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 4699 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 4700 s << "\tpSwapchains = " << value.pSwapchains << '\n'; 4701 s << "\tpImageIndices = " << value.pImageIndices << '\n'; 4702 s << "\tpResults = " << value.pResults << '\n'; 4703 s << '}'; 4704 return s; 4705} 4706 4707std::ostream& operator<< (std::ostream& s, const VkImageSwapchainCreateInfoKHR& value) 4708{ 4709 s << "VkImageSwapchainCreateInfoKHR = {\n"; 4710 s << "\tsType = " << value.sType << '\n'; 4711 s << "\tpNext = " << value.pNext << '\n'; 4712 s << "\tswapchain = " << value.swapchain << '\n'; 4713 s << '}'; 4714 return s; 4715} 4716 4717std::ostream& operator<< (std::ostream& s, const VkBindImageMemorySwapchainInfoKHR& value) 4718{ 4719 s << "VkBindImageMemorySwapchainInfoKHR = {\n"; 4720 s << "\tsType = " << value.sType << '\n'; 4721 s << "\tpNext = " << value.pNext << '\n'; 4722 s << "\tswapchain = " << value.swapchain << '\n'; 4723 s << "\timageIndex = " << value.imageIndex << '\n'; 4724 s << '}'; 4725 return s; 4726} 4727 4728std::ostream& operator<< (std::ostream& s, const VkAcquireNextImageInfoKHR& value) 4729{ 4730 s << "VkAcquireNextImageInfoKHR = {\n"; 4731 s << "\tsType = " << value.sType << '\n'; 4732 s << "\tpNext = " << value.pNext << '\n'; 4733 s << "\tswapchain = " << value.swapchain << '\n'; 4734 s << "\ttimeout = " << value.timeout << '\n'; 4735 s << "\tsemaphore = " << value.semaphore << '\n'; 4736 s << "\tfence = " << value.fence << '\n'; 4737 s << "\tdeviceMask = " << value.deviceMask << '\n'; 4738 s << '}'; 4739 return s; 4740} 4741 4742std::ostream& operator<< (std::ostream& s, const VkDeviceGroupPresentCapabilitiesKHR& value) 4743{ 4744 s << "VkDeviceGroupPresentCapabilitiesKHR = {\n"; 4745 s << "\tsType = " << value.sType << '\n'; 4746 s << "\tpNext = " << value.pNext << '\n'; 4747 s << "\tpresentMask = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.presentMask), DE_ARRAY_END(value.presentMask)) << '\n'; 4748 s << "\tmodes = " << getDeviceGroupPresentModeFlagsKHRStr(value.modes) << '\n'; 4749 s << '}'; 4750 return s; 4751} 4752 4753std::ostream& operator<< (std::ostream& s, const VkDeviceGroupPresentInfoKHR& value) 4754{ 4755 s << "VkDeviceGroupPresentInfoKHR = {\n"; 4756 s << "\tsType = " << value.sType << '\n'; 4757 s << "\tpNext = " << value.pNext << '\n'; 4758 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 4759 s << "\tpDeviceMasks = " << value.pDeviceMasks << '\n'; 4760 s << "\tmode = " << value.mode << '\n'; 4761 s << '}'; 4762 return s; 4763} 4764 4765std::ostream& operator<< (std::ostream& s, const VkDeviceGroupSwapchainCreateInfoKHR& value) 4766{ 4767 s << "VkDeviceGroupSwapchainCreateInfoKHR = {\n"; 4768 s << "\tsType = " << value.sType << '\n'; 4769 s << "\tpNext = " << value.pNext << '\n'; 4770 s << "\tmodes = " << getDeviceGroupPresentModeFlagsKHRStr(value.modes) << '\n'; 4771 s << '}'; 4772 return s; 4773} 4774 4775std::ostream& operator<< (std::ostream& s, const VkDisplayPropertiesKHR& value) 4776{ 4777 s << "VkDisplayPropertiesKHR = {\n"; 4778 s << "\tdisplay = " << value.display << '\n'; 4779 s << "\tdisplayName = " << getCharPtrStr(value.displayName) << '\n'; 4780 s << "\tphysicalDimensions = " << value.physicalDimensions << '\n'; 4781 s << "\tphysicalResolution = " << value.physicalResolution << '\n'; 4782 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n'; 4783 s << "\tplaneReorderPossible = " << value.planeReorderPossible << '\n'; 4784 s << "\tpersistentContent = " << value.persistentContent << '\n'; 4785 s << '}'; 4786 return s; 4787} 4788 4789std::ostream& operator<< (std::ostream& s, const VkDisplayModeParametersKHR& value) 4790{ 4791 s << "VkDisplayModeParametersKHR = {\n"; 4792 s << "\tvisibleRegion = " << value.visibleRegion << '\n'; 4793 s << "\trefreshRate = " << value.refreshRate << '\n'; 4794 s << '}'; 4795 return s; 4796} 4797 4798std::ostream& operator<< (std::ostream& s, const VkDisplayModePropertiesKHR& value) 4799{ 4800 s << "VkDisplayModePropertiesKHR = {\n"; 4801 s << "\tdisplayMode = " << value.displayMode << '\n'; 4802 s << "\tparameters = " << value.parameters << '\n'; 4803 s << '}'; 4804 return s; 4805} 4806 4807std::ostream& operator<< (std::ostream& s, const VkDisplayModeCreateInfoKHR& value) 4808{ 4809 s << "VkDisplayModeCreateInfoKHR = {\n"; 4810 s << "\tsType = " << value.sType << '\n'; 4811 s << "\tpNext = " << value.pNext << '\n'; 4812 s << "\tflags = " << getDisplayModeCreateFlagsKHRStr(value.flags) << '\n'; 4813 s << "\tparameters = " << value.parameters << '\n'; 4814 s << '}'; 4815 return s; 4816} 4817 4818std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneCapabilitiesKHR& value) 4819{ 4820 s << "VkDisplayPlaneCapabilitiesKHR = {\n"; 4821 s << "\tsupportedAlpha = " << getDisplayPlaneAlphaFlagsKHRStr(value.supportedAlpha) << '\n'; 4822 s << "\tminSrcPosition = " << value.minSrcPosition << '\n'; 4823 s << "\tmaxSrcPosition = " << value.maxSrcPosition << '\n'; 4824 s << "\tminSrcExtent = " << value.minSrcExtent << '\n'; 4825 s << "\tmaxSrcExtent = " << value.maxSrcExtent << '\n'; 4826 s << "\tminDstPosition = " << value.minDstPosition << '\n'; 4827 s << "\tmaxDstPosition = " << value.maxDstPosition << '\n'; 4828 s << "\tminDstExtent = " << value.minDstExtent << '\n'; 4829 s << "\tmaxDstExtent = " << value.maxDstExtent << '\n'; 4830 s << '}'; 4831 return s; 4832} 4833 4834std::ostream& operator<< (std::ostream& s, const VkDisplayPlanePropertiesKHR& value) 4835{ 4836 s << "VkDisplayPlanePropertiesKHR = {\n"; 4837 s << "\tcurrentDisplay = " << value.currentDisplay << '\n'; 4838 s << "\tcurrentStackIndex = " << value.currentStackIndex << '\n'; 4839 s << '}'; 4840 return s; 4841} 4842 4843std::ostream& operator<< (std::ostream& s, const VkDisplaySurfaceCreateInfoKHR& value) 4844{ 4845 s << "VkDisplaySurfaceCreateInfoKHR = {\n"; 4846 s << "\tsType = " << value.sType << '\n'; 4847 s << "\tpNext = " << value.pNext << '\n'; 4848 s << "\tflags = " << getDisplaySurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4849 s << "\tdisplayMode = " << value.displayMode << '\n'; 4850 s << "\tplaneIndex = " << value.planeIndex << '\n'; 4851 s << "\tplaneStackIndex = " << value.planeStackIndex << '\n'; 4852 s << "\ttransform = " << value.transform << '\n'; 4853 s << "\tglobalAlpha = " << value.globalAlpha << '\n'; 4854 s << "\talphaMode = " << value.alphaMode << '\n'; 4855 s << "\timageExtent = " << value.imageExtent << '\n'; 4856 s << '}'; 4857 return s; 4858} 4859 4860std::ostream& operator<< (std::ostream& s, const VkDisplayPresentInfoKHR& value) 4861{ 4862 s << "VkDisplayPresentInfoKHR = {\n"; 4863 s << "\tsType = " << value.sType << '\n'; 4864 s << "\tpNext = " << value.pNext << '\n'; 4865 s << "\tsrcRect = " << value.srcRect << '\n'; 4866 s << "\tdstRect = " << value.dstRect << '\n'; 4867 s << "\tpersistent = " << value.persistent << '\n'; 4868 s << '}'; 4869 return s; 4870} 4871 4872std::ostream& operator<< (std::ostream& s, const VkXlibSurfaceCreateInfoKHR& value) 4873{ 4874 s << "VkXlibSurfaceCreateInfoKHR = {\n"; 4875 s << "\tsType = " << value.sType << '\n'; 4876 s << "\tpNext = " << value.pNext << '\n'; 4877 s << "\tflags = " << getXlibSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4878 s << "\tdpy = " << value.dpy << '\n'; 4879 s << "\twindow = " << value.window << '\n'; 4880 s << '}'; 4881 return s; 4882} 4883 4884std::ostream& operator<< (std::ostream& s, const VkXcbSurfaceCreateInfoKHR& value) 4885{ 4886 s << "VkXcbSurfaceCreateInfoKHR = {\n"; 4887 s << "\tsType = " << value.sType << '\n'; 4888 s << "\tpNext = " << value.pNext << '\n'; 4889 s << "\tflags = " << getXcbSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4890 s << "\tconnection = " << value.connection << '\n'; 4891 s << "\twindow = " << value.window << '\n'; 4892 s << '}'; 4893 return s; 4894} 4895 4896std::ostream& operator<< (std::ostream& s, const VkWaylandSurfaceCreateInfoKHR& value) 4897{ 4898 s << "VkWaylandSurfaceCreateInfoKHR = {\n"; 4899 s << "\tsType = " << value.sType << '\n'; 4900 s << "\tpNext = " << value.pNext << '\n'; 4901 s << "\tflags = " << getWaylandSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4902 s << "\tdisplay = " << value.display << '\n'; 4903 s << "\tsurface = " << value.surface << '\n'; 4904 s << '}'; 4905 return s; 4906} 4907 4908std::ostream& operator<< (std::ostream& s, const VkMirSurfaceCreateInfoKHR& value) 4909{ 4910 s << "VkMirSurfaceCreateInfoKHR = {\n"; 4911 s << "\tsType = " << value.sType << '\n'; 4912 s << "\tpNext = " << value.pNext << '\n'; 4913 s << "\tflags = " << getMirSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4914 s << "\tconnection = " << value.connection << '\n'; 4915 s << "\tmirSurface = " << value.mirSurface << '\n'; 4916 s << '}'; 4917 return s; 4918} 4919 4920std::ostream& operator<< (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value) 4921{ 4922 s << "VkAndroidSurfaceCreateInfoKHR = {\n"; 4923 s << "\tsType = " << value.sType << '\n'; 4924 s << "\tpNext = " << value.pNext << '\n'; 4925 s << "\tflags = " << getAndroidSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4926 s << "\twindow = " << value.window << '\n'; 4927 s << '}'; 4928 return s; 4929} 4930 4931std::ostream& operator<< (std::ostream& s, const VkWin32SurfaceCreateInfoKHR& value) 4932{ 4933 s << "VkWin32SurfaceCreateInfoKHR = {\n"; 4934 s << "\tsType = " << value.sType << '\n'; 4935 s << "\tpNext = " << value.pNext << '\n'; 4936 s << "\tflags = " << getWin32SurfaceCreateFlagsKHRStr(value.flags) << '\n'; 4937 s << "\thinstance = " << value.hinstance << '\n'; 4938 s << "\thwnd = " << value.hwnd << '\n'; 4939 s << '}'; 4940 return s; 4941} 4942 4943std::ostream& operator<< (std::ostream& s, const VkImportMemoryWin32HandleInfoKHR& value) 4944{ 4945 s << "VkImportMemoryWin32HandleInfoKHR = {\n"; 4946 s << "\tsType = " << value.sType << '\n'; 4947 s << "\tpNext = " << value.pNext << '\n'; 4948 s << "\thandleType = " << value.handleType << '\n'; 4949 s << "\thandle = " << value.handle << '\n'; 4950 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4951 s << '}'; 4952 return s; 4953} 4954 4955std::ostream& operator<< (std::ostream& s, const VkExportMemoryWin32HandleInfoKHR& value) 4956{ 4957 s << "VkExportMemoryWin32HandleInfoKHR = {\n"; 4958 s << "\tsType = " << value.sType << '\n'; 4959 s << "\tpNext = " << value.pNext << '\n'; 4960 s << "\tpAttributes = " << value.pAttributes << '\n'; 4961 s << "\tdwAccess = " << value.dwAccess << '\n'; 4962 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4963 s << '}'; 4964 return s; 4965} 4966 4967std::ostream& operator<< (std::ostream& s, const VkMemoryWin32HandlePropertiesKHR& value) 4968{ 4969 s << "VkMemoryWin32HandlePropertiesKHR = {\n"; 4970 s << "\tsType = " << value.sType << '\n'; 4971 s << "\tpNext = " << value.pNext << '\n'; 4972 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 4973 s << '}'; 4974 return s; 4975} 4976 4977std::ostream& operator<< (std::ostream& s, const VkMemoryGetWin32HandleInfoKHR& value) 4978{ 4979 s << "VkMemoryGetWin32HandleInfoKHR = {\n"; 4980 s << "\tsType = " << value.sType << '\n'; 4981 s << "\tpNext = " << value.pNext << '\n'; 4982 s << "\tmemory = " << value.memory << '\n'; 4983 s << "\thandleType = " << value.handleType << '\n'; 4984 s << '}'; 4985 return s; 4986} 4987 4988std::ostream& operator<< (std::ostream& s, const VkImportMemoryFdInfoKHR& value) 4989{ 4990 s << "VkImportMemoryFdInfoKHR = {\n"; 4991 s << "\tsType = " << value.sType << '\n'; 4992 s << "\tpNext = " << value.pNext << '\n'; 4993 s << "\thandleType = " << value.handleType << '\n'; 4994 s << "\tfd = " << value.fd << '\n'; 4995 s << '}'; 4996 return s; 4997} 4998 4999std::ostream& operator<< (std::ostream& s, const VkMemoryFdPropertiesKHR& value) 5000{ 5001 s << "VkMemoryFdPropertiesKHR = {\n"; 5002 s << "\tsType = " << value.sType << '\n'; 5003 s << "\tpNext = " << value.pNext << '\n'; 5004 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 5005 s << '}'; 5006 return s; 5007} 5008 5009std::ostream& operator<< (std::ostream& s, const VkMemoryGetFdInfoKHR& value) 5010{ 5011 s << "VkMemoryGetFdInfoKHR = {\n"; 5012 s << "\tsType = " << value.sType << '\n'; 5013 s << "\tpNext = " << value.pNext << '\n'; 5014 s << "\tmemory = " << value.memory << '\n'; 5015 s << "\thandleType = " << value.handleType << '\n'; 5016 s << '}'; 5017 return s; 5018} 5019 5020std::ostream& operator<< (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoKHR& value) 5021{ 5022 s << "VkWin32KeyedMutexAcquireReleaseInfoKHR = {\n"; 5023 s << "\tsType = " << value.sType << '\n'; 5024 s << "\tpNext = " << value.pNext << '\n'; 5025 s << "\tacquireCount = " << value.acquireCount << '\n'; 5026 s << "\tpAcquireSyncs = " << value.pAcquireSyncs << '\n'; 5027 s << "\tpAcquireKeys = " << value.pAcquireKeys << '\n'; 5028 s << "\tpAcquireTimeouts = " << value.pAcquireTimeouts << '\n'; 5029 s << "\treleaseCount = " << value.releaseCount << '\n'; 5030 s << "\tpReleaseSyncs = " << value.pReleaseSyncs << '\n'; 5031 s << "\tpReleaseKeys = " << value.pReleaseKeys << '\n'; 5032 s << '}'; 5033 return s; 5034} 5035 5036std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreWin32HandleInfoKHR& value) 5037{ 5038 s << "VkImportSemaphoreWin32HandleInfoKHR = {\n"; 5039 s << "\tsType = " << value.sType << '\n'; 5040 s << "\tpNext = " << value.pNext << '\n'; 5041 s << "\tsemaphore = " << value.semaphore << '\n'; 5042 s << "\tflags = " << getSemaphoreImportFlagsStr(value.flags) << '\n'; 5043 s << "\thandleType = " << value.handleType << '\n'; 5044 s << "\thandle = " << value.handle << '\n'; 5045 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 5046 s << '}'; 5047 return s; 5048} 5049 5050std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreWin32HandleInfoKHR& value) 5051{ 5052 s << "VkExportSemaphoreWin32HandleInfoKHR = {\n"; 5053 s << "\tsType = " << value.sType << '\n'; 5054 s << "\tpNext = " << value.pNext << '\n'; 5055 s << "\tpAttributes = " << value.pAttributes << '\n'; 5056 s << "\tdwAccess = " << value.dwAccess << '\n'; 5057 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 5058 s << '}'; 5059 return s; 5060} 5061 5062std::ostream& operator<< (std::ostream& s, const VkD3D12FenceSubmitInfoKHR& value) 5063{ 5064 s << "VkD3D12FenceSubmitInfoKHR = {\n"; 5065 s << "\tsType = " << value.sType << '\n'; 5066 s << "\tpNext = " << value.pNext << '\n'; 5067 s << "\twaitSemaphoreValuesCount = " << value.waitSemaphoreValuesCount << '\n'; 5068 s << "\tpWaitSemaphoreValues = " << value.pWaitSemaphoreValues << '\n'; 5069 s << "\tsignalSemaphoreValuesCount = " << value.signalSemaphoreValuesCount << '\n'; 5070 s << "\tpSignalSemaphoreValues = " << value.pSignalSemaphoreValues << '\n'; 5071 s << '}'; 5072 return s; 5073} 5074 5075std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetWin32HandleInfoKHR& value) 5076{ 5077 s << "VkSemaphoreGetWin32HandleInfoKHR = {\n"; 5078 s << "\tsType = " << value.sType << '\n'; 5079 s << "\tpNext = " << value.pNext << '\n'; 5080 s << "\tsemaphore = " << value.semaphore << '\n'; 5081 s << "\thandleType = " << value.handleType << '\n'; 5082 s << '}'; 5083 return s; 5084} 5085 5086std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreFdInfoKHR& value) 5087{ 5088 s << "VkImportSemaphoreFdInfoKHR = {\n"; 5089 s << "\tsType = " << value.sType << '\n'; 5090 s << "\tpNext = " << value.pNext << '\n'; 5091 s << "\tsemaphore = " << value.semaphore << '\n'; 5092 s << "\tflags = " << getSemaphoreImportFlagsStr(value.flags) << '\n'; 5093 s << "\thandleType = " << value.handleType << '\n'; 5094 s << "\tfd = " << value.fd << '\n'; 5095 s << '}'; 5096 return s; 5097} 5098 5099std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetFdInfoKHR& value) 5100{ 5101 s << "VkSemaphoreGetFdInfoKHR = {\n"; 5102 s << "\tsType = " << value.sType << '\n'; 5103 s << "\tpNext = " << value.pNext << '\n'; 5104 s << "\tsemaphore = " << value.semaphore << '\n'; 5105 s << "\thandleType = " << value.handleType << '\n'; 5106 s << '}'; 5107 return s; 5108} 5109 5110std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value) 5111{ 5112 s << "VkPhysicalDevicePushDescriptorPropertiesKHR = {\n"; 5113 s << "\tsType = " << value.sType << '\n'; 5114 s << "\tpNext = " << value.pNext << '\n'; 5115 s << "\tmaxPushDescriptors = " << value.maxPushDescriptors << '\n'; 5116 s << '}'; 5117 return s; 5118} 5119 5120std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFloat16Int8FeaturesKHR& value) 5121{ 5122 s << "VkPhysicalDeviceFloat16Int8FeaturesKHR = {\n"; 5123 s << "\tsType = " << value.sType << '\n'; 5124 s << "\tpNext = " << value.pNext << '\n'; 5125 s << "\tshaderFloat16 = " << value.shaderFloat16 << '\n'; 5126 s << "\tshaderInt8 = " << value.shaderInt8 << '\n'; 5127 s << '}'; 5128 return s; 5129} 5130 5131std::ostream& operator<< (std::ostream& s, const VkRectLayerKHR& value) 5132{ 5133 s << "VkRectLayerKHR = {\n"; 5134 s << "\toffset = " << value.offset << '\n'; 5135 s << "\textent = " << value.extent << '\n'; 5136 s << "\tlayer = " << value.layer << '\n'; 5137 s << '}'; 5138 return s; 5139} 5140 5141std::ostream& operator<< (std::ostream& s, const VkPresentRegionKHR& value) 5142{ 5143 s << "VkPresentRegionKHR = {\n"; 5144 s << "\trectangleCount = " << value.rectangleCount << '\n'; 5145 s << "\tpRectangles = " << value.pRectangles << '\n'; 5146 s << '}'; 5147 return s; 5148} 5149 5150std::ostream& operator<< (std::ostream& s, const VkPresentRegionsKHR& value) 5151{ 5152 s << "VkPresentRegionsKHR = {\n"; 5153 s << "\tsType = " << value.sType << '\n'; 5154 s << "\tpNext = " << value.pNext << '\n'; 5155 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 5156 s << "\tpRegions = " << value.pRegions << '\n'; 5157 s << '}'; 5158 return s; 5159} 5160 5161std::ostream& operator<< (std::ostream& s, const VkAttachmentDescription2KHR& value) 5162{ 5163 s << "VkAttachmentDescription2KHR = {\n"; 5164 s << "\tsType = " << value.sType << '\n'; 5165 s << "\tpNext = " << value.pNext << '\n'; 5166 s << "\tflags = " << getAttachmentDescriptionFlagsStr(value.flags) << '\n'; 5167 s << "\tformat = " << value.format << '\n'; 5168 s << "\tsamples = " << value.samples << '\n'; 5169 s << "\tloadOp = " << value.loadOp << '\n'; 5170 s << "\tstoreOp = " << value.storeOp << '\n'; 5171 s << "\tstencilLoadOp = " << value.stencilLoadOp << '\n'; 5172 s << "\tstencilStoreOp = " << value.stencilStoreOp << '\n'; 5173 s << "\tinitialLayout = " << value.initialLayout << '\n'; 5174 s << "\tfinalLayout = " << value.finalLayout << '\n'; 5175 s << '}'; 5176 return s; 5177} 5178 5179std::ostream& operator<< (std::ostream& s, const VkAttachmentReference2KHR& value) 5180{ 5181 s << "VkAttachmentReference2KHR = {\n"; 5182 s << "\tsType = " << value.sType << '\n'; 5183 s << "\tpNext = " << value.pNext << '\n'; 5184 s << "\tattachment = " << value.attachment << '\n'; 5185 s << "\tlayout = " << value.layout << '\n'; 5186 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 5187 s << '}'; 5188 return s; 5189} 5190 5191std::ostream& operator<< (std::ostream& s, const VkSubpassDescription2KHR& value) 5192{ 5193 s << "VkSubpassDescription2KHR = {\n"; 5194 s << "\tsType = " << value.sType << '\n'; 5195 s << "\tpNext = " << value.pNext << '\n'; 5196 s << "\tflags = " << getSubpassDescriptionFlagsStr(value.flags) << '\n'; 5197 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 5198 s << "\tviewMask = " << value.viewMask << '\n'; 5199 s << "\tinputAttachmentCount = " << value.inputAttachmentCount << '\n'; 5200 s << "\tpInputAttachments = " << value.pInputAttachments << '\n'; 5201 s << "\tcolorAttachmentCount = " << value.colorAttachmentCount << '\n'; 5202 s << "\tpColorAttachments = " << value.pColorAttachments << '\n'; 5203 s << "\tpResolveAttachments = " << value.pResolveAttachments << '\n'; 5204 s << "\tpDepthStencilAttachment = " << value.pDepthStencilAttachment << '\n'; 5205 s << "\tpreserveAttachmentCount = " << value.preserveAttachmentCount << '\n'; 5206 s << "\tpPreserveAttachments = " << value.pPreserveAttachments << '\n'; 5207 s << '}'; 5208 return s; 5209} 5210 5211std::ostream& operator<< (std::ostream& s, const VkSubpassDependency2KHR& value) 5212{ 5213 s << "VkSubpassDependency2KHR = {\n"; 5214 s << "\tsType = " << value.sType << '\n'; 5215 s << "\tpNext = " << value.pNext << '\n'; 5216 s << "\tsrcSubpass = " << value.srcSubpass << '\n'; 5217 s << "\tdstSubpass = " << value.dstSubpass << '\n'; 5218 s << "\tsrcStageMask = " << getPipelineStageFlagsStr(value.srcStageMask) << '\n'; 5219 s << "\tdstStageMask = " << getPipelineStageFlagsStr(value.dstStageMask) << '\n'; 5220 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 5221 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 5222 s << "\tdependencyFlags = " << getDependencyFlagsStr(value.dependencyFlags) << '\n'; 5223 s << "\tviewOffset = " << value.viewOffset << '\n'; 5224 s << '}'; 5225 return s; 5226} 5227 5228std::ostream& operator<< (std::ostream& s, const VkRenderPassCreateInfo2KHR& value) 5229{ 5230 s << "VkRenderPassCreateInfo2KHR = {\n"; 5231 s << "\tsType = " << value.sType << '\n'; 5232 s << "\tpNext = " << value.pNext << '\n'; 5233 s << "\tflags = " << getRenderPassCreateFlagsStr(value.flags) << '\n'; 5234 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 5235 s << "\tpAttachments = " << value.pAttachments << '\n'; 5236 s << "\tsubpassCount = " << value.subpassCount << '\n'; 5237 s << "\tpSubpasses = " << value.pSubpasses << '\n'; 5238 s << "\tdependencyCount = " << value.dependencyCount << '\n'; 5239 s << "\tpDependencies = " << value.pDependencies << '\n'; 5240 s << "\tcorrelatedViewMaskCount = " << value.correlatedViewMaskCount << '\n'; 5241 s << "\tpCorrelatedViewMasks = " << value.pCorrelatedViewMasks << '\n'; 5242 s << '}'; 5243 return s; 5244} 5245 5246std::ostream& operator<< (std::ostream& s, const VkSubpassBeginInfoKHR& value) 5247{ 5248 s << "VkSubpassBeginInfoKHR = {\n"; 5249 s << "\tsType = " << value.sType << '\n'; 5250 s << "\tpNext = " << value.pNext << '\n'; 5251 s << "\tcontents = " << value.contents << '\n'; 5252 s << '}'; 5253 return s; 5254} 5255 5256std::ostream& operator<< (std::ostream& s, const VkSubpassEndInfoKHR& value) 5257{ 5258 s << "VkSubpassEndInfoKHR = {\n"; 5259 s << "\tsType = " << value.sType << '\n'; 5260 s << "\tpNext = " << value.pNext << '\n'; 5261 s << '}'; 5262 return s; 5263} 5264 5265std::ostream& operator<< (std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value) 5266{ 5267 s << "VkSharedPresentSurfaceCapabilitiesKHR = {\n"; 5268 s << "\tsType = " << value.sType << '\n'; 5269 s << "\tpNext = " << value.pNext << '\n'; 5270 s << "\tsharedPresentSupportedUsageFlags = " << getImageUsageFlagsStr(value.sharedPresentSupportedUsageFlags) << '\n'; 5271 s << '}'; 5272 return s; 5273} 5274 5275std::ostream& operator<< (std::ostream& s, const VkImportFenceWin32HandleInfoKHR& value) 5276{ 5277 s << "VkImportFenceWin32HandleInfoKHR = {\n"; 5278 s << "\tsType = " << value.sType << '\n'; 5279 s << "\tpNext = " << value.pNext << '\n'; 5280 s << "\tfence = " << value.fence << '\n'; 5281 s << "\tflags = " << getFenceImportFlagsStr(value.flags) << '\n'; 5282 s << "\thandleType = " << value.handleType << '\n'; 5283 s << "\thandle = " << value.handle << '\n'; 5284 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 5285 s << '}'; 5286 return s; 5287} 5288 5289std::ostream& operator<< (std::ostream& s, const VkExportFenceWin32HandleInfoKHR& value) 5290{ 5291 s << "VkExportFenceWin32HandleInfoKHR = {\n"; 5292 s << "\tsType = " << value.sType << '\n'; 5293 s << "\tpNext = " << value.pNext << '\n'; 5294 s << "\tpAttributes = " << value.pAttributes << '\n'; 5295 s << "\tdwAccess = " << value.dwAccess << '\n'; 5296 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 5297 s << '}'; 5298 return s; 5299} 5300 5301std::ostream& operator<< (std::ostream& s, const VkFenceGetWin32HandleInfoKHR& value) 5302{ 5303 s << "VkFenceGetWin32HandleInfoKHR = {\n"; 5304 s << "\tsType = " << value.sType << '\n'; 5305 s << "\tpNext = " << value.pNext << '\n'; 5306 s << "\tfence = " << value.fence << '\n'; 5307 s << "\thandleType = " << value.handleType << '\n'; 5308 s << '}'; 5309 return s; 5310} 5311 5312std::ostream& operator<< (std::ostream& s, const VkImportFenceFdInfoKHR& value) 5313{ 5314 s << "VkImportFenceFdInfoKHR = {\n"; 5315 s << "\tsType = " << value.sType << '\n'; 5316 s << "\tpNext = " << value.pNext << '\n'; 5317 s << "\tfence = " << value.fence << '\n'; 5318 s << "\tflags = " << getFenceImportFlagsStr(value.flags) << '\n'; 5319 s << "\thandleType = " << value.handleType << '\n'; 5320 s << "\tfd = " << value.fd << '\n'; 5321 s << '}'; 5322 return s; 5323} 5324 5325std::ostream& operator<< (std::ostream& s, const VkFenceGetFdInfoKHR& value) 5326{ 5327 s << "VkFenceGetFdInfoKHR = {\n"; 5328 s << "\tsType = " << value.sType << '\n'; 5329 s << "\tpNext = " << value.pNext << '\n'; 5330 s << "\tfence = " << value.fence << '\n'; 5331 s << "\thandleType = " << value.handleType << '\n'; 5332 s << '}'; 5333 return s; 5334} 5335 5336std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value) 5337{ 5338 s << "VkPhysicalDeviceSurfaceInfo2KHR = {\n"; 5339 s << "\tsType = " << value.sType << '\n'; 5340 s << "\tpNext = " << value.pNext << '\n'; 5341 s << "\tsurface = " << value.surface << '\n'; 5342 s << '}'; 5343 return s; 5344} 5345 5346std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2KHR& value) 5347{ 5348 s << "VkSurfaceCapabilities2KHR = {\n"; 5349 s << "\tsType = " << value.sType << '\n'; 5350 s << "\tpNext = " << value.pNext << '\n'; 5351 s << "\tsurfaceCapabilities = " << value.surfaceCapabilities << '\n'; 5352 s << '}'; 5353 return s; 5354} 5355 5356std::ostream& operator<< (std::ostream& s, const VkSurfaceFormat2KHR& value) 5357{ 5358 s << "VkSurfaceFormat2KHR = {\n"; 5359 s << "\tsType = " << value.sType << '\n'; 5360 s << "\tpNext = " << value.pNext << '\n'; 5361 s << "\tsurfaceFormat = " << value.surfaceFormat << '\n'; 5362 s << '}'; 5363 return s; 5364} 5365 5366std::ostream& operator<< (std::ostream& s, const VkDisplayProperties2KHR& value) 5367{ 5368 s << "VkDisplayProperties2KHR = {\n"; 5369 s << "\tsType = " << value.sType << '\n'; 5370 s << "\tpNext = " << value.pNext << '\n'; 5371 s << "\tdisplayProperties = " << value.displayProperties << '\n'; 5372 s << '}'; 5373 return s; 5374} 5375 5376std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneProperties2KHR& value) 5377{ 5378 s << "VkDisplayPlaneProperties2KHR = {\n"; 5379 s << "\tsType = " << value.sType << '\n'; 5380 s << "\tpNext = " << value.pNext << '\n'; 5381 s << "\tdisplayPlaneProperties = " << value.displayPlaneProperties << '\n'; 5382 s << '}'; 5383 return s; 5384} 5385 5386std::ostream& operator<< (std::ostream& s, const VkDisplayModeProperties2KHR& value) 5387{ 5388 s << "VkDisplayModeProperties2KHR = {\n"; 5389 s << "\tsType = " << value.sType << '\n'; 5390 s << "\tpNext = " << value.pNext << '\n'; 5391 s << "\tdisplayModeProperties = " << value.displayModeProperties << '\n'; 5392 s << '}'; 5393 return s; 5394} 5395 5396std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneInfo2KHR& value) 5397{ 5398 s << "VkDisplayPlaneInfo2KHR = {\n"; 5399 s << "\tsType = " << value.sType << '\n'; 5400 s << "\tpNext = " << value.pNext << '\n'; 5401 s << "\tmode = " << value.mode << '\n'; 5402 s << "\tplaneIndex = " << value.planeIndex << '\n'; 5403 s << '}'; 5404 return s; 5405} 5406 5407std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneCapabilities2KHR& value) 5408{ 5409 s << "VkDisplayPlaneCapabilities2KHR = {\n"; 5410 s << "\tsType = " << value.sType << '\n'; 5411 s << "\tpNext = " << value.pNext << '\n'; 5412 s << "\tcapabilities = " << value.capabilities << '\n'; 5413 s << '}'; 5414 return s; 5415} 5416 5417std::ostream& operator<< (std::ostream& s, const VkImageFormatListCreateInfoKHR& value) 5418{ 5419 s << "VkImageFormatListCreateInfoKHR = {\n"; 5420 s << "\tsType = " << value.sType << '\n'; 5421 s << "\tpNext = " << value.pNext << '\n'; 5422 s << "\tviewFormatCount = " << value.viewFormatCount << '\n'; 5423 s << "\tpViewFormats = " << value.pViewFormats << '\n'; 5424 s << '}'; 5425 return s; 5426} 5427 5428std::ostream& operator<< (std::ostream& s, const VkConformanceVersionKHR& value) 5429{ 5430 s << "VkConformanceVersionKHR = {\n"; 5431 s << "\tmajor = " << value.major << '\n'; 5432 s << "\tminor = " << value.minor << '\n'; 5433 s << "\tsubminor = " << value.subminor << '\n'; 5434 s << "\tpatch = " << value.patch << '\n'; 5435 s << '}'; 5436 return s; 5437} 5438 5439std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDriverPropertiesKHR& value) 5440{ 5441 s << "VkPhysicalDeviceDriverPropertiesKHR = {\n"; 5442 s << "\tsType = " << value.sType << '\n'; 5443 s << "\tpNext = " << value.pNext << '\n'; 5444 s << "\tdriverID = " << value.driverID << '\n'; 5445 s << "\tdriverName = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<char>(DE_ARRAY_BEGIN(value.driverName)), tcu::Format::HexIterator<char>(DE_ARRAY_END(value.driverName))) << '\n'; 5446 s << "\tdriverInfo = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<char>(DE_ARRAY_BEGIN(value.driverInfo)), tcu::Format::HexIterator<char>(DE_ARRAY_END(value.driverInfo))) << '\n'; 5447 s << "\tconformanceVersion = " << value.conformanceVersion << '\n'; 5448 s << '}'; 5449 return s; 5450} 5451 5452std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFloatControlsPropertiesKHR& value) 5453{ 5454 s << "VkPhysicalDeviceFloatControlsPropertiesKHR = {\n"; 5455 s << "\tsType = " << value.sType << '\n'; 5456 s << "\tpNext = " << value.pNext << '\n'; 5457 s << "\tseparateDenormSettings = " << value.separateDenormSettings << '\n'; 5458 s << "\tseparateRoundingModeSettings = " << value.separateRoundingModeSettings << '\n'; 5459 s << "\tshaderSignedZeroInfNanPreserveFloat16 = " << value.shaderSignedZeroInfNanPreserveFloat16 << '\n'; 5460 s << "\tshaderSignedZeroInfNanPreserveFloat32 = " << value.shaderSignedZeroInfNanPreserveFloat32 << '\n'; 5461 s << "\tshaderSignedZeroInfNanPreserveFloat64 = " << value.shaderSignedZeroInfNanPreserveFloat64 << '\n'; 5462 s << "\tshaderDenormPreserveFloat16 = " << value.shaderDenormPreserveFloat16 << '\n'; 5463 s << "\tshaderDenormPreserveFloat32 = " << value.shaderDenormPreserveFloat32 << '\n'; 5464 s << "\tshaderDenormPreserveFloat64 = " << value.shaderDenormPreserveFloat64 << '\n'; 5465 s << "\tshaderDenormFlushToZeroFloat16 = " << value.shaderDenormFlushToZeroFloat16 << '\n'; 5466 s << "\tshaderDenormFlushToZeroFloat32 = " << value.shaderDenormFlushToZeroFloat32 << '\n'; 5467 s << "\tshaderDenormFlushToZeroFloat64 = " << value.shaderDenormFlushToZeroFloat64 << '\n'; 5468 s << "\tshaderRoundingModeRTEFloat16 = " << value.shaderRoundingModeRTEFloat16 << '\n'; 5469 s << "\tshaderRoundingModeRTEFloat32 = " << value.shaderRoundingModeRTEFloat32 << '\n'; 5470 s << "\tshaderRoundingModeRTEFloat64 = " << value.shaderRoundingModeRTEFloat64 << '\n'; 5471 s << "\tshaderRoundingModeRTZFloat16 = " << value.shaderRoundingModeRTZFloat16 << '\n'; 5472 s << "\tshaderRoundingModeRTZFloat32 = " << value.shaderRoundingModeRTZFloat32 << '\n'; 5473 s << "\tshaderRoundingModeRTZFloat64 = " << value.shaderRoundingModeRTZFloat64 << '\n'; 5474 s << '}'; 5475 return s; 5476} 5477 5478std::ostream& operator<< (std::ostream& s, const VkSubpassDescriptionDepthStencilResolveKHR& value) 5479{ 5480 s << "VkSubpassDescriptionDepthStencilResolveKHR = {\n"; 5481 s << "\tsType = " << value.sType << '\n'; 5482 s << "\tpNext = " << value.pNext << '\n'; 5483 s << "\tdepthResolveMode = " << value.depthResolveMode << '\n'; 5484 s << "\tstencilResolveMode = " << value.stencilResolveMode << '\n'; 5485 s << "\tpDepthStencilResolveAttachment = " << value.pDepthStencilResolveAttachment << '\n'; 5486 s << '}'; 5487 return s; 5488} 5489 5490std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDepthStencilResolvePropertiesKHR& value) 5491{ 5492 s << "VkPhysicalDeviceDepthStencilResolvePropertiesKHR = {\n"; 5493 s << "\tsType = " << value.sType << '\n'; 5494 s << "\tpNext = " << value.pNext << '\n'; 5495 s << "\tsupportedDepthResolveModes = " << getResolveModeFlagsKHRStr(value.supportedDepthResolveModes) << '\n'; 5496 s << "\tsupportedStencilResolveModes = " << getResolveModeFlagsKHRStr(value.supportedStencilResolveModes) << '\n'; 5497 s << "\tindependentResolveNone = " << value.independentResolveNone << '\n'; 5498 s << "\tindependentResolve = " << value.independentResolve << '\n'; 5499 s << '}'; 5500 return s; 5501} 5502 5503std::ostream& operator<< (std::ostream& s, const VkSurfaceProtectedCapabilitiesKHR& value) 5504{ 5505 s << "VkSurfaceProtectedCapabilitiesKHR = {\n"; 5506 s << "\tsType = " << value.sType << '\n'; 5507 s << "\tpNext = " << value.pNext << '\n'; 5508 s << "\tsupportsProtected = " << value.supportsProtected << '\n'; 5509 s << '}'; 5510 return s; 5511} 5512 5513std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value) 5514{ 5515 s << "VkDebugReportCallbackCreateInfoEXT = {\n"; 5516 s << "\tsType = " << value.sType << '\n'; 5517 s << "\tpNext = " << value.pNext << '\n'; 5518 s << "\tflags = " << getDebugReportFlagsEXTStr(value.flags) << '\n'; 5519 s << "\tpfnCallback = " << value.pfnCallback << '\n'; 5520 s << "\tpUserData = " << value.pUserData << '\n'; 5521 s << '}'; 5522 return s; 5523} 5524 5525std::ostream& operator<< (std::ostream& s, const VkPipelineRasterizationStateRasterizationOrderAMD& value) 5526{ 5527 s << "VkPipelineRasterizationStateRasterizationOrderAMD = {\n"; 5528 s << "\tsType = " << value.sType << '\n'; 5529 s << "\tpNext = " << value.pNext << '\n'; 5530 s << "\trasterizationOrder = " << value.rasterizationOrder << '\n'; 5531 s << '}'; 5532 return s; 5533} 5534 5535std::ostream& operator<< (std::ostream& s, const VkDebugMarkerObjectNameInfoEXT& value) 5536{ 5537 s << "VkDebugMarkerObjectNameInfoEXT = {\n"; 5538 s << "\tsType = " << value.sType << '\n'; 5539 s << "\tpNext = " << value.pNext << '\n'; 5540 s << "\tobjectType = " << value.objectType << '\n'; 5541 s << "\tobject = " << value.object << '\n'; 5542 s << "\tpObjectName = " << getCharPtrStr(value.pObjectName) << '\n'; 5543 s << '}'; 5544 return s; 5545} 5546 5547std::ostream& operator<< (std::ostream& s, const VkDebugMarkerObjectTagInfoEXT& value) 5548{ 5549 s << "VkDebugMarkerObjectTagInfoEXT = {\n"; 5550 s << "\tsType = " << value.sType << '\n'; 5551 s << "\tpNext = " << value.pNext << '\n'; 5552 s << "\tobjectType = " << value.objectType << '\n'; 5553 s << "\tobject = " << value.object << '\n'; 5554 s << "\ttagName = " << value.tagName << '\n'; 5555 s << "\ttagSize = " << value.tagSize << '\n'; 5556 s << "\tpTag = " << value.pTag << '\n'; 5557 s << '}'; 5558 return s; 5559} 5560 5561std::ostream& operator<< (std::ostream& s, const VkDebugMarkerMarkerInfoEXT& value) 5562{ 5563 s << "VkDebugMarkerMarkerInfoEXT = {\n"; 5564 s << "\tsType = " << value.sType << '\n'; 5565 s << "\tpNext = " << value.pNext << '\n'; 5566 s << "\tpMarkerName = " << getCharPtrStr(value.pMarkerName) << '\n'; 5567 s << "\tcolor = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.color), DE_ARRAY_END(value.color)) << '\n'; 5568 s << '}'; 5569 return s; 5570} 5571 5572std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationImageCreateInfoNV& value) 5573{ 5574 s << "VkDedicatedAllocationImageCreateInfoNV = {\n"; 5575 s << "\tsType = " << value.sType << '\n'; 5576 s << "\tpNext = " << value.pNext << '\n'; 5577 s << "\tdedicatedAllocation = " << value.dedicatedAllocation << '\n'; 5578 s << '}'; 5579 return s; 5580} 5581 5582std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationBufferCreateInfoNV& value) 5583{ 5584 s << "VkDedicatedAllocationBufferCreateInfoNV = {\n"; 5585 s << "\tsType = " << value.sType << '\n'; 5586 s << "\tpNext = " << value.pNext << '\n'; 5587 s << "\tdedicatedAllocation = " << value.dedicatedAllocation << '\n'; 5588 s << '}'; 5589 return s; 5590} 5591 5592std::ostream& operator<< (std::ostream& s, const VkDedicatedAllocationMemoryAllocateInfoNV& value) 5593{ 5594 s << "VkDedicatedAllocationMemoryAllocateInfoNV = {\n"; 5595 s << "\tsType = " << value.sType << '\n'; 5596 s << "\tpNext = " << value.pNext << '\n'; 5597 s << "\timage = " << value.image << '\n'; 5598 s << "\tbuffer = " << value.buffer << '\n'; 5599 s << '}'; 5600 return s; 5601} 5602 5603std::ostream& operator<< (std::ostream& s, const VkTextureLODGatherFormatPropertiesAMD& value) 5604{ 5605 s << "VkTextureLODGatherFormatPropertiesAMD = {\n"; 5606 s << "\tsType = " << value.sType << '\n'; 5607 s << "\tpNext = " << value.pNext << '\n'; 5608 s << "\tsupportsTextureGatherLODBiasAMD = " << value.supportsTextureGatherLODBiasAMD << '\n'; 5609 s << '}'; 5610 return s; 5611} 5612 5613std::ostream& operator<< (std::ostream& s, const VkExternalImageFormatPropertiesNV& value) 5614{ 5615 s << "VkExternalImageFormatPropertiesNV = {\n"; 5616 s << "\timageFormatProperties = " << value.imageFormatProperties << '\n'; 5617 s << "\texternalMemoryFeatures = " << getExternalMemoryFeatureFlagsNVStr(value.externalMemoryFeatures) << '\n'; 5618 s << "\texportFromImportedHandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.exportFromImportedHandleTypes) << '\n'; 5619 s << "\tcompatibleHandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.compatibleHandleTypes) << '\n'; 5620 s << '}'; 5621 return s; 5622} 5623 5624std::ostream& operator<< (std::ostream& s, const VkExternalMemoryImageCreateInfoNV& value) 5625{ 5626 s << "VkExternalMemoryImageCreateInfoNV = {\n"; 5627 s << "\tsType = " << value.sType << '\n'; 5628 s << "\tpNext = " << value.pNext << '\n'; 5629 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleTypes) << '\n'; 5630 s << '}'; 5631 return s; 5632} 5633 5634std::ostream& operator<< (std::ostream& s, const VkExportMemoryAllocateInfoNV& value) 5635{ 5636 s << "VkExportMemoryAllocateInfoNV = {\n"; 5637 s << "\tsType = " << value.sType << '\n'; 5638 s << "\tpNext = " << value.pNext << '\n'; 5639 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleTypes) << '\n'; 5640 s << '}'; 5641 return s; 5642} 5643 5644std::ostream& operator<< (std::ostream& s, const VkImportMemoryWin32HandleInfoNV& value) 5645{ 5646 s << "VkImportMemoryWin32HandleInfoNV = {\n"; 5647 s << "\tsType = " << value.sType << '\n'; 5648 s << "\tpNext = " << value.pNext << '\n'; 5649 s << "\thandleType = " << getExternalMemoryHandleTypeFlagsNVStr(value.handleType) << '\n'; 5650 s << "\thandle = " << value.handle << '\n'; 5651 s << '}'; 5652 return s; 5653} 5654 5655std::ostream& operator<< (std::ostream& s, const VkExportMemoryWin32HandleInfoNV& value) 5656{ 5657 s << "VkExportMemoryWin32HandleInfoNV = {\n"; 5658 s << "\tsType = " << value.sType << '\n'; 5659 s << "\tpNext = " << value.pNext << '\n'; 5660 s << "\tpAttributes = " << value.pAttributes << '\n'; 5661 s << "\tdwAccess = " << value.dwAccess << '\n'; 5662 s << '}'; 5663 return s; 5664} 5665 5666std::ostream& operator<< (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoNV& value) 5667{ 5668 s << "VkWin32KeyedMutexAcquireReleaseInfoNV = {\n"; 5669 s << "\tsType = " << value.sType << '\n'; 5670 s << "\tpNext = " << value.pNext << '\n'; 5671 s << "\tacquireCount = " << value.acquireCount << '\n'; 5672 s << "\tpAcquireSyncs = " << value.pAcquireSyncs << '\n'; 5673 s << "\tpAcquireKeys = " << value.pAcquireKeys << '\n'; 5674 s << "\tpAcquireTimeoutMilliseconds = " << value.pAcquireTimeoutMilliseconds << '\n'; 5675 s << "\treleaseCount = " << value.releaseCount << '\n'; 5676 s << "\tpReleaseSyncs = " << value.pReleaseSyncs << '\n'; 5677 s << "\tpReleaseKeys = " << value.pReleaseKeys << '\n'; 5678 s << '}'; 5679 return s; 5680} 5681 5682std::ostream& operator<< (std::ostream& s, const VkValidationFlagsEXT& value) 5683{ 5684 s << "VkValidationFlagsEXT = {\n"; 5685 s << "\tsType = " << value.sType << '\n'; 5686 s << "\tpNext = " << value.pNext << '\n'; 5687 s << "\tdisabledValidationCheckCount = " << value.disabledValidationCheckCount << '\n'; 5688 s << "\tpDisabledValidationChecks = " << value.pDisabledValidationChecks << '\n'; 5689 s << '}'; 5690 return s; 5691} 5692 5693std::ostream& operator<< (std::ostream& s, const VkViSurfaceCreateInfoNN& value) 5694{ 5695 s << "VkViSurfaceCreateInfoNN = {\n"; 5696 s << "\tsType = " << value.sType << '\n'; 5697 s << "\tpNext = " << value.pNext << '\n'; 5698 s << "\tflags = " << getViSurfaceCreateFlagsNNStr(value.flags) << '\n'; 5699 s << "\twindow = " << value.window << '\n'; 5700 s << '}'; 5701 return s; 5702} 5703 5704std::ostream& operator<< (std::ostream& s, const VkConditionalRenderingBeginInfoEXT& value) 5705{ 5706 s << "VkConditionalRenderingBeginInfoEXT = {\n"; 5707 s << "\tsType = " << value.sType << '\n'; 5708 s << "\tpNext = " << value.pNext << '\n'; 5709 s << "\tbuffer = " << value.buffer << '\n'; 5710 s << "\toffset = " << value.offset << '\n'; 5711 s << "\tflags = " << getConditionalRenderingFlagsEXTStr(value.flags) << '\n'; 5712 s << '}'; 5713 return s; 5714} 5715 5716std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceConditionalRenderingFeaturesEXT& value) 5717{ 5718 s << "VkPhysicalDeviceConditionalRenderingFeaturesEXT = {\n"; 5719 s << "\tsType = " << value.sType << '\n'; 5720 s << "\tpNext = " << value.pNext << '\n'; 5721 s << "\tconditionalRendering = " << value.conditionalRendering << '\n'; 5722 s << "\tinheritedConditionalRendering = " << value.inheritedConditionalRendering << '\n'; 5723 s << '}'; 5724 return s; 5725} 5726 5727std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceConditionalRenderingInfoEXT& value) 5728{ 5729 s << "VkCommandBufferInheritanceConditionalRenderingInfoEXT = {\n"; 5730 s << "\tsType = " << value.sType << '\n'; 5731 s << "\tpNext = " << value.pNext << '\n'; 5732 s << "\tconditionalRenderingEnable = " << value.conditionalRenderingEnable << '\n'; 5733 s << '}'; 5734 return s; 5735} 5736 5737std::ostream& operator<< (std::ostream& s, const VkDeviceGeneratedCommandsFeaturesNVX& value) 5738{ 5739 s << "VkDeviceGeneratedCommandsFeaturesNVX = {\n"; 5740 s << "\tsType = " << value.sType << '\n'; 5741 s << "\tpNext = " << value.pNext << '\n'; 5742 s << "\tcomputeBindingPointSupport = " << value.computeBindingPointSupport << '\n'; 5743 s << '}'; 5744 return s; 5745} 5746 5747std::ostream& operator<< (std::ostream& s, const VkDeviceGeneratedCommandsLimitsNVX& value) 5748{ 5749 s << "VkDeviceGeneratedCommandsLimitsNVX = {\n"; 5750 s << "\tsType = " << value.sType << '\n'; 5751 s << "\tpNext = " << value.pNext << '\n'; 5752 s << "\tmaxIndirectCommandsLayoutTokenCount = " << value.maxIndirectCommandsLayoutTokenCount << '\n'; 5753 s << "\tmaxObjectEntryCounts = " << value.maxObjectEntryCounts << '\n'; 5754 s << "\tminSequenceCountBufferOffsetAlignment = " << value.minSequenceCountBufferOffsetAlignment << '\n'; 5755 s << "\tminSequenceIndexBufferOffsetAlignment = " << value.minSequenceIndexBufferOffsetAlignment << '\n'; 5756 s << "\tminCommandsTokenBufferOffsetAlignment = " << value.minCommandsTokenBufferOffsetAlignment << '\n'; 5757 s << '}'; 5758 return s; 5759} 5760 5761std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsTokenNVX& value) 5762{ 5763 s << "VkIndirectCommandsTokenNVX = {\n"; 5764 s << "\ttokenType = " << value.tokenType << '\n'; 5765 s << "\tbuffer = " << value.buffer << '\n'; 5766 s << "\toffset = " << value.offset << '\n'; 5767 s << '}'; 5768 return s; 5769} 5770 5771std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutTokenNVX& value) 5772{ 5773 s << "VkIndirectCommandsLayoutTokenNVX = {\n"; 5774 s << "\ttokenType = " << value.tokenType << '\n'; 5775 s << "\tbindingUnit = " << value.bindingUnit << '\n'; 5776 s << "\tdynamicCount = " << value.dynamicCount << '\n'; 5777 s << "\tdivisor = " << value.divisor << '\n'; 5778 s << '}'; 5779 return s; 5780} 5781 5782std::ostream& operator<< (std::ostream& s, const VkIndirectCommandsLayoutCreateInfoNVX& value) 5783{ 5784 s << "VkIndirectCommandsLayoutCreateInfoNVX = {\n"; 5785 s << "\tsType = " << value.sType << '\n'; 5786 s << "\tpNext = " << value.pNext << '\n'; 5787 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 5788 s << "\tflags = " << getIndirectCommandsLayoutUsageFlagsNVXStr(value.flags) << '\n'; 5789 s << "\ttokenCount = " << value.tokenCount << '\n'; 5790 s << "\tpTokens = " << value.pTokens << '\n'; 5791 s << '}'; 5792 return s; 5793} 5794 5795std::ostream& operator<< (std::ostream& s, const VkCmdProcessCommandsInfoNVX& value) 5796{ 5797 s << "VkCmdProcessCommandsInfoNVX = {\n"; 5798 s << "\tsType = " << value.sType << '\n'; 5799 s << "\tpNext = " << value.pNext << '\n'; 5800 s << "\tobjectTable = " << value.objectTable << '\n'; 5801 s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n'; 5802 s << "\tindirectCommandsTokenCount = " << value.indirectCommandsTokenCount << '\n'; 5803 s << "\tpIndirectCommandsTokens = " << value.pIndirectCommandsTokens << '\n'; 5804 s << "\tmaxSequencesCount = " << value.maxSequencesCount << '\n'; 5805 s << "\ttargetCommandBuffer = " << value.targetCommandBuffer << '\n'; 5806 s << "\tsequencesCountBuffer = " << value.sequencesCountBuffer << '\n'; 5807 s << "\tsequencesCountOffset = " << value.sequencesCountOffset << '\n'; 5808 s << "\tsequencesIndexBuffer = " << value.sequencesIndexBuffer << '\n'; 5809 s << "\tsequencesIndexOffset = " << value.sequencesIndexOffset << '\n'; 5810 s << '}'; 5811 return s; 5812} 5813 5814std::ostream& operator<< (std::ostream& s, const VkCmdReserveSpaceForCommandsInfoNVX& value) 5815{ 5816 s << "VkCmdReserveSpaceForCommandsInfoNVX = {\n"; 5817 s << "\tsType = " << value.sType << '\n'; 5818 s << "\tpNext = " << value.pNext << '\n'; 5819 s << "\tobjectTable = " << value.objectTable << '\n'; 5820 s << "\tindirectCommandsLayout = " << value.indirectCommandsLayout << '\n'; 5821 s << "\tmaxSequencesCount = " << value.maxSequencesCount << '\n'; 5822 s << '}'; 5823 return s; 5824} 5825 5826std::ostream& operator<< (std::ostream& s, const VkObjectTableCreateInfoNVX& value) 5827{ 5828 s << "VkObjectTableCreateInfoNVX = {\n"; 5829 s << "\tsType = " << value.sType << '\n'; 5830 s << "\tpNext = " << value.pNext << '\n'; 5831 s << "\tobjectCount = " << value.objectCount << '\n'; 5832 s << "\tpObjectEntryTypes = " << value.pObjectEntryTypes << '\n'; 5833 s << "\tpObjectEntryCounts = " << value.pObjectEntryCounts << '\n'; 5834 s << "\tpObjectEntryUsageFlags = " << value.pObjectEntryUsageFlags << '\n'; 5835 s << "\tmaxUniformBuffersPerDescriptor = " << value.maxUniformBuffersPerDescriptor << '\n'; 5836 s << "\tmaxStorageBuffersPerDescriptor = " << value.maxStorageBuffersPerDescriptor << '\n'; 5837 s << "\tmaxStorageImagesPerDescriptor = " << value.maxStorageImagesPerDescriptor << '\n'; 5838 s << "\tmaxSampledImagesPerDescriptor = " << value.maxSampledImagesPerDescriptor << '\n'; 5839 s << "\tmaxPipelineLayouts = " << value.maxPipelineLayouts << '\n'; 5840 s << '}'; 5841 return s; 5842} 5843 5844std::ostream& operator<< (std::ostream& s, const VkObjectTableEntryNVX& value) 5845{ 5846 s << "VkObjectTableEntryNVX = {\n"; 5847 s << "\ttype = " << value.type << '\n'; 5848 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5849 s << '}'; 5850 return s; 5851} 5852 5853std::ostream& operator<< (std::ostream& s, const VkObjectTablePipelineEntryNVX& value) 5854{ 5855 s << "VkObjectTablePipelineEntryNVX = {\n"; 5856 s << "\ttype = " << value.type << '\n'; 5857 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5858 s << "\tpipeline = " << value.pipeline << '\n'; 5859 s << '}'; 5860 return s; 5861} 5862 5863std::ostream& operator<< (std::ostream& s, const VkObjectTableDescriptorSetEntryNVX& value) 5864{ 5865 s << "VkObjectTableDescriptorSetEntryNVX = {\n"; 5866 s << "\ttype = " << value.type << '\n'; 5867 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5868 s << "\tpipelineLayout = " << value.pipelineLayout << '\n'; 5869 s << "\tdescriptorSet = " << value.descriptorSet << '\n'; 5870 s << '}'; 5871 return s; 5872} 5873 5874std::ostream& operator<< (std::ostream& s, const VkObjectTableVertexBufferEntryNVX& value) 5875{ 5876 s << "VkObjectTableVertexBufferEntryNVX = {\n"; 5877 s << "\ttype = " << value.type << '\n'; 5878 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5879 s << "\tbuffer = " << value.buffer << '\n'; 5880 s << '}'; 5881 return s; 5882} 5883 5884std::ostream& operator<< (std::ostream& s, const VkObjectTableIndexBufferEntryNVX& value) 5885{ 5886 s << "VkObjectTableIndexBufferEntryNVX = {\n"; 5887 s << "\ttype = " << value.type << '\n'; 5888 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5889 s << "\tbuffer = " << value.buffer << '\n'; 5890 s << "\tindexType = " << value.indexType << '\n'; 5891 s << '}'; 5892 return s; 5893} 5894 5895std::ostream& operator<< (std::ostream& s, const VkObjectTablePushConstantEntryNVX& value) 5896{ 5897 s << "VkObjectTablePushConstantEntryNVX = {\n"; 5898 s << "\ttype = " << value.type << '\n'; 5899 s << "\tflags = " << getObjectEntryUsageFlagsNVXStr(value.flags) << '\n'; 5900 s << "\tpipelineLayout = " << value.pipelineLayout << '\n'; 5901 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n'; 5902 s << '}'; 5903 return s; 5904} 5905 5906std::ostream& operator<< (std::ostream& s, const VkViewportWScalingNV& value) 5907{ 5908 s << "VkViewportWScalingNV = {\n"; 5909 s << "\txcoeff = " << value.xcoeff << '\n'; 5910 s << "\tycoeff = " << value.ycoeff << '\n'; 5911 s << '}'; 5912 return s; 5913} 5914 5915std::ostream& operator<< (std::ostream& s, const VkPipelineViewportWScalingStateCreateInfoNV& value) 5916{ 5917 s << "VkPipelineViewportWScalingStateCreateInfoNV = {\n"; 5918 s << "\tsType = " << value.sType << '\n'; 5919 s << "\tpNext = " << value.pNext << '\n'; 5920 s << "\tviewportWScalingEnable = " << value.viewportWScalingEnable << '\n'; 5921 s << "\tviewportCount = " << value.viewportCount << '\n'; 5922 s << "\tpViewportWScalings = " << value.pViewportWScalings << '\n'; 5923 s << '}'; 5924 return s; 5925} 5926 5927std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2EXT& value) 5928{ 5929 s << "VkSurfaceCapabilities2EXT = {\n"; 5930 s << "\tsType = " << value.sType << '\n'; 5931 s << "\tpNext = " << value.pNext << '\n'; 5932 s << "\tminImageCount = " << value.minImageCount << '\n'; 5933 s << "\tmaxImageCount = " << value.maxImageCount << '\n'; 5934 s << "\tcurrentExtent = " << value.currentExtent << '\n'; 5935 s << "\tminImageExtent = " << value.minImageExtent << '\n'; 5936 s << "\tmaxImageExtent = " << value.maxImageExtent << '\n'; 5937 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n'; 5938 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n'; 5939 s << "\tcurrentTransform = " << value.currentTransform << '\n'; 5940 s << "\tsupportedCompositeAlpha = " << getCompositeAlphaFlagsKHRStr(value.supportedCompositeAlpha) << '\n'; 5941 s << "\tsupportedUsageFlags = " << getImageUsageFlagsStr(value.supportedUsageFlags) << '\n'; 5942 s << "\tsupportedSurfaceCounters = " << getSurfaceCounterFlagsEXTStr(value.supportedSurfaceCounters) << '\n'; 5943 s << '}'; 5944 return s; 5945} 5946 5947std::ostream& operator<< (std::ostream& s, const VkDisplayPowerInfoEXT& value) 5948{ 5949 s << "VkDisplayPowerInfoEXT = {\n"; 5950 s << "\tsType = " << value.sType << '\n'; 5951 s << "\tpNext = " << value.pNext << '\n'; 5952 s << "\tpowerState = " << value.powerState << '\n'; 5953 s << '}'; 5954 return s; 5955} 5956 5957std::ostream& operator<< (std::ostream& s, const VkDeviceEventInfoEXT& value) 5958{ 5959 s << "VkDeviceEventInfoEXT = {\n"; 5960 s << "\tsType = " << value.sType << '\n'; 5961 s << "\tpNext = " << value.pNext << '\n'; 5962 s << "\tdeviceEvent = " << value.deviceEvent << '\n'; 5963 s << '}'; 5964 return s; 5965} 5966 5967std::ostream& operator<< (std::ostream& s, const VkDisplayEventInfoEXT& value) 5968{ 5969 s << "VkDisplayEventInfoEXT = {\n"; 5970 s << "\tsType = " << value.sType << '\n'; 5971 s << "\tpNext = " << value.pNext << '\n'; 5972 s << "\tdisplayEvent = " << value.displayEvent << '\n'; 5973 s << '}'; 5974 return s; 5975} 5976 5977std::ostream& operator<< (std::ostream& s, const VkSwapchainCounterCreateInfoEXT& value) 5978{ 5979 s << "VkSwapchainCounterCreateInfoEXT = {\n"; 5980 s << "\tsType = " << value.sType << '\n'; 5981 s << "\tpNext = " << value.pNext << '\n'; 5982 s << "\tsurfaceCounters = " << getSurfaceCounterFlagsEXTStr(value.surfaceCounters) << '\n'; 5983 s << '}'; 5984 return s; 5985} 5986 5987std::ostream& operator<< (std::ostream& s, const VkRefreshCycleDurationGOOGLE& value) 5988{ 5989 s << "VkRefreshCycleDurationGOOGLE = {\n"; 5990 s << "\trefreshDuration = " << value.refreshDuration << '\n'; 5991 s << '}'; 5992 return s; 5993} 5994 5995std::ostream& operator<< (std::ostream& s, const VkPastPresentationTimingGOOGLE& value) 5996{ 5997 s << "VkPastPresentationTimingGOOGLE = {\n"; 5998 s << "\tpresentID = " << value.presentID << '\n'; 5999 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n'; 6000 s << "\tactualPresentTime = " << value.actualPresentTime << '\n'; 6001 s << "\tearliestPresentTime = " << value.earliestPresentTime << '\n'; 6002 s << "\tpresentMargin = " << value.presentMargin << '\n'; 6003 s << '}'; 6004 return s; 6005} 6006 6007std::ostream& operator<< (std::ostream& s, const VkPresentTimeGOOGLE& value) 6008{ 6009 s << "VkPresentTimeGOOGLE = {\n"; 6010 s << "\tpresentID = " << value.presentID << '\n'; 6011 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n'; 6012 s << '}'; 6013 return s; 6014} 6015 6016std::ostream& operator<< (std::ostream& s, const VkPresentTimesInfoGOOGLE& value) 6017{ 6018 s << "VkPresentTimesInfoGOOGLE = {\n"; 6019 s << "\tsType = " << value.sType << '\n'; 6020 s << "\tpNext = " << value.pNext << '\n'; 6021 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 6022 s << "\tpTimes = " << value.pTimes << '\n'; 6023 s << '}'; 6024 return s; 6025} 6026 6027std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX& value) 6028{ 6029 s << "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = {\n"; 6030 s << "\tsType = " << value.sType << '\n'; 6031 s << "\tpNext = " << value.pNext << '\n'; 6032 s << "\tperViewPositionAllComponents = " << value.perViewPositionAllComponents << '\n'; 6033 s << '}'; 6034 return s; 6035} 6036 6037std::ostream& operator<< (std::ostream& s, const VkViewportSwizzleNV& value) 6038{ 6039 s << "VkViewportSwizzleNV = {\n"; 6040 s << "\tx = " << value.x << '\n'; 6041 s << "\ty = " << value.y << '\n'; 6042 s << "\tz = " << value.z << '\n'; 6043 s << "\tw = " << value.w << '\n'; 6044 s << '}'; 6045 return s; 6046} 6047 6048std::ostream& operator<< (std::ostream& s, const VkPipelineViewportSwizzleStateCreateInfoNV& value) 6049{ 6050 s << "VkPipelineViewportSwizzleStateCreateInfoNV = {\n"; 6051 s << "\tsType = " << value.sType << '\n'; 6052 s << "\tpNext = " << value.pNext << '\n'; 6053 s << "\tflags = " << getPipelineViewportSwizzleStateCreateFlagsNVStr(value.flags) << '\n'; 6054 s << "\tviewportCount = " << value.viewportCount << '\n'; 6055 s << "\tpViewportSwizzles = " << value.pViewportSwizzles << '\n'; 6056 s << '}'; 6057 return s; 6058} 6059 6060std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDiscardRectanglePropertiesEXT& value) 6061{ 6062 s << "VkPhysicalDeviceDiscardRectanglePropertiesEXT = {\n"; 6063 s << "\tsType = " << value.sType << '\n'; 6064 s << "\tpNext = " << value.pNext << '\n'; 6065 s << "\tmaxDiscardRectangles = " << value.maxDiscardRectangles << '\n'; 6066 s << '}'; 6067 return s; 6068} 6069 6070std::ostream& operator<< (std::ostream& s, const VkPipelineDiscardRectangleStateCreateInfoEXT& value) 6071{ 6072 s << "VkPipelineDiscardRectangleStateCreateInfoEXT = {\n"; 6073 s << "\tsType = " << value.sType << '\n'; 6074 s << "\tpNext = " << value.pNext << '\n'; 6075 s << "\tflags = " << getPipelineDiscardRectangleStateCreateFlagsEXTStr(value.flags) << '\n'; 6076 s << "\tdiscardRectangleMode = " << value.discardRectangleMode << '\n'; 6077 s << "\tdiscardRectangleCount = " << value.discardRectangleCount << '\n'; 6078 s << "\tpDiscardRectangles = " << value.pDiscardRectangles << '\n'; 6079 s << '}'; 6080 return s; 6081} 6082 6083std::ostream& operator<< (std::ostream& s, const VkXYColorEXT& value) 6084{ 6085 s << "VkXYColorEXT = {\n"; 6086 s << "\tx = " << value.x << '\n'; 6087 s << "\ty = " << value.y << '\n'; 6088 s << '}'; 6089 return s; 6090} 6091 6092std::ostream& operator<< (std::ostream& s, const VkHdrMetadataEXT& value) 6093{ 6094 s << "VkHdrMetadataEXT = {\n"; 6095 s << "\tsType = " << value.sType << '\n'; 6096 s << "\tpNext = " << value.pNext << '\n'; 6097 s << "\tdisplayPrimaryRed = " << value.displayPrimaryRed << '\n'; 6098 s << "\tdisplayPrimaryGreen = " << value.displayPrimaryGreen << '\n'; 6099 s << "\tdisplayPrimaryBlue = " << value.displayPrimaryBlue << '\n'; 6100 s << "\twhitePoint = " << value.whitePoint << '\n'; 6101 s << "\tmaxLuminance = " << value.maxLuminance << '\n'; 6102 s << "\tminLuminance = " << value.minLuminance << '\n'; 6103 s << "\tmaxContentLightLevel = " << value.maxContentLightLevel << '\n'; 6104 s << "\tmaxFrameAverageLightLevel = " << value.maxFrameAverageLightLevel << '\n'; 6105 s << '}'; 6106 return s; 6107} 6108 6109std::ostream& operator<< (std::ostream& s, const VkIOSSurfaceCreateInfoMVK& value) 6110{ 6111 s << "VkIOSSurfaceCreateInfoMVK = {\n"; 6112 s << "\tsType = " << value.sType << '\n'; 6113 s << "\tpNext = " << value.pNext << '\n'; 6114 s << "\tflags = " << getIOSSurfaceCreateFlagsMVKStr(value.flags) << '\n'; 6115 s << "\tpView = " << value.pView << '\n'; 6116 s << '}'; 6117 return s; 6118} 6119 6120std::ostream& operator<< (std::ostream& s, const VkMacOSSurfaceCreateInfoMVK& value) 6121{ 6122 s << "VkMacOSSurfaceCreateInfoMVK = {\n"; 6123 s << "\tsType = " << value.sType << '\n'; 6124 s << "\tpNext = " << value.pNext << '\n'; 6125 s << "\tflags = " << getMacOSSurfaceCreateFlagsMVKStr(value.flags) << '\n'; 6126 s << "\tpView = " << value.pView << '\n'; 6127 s << '}'; 6128 return s; 6129} 6130 6131std::ostream& operator<< (std::ostream& s, const VkSamplerReductionModeCreateInfoEXT& value) 6132{ 6133 s << "VkSamplerReductionModeCreateInfoEXT = {\n"; 6134 s << "\tsType = " << value.sType << '\n'; 6135 s << "\tpNext = " << value.pNext << '\n'; 6136 s << "\treductionMode = " << value.reductionMode << '\n'; 6137 s << '}'; 6138 return s; 6139} 6140 6141std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT& value) 6142{ 6143 s << "VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT = {\n"; 6144 s << "\tsType = " << value.sType << '\n'; 6145 s << "\tpNext = " << value.pNext << '\n'; 6146 s << "\tfilterMinmaxSingleComponentFormats = " << value.filterMinmaxSingleComponentFormats << '\n'; 6147 s << "\tfilterMinmaxImageComponentMapping = " << value.filterMinmaxImageComponentMapping << '\n'; 6148 s << '}'; 6149 return s; 6150} 6151 6152std::ostream& operator<< (std::ostream& s, const VkSampleLocationEXT& value) 6153{ 6154 s << "VkSampleLocationEXT = {\n"; 6155 s << "\tx = " << value.x << '\n'; 6156 s << "\ty = " << value.y << '\n'; 6157 s << '}'; 6158 return s; 6159} 6160 6161std::ostream& operator<< (std::ostream& s, const VkSampleLocationsInfoEXT& value) 6162{ 6163 s << "VkSampleLocationsInfoEXT = {\n"; 6164 s << "\tsType = " << value.sType << '\n'; 6165 s << "\tpNext = " << value.pNext << '\n'; 6166 s << "\tsampleLocationsPerPixel = " << value.sampleLocationsPerPixel << '\n'; 6167 s << "\tsampleLocationGridSize = " << value.sampleLocationGridSize << '\n'; 6168 s << "\tsampleLocationsCount = " << value.sampleLocationsCount << '\n'; 6169 s << "\tpSampleLocations = " << value.pSampleLocations << '\n'; 6170 s << '}'; 6171 return s; 6172} 6173 6174std::ostream& operator<< (std::ostream& s, const VkAttachmentSampleLocationsEXT& value) 6175{ 6176 s << "VkAttachmentSampleLocationsEXT = {\n"; 6177 s << "\tattachmentIndex = " << value.attachmentIndex << '\n'; 6178 s << "\tsampleLocationsInfo = " << value.sampleLocationsInfo << '\n'; 6179 s << '}'; 6180 return s; 6181} 6182 6183std::ostream& operator<< (std::ostream& s, const VkSubpassSampleLocationsEXT& value) 6184{ 6185 s << "VkSubpassSampleLocationsEXT = {\n"; 6186 s << "\tsubpassIndex = " << value.subpassIndex << '\n'; 6187 s << "\tsampleLocationsInfo = " << value.sampleLocationsInfo << '\n'; 6188 s << '}'; 6189 return s; 6190} 6191 6192std::ostream& operator<< (std::ostream& s, const VkRenderPassSampleLocationsBeginInfoEXT& value) 6193{ 6194 s << "VkRenderPassSampleLocationsBeginInfoEXT = {\n"; 6195 s << "\tsType = " << value.sType << '\n'; 6196 s << "\tpNext = " << value.pNext << '\n'; 6197 s << "\tattachmentInitialSampleLocationsCount = " << value.attachmentInitialSampleLocationsCount << '\n'; 6198 s << "\tpAttachmentInitialSampleLocations = " << value.pAttachmentInitialSampleLocations << '\n'; 6199 s << "\tpostSubpassSampleLocationsCount = " << value.postSubpassSampleLocationsCount << '\n'; 6200 s << "\tpSubpassSampleLocations = " << value.pSubpassSampleLocations << '\n'; 6201 s << '}'; 6202 return s; 6203} 6204 6205std::ostream& operator<< (std::ostream& s, const VkPipelineSampleLocationsStateCreateInfoEXT& value) 6206{ 6207 s << "VkPipelineSampleLocationsStateCreateInfoEXT = {\n"; 6208 s << "\tsType = " << value.sType << '\n'; 6209 s << "\tpNext = " << value.pNext << '\n'; 6210 s << "\tsampleLocationsEnable = " << value.sampleLocationsEnable << '\n'; 6211 s << "\tsampleLocationsInfo = " << value.sampleLocationsInfo << '\n'; 6212 s << '}'; 6213 return s; 6214} 6215 6216std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSampleLocationsPropertiesEXT& value) 6217{ 6218 s << "VkPhysicalDeviceSampleLocationsPropertiesEXT = {\n"; 6219 s << "\tsType = " << value.sType << '\n'; 6220 s << "\tpNext = " << value.pNext << '\n'; 6221 s << "\tsampleLocationSampleCounts = " << getSampleCountFlagsStr(value.sampleLocationSampleCounts) << '\n'; 6222 s << "\tmaxSampleLocationGridSize = " << value.maxSampleLocationGridSize << '\n'; 6223 s << "\tsampleLocationCoordinateRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.sampleLocationCoordinateRange), DE_ARRAY_END(value.sampleLocationCoordinateRange)) << '\n'; 6224 s << "\tsampleLocationSubPixelBits = " << value.sampleLocationSubPixelBits << '\n'; 6225 s << "\tvariableSampleLocations = " << value.variableSampleLocations << '\n'; 6226 s << '}'; 6227 return s; 6228} 6229 6230std::ostream& operator<< (std::ostream& s, const VkMultisamplePropertiesEXT& value) 6231{ 6232 s << "VkMultisamplePropertiesEXT = {\n"; 6233 s << "\tsType = " << value.sType << '\n'; 6234 s << "\tpNext = " << value.pNext << '\n'; 6235 s << "\tmaxSampleLocationGridSize = " << value.maxSampleLocationGridSize << '\n'; 6236 s << '}'; 6237 return s; 6238} 6239 6240std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT& value) 6241{ 6242 s << "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT = {\n"; 6243 s << "\tsType = " << value.sType << '\n'; 6244 s << "\tpNext = " << value.pNext << '\n'; 6245 s << "\tadvancedBlendCoherentOperations = " << value.advancedBlendCoherentOperations << '\n'; 6246 s << '}'; 6247 return s; 6248} 6249 6250std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT& value) 6251{ 6252 s << "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT = {\n"; 6253 s << "\tsType = " << value.sType << '\n'; 6254 s << "\tpNext = " << value.pNext << '\n'; 6255 s << "\tadvancedBlendMaxColorAttachments = " << value.advancedBlendMaxColorAttachments << '\n'; 6256 s << "\tadvancedBlendIndependentBlend = " << value.advancedBlendIndependentBlend << '\n'; 6257 s << "\tadvancedBlendNonPremultipliedSrcColor = " << value.advancedBlendNonPremultipliedSrcColor << '\n'; 6258 s << "\tadvancedBlendNonPremultipliedDstColor = " << value.advancedBlendNonPremultipliedDstColor << '\n'; 6259 s << "\tadvancedBlendCorrelatedOverlap = " << value.advancedBlendCorrelatedOverlap << '\n'; 6260 s << "\tadvancedBlendAllOperations = " << value.advancedBlendAllOperations << '\n'; 6261 s << '}'; 6262 return s; 6263} 6264 6265std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendAdvancedStateCreateInfoEXT& value) 6266{ 6267 s << "VkPipelineColorBlendAdvancedStateCreateInfoEXT = {\n"; 6268 s << "\tsType = " << value.sType << '\n'; 6269 s << "\tpNext = " << value.pNext << '\n'; 6270 s << "\tsrcPremultiplied = " << value.srcPremultiplied << '\n'; 6271 s << "\tdstPremultiplied = " << value.dstPremultiplied << '\n'; 6272 s << "\tblendOverlap = " << value.blendOverlap << '\n'; 6273 s << '}'; 6274 return s; 6275} 6276 6277std::ostream& operator<< (std::ostream& s, const VkPipelineCoverageToColorStateCreateInfoNV& value) 6278{ 6279 s << "VkPipelineCoverageToColorStateCreateInfoNV = {\n"; 6280 s << "\tsType = " << value.sType << '\n'; 6281 s << "\tpNext = " << value.pNext << '\n'; 6282 s << "\tflags = " << getPipelineCoverageToColorStateCreateFlagsNVStr(value.flags) << '\n'; 6283 s << "\tcoverageToColorEnable = " << value.coverageToColorEnable << '\n'; 6284 s << "\tcoverageToColorLocation = " << value.coverageToColorLocation << '\n'; 6285 s << '}'; 6286 return s; 6287} 6288 6289std::ostream& operator<< (std::ostream& s, const VkPipelineCoverageModulationStateCreateInfoNV& value) 6290{ 6291 s << "VkPipelineCoverageModulationStateCreateInfoNV = {\n"; 6292 s << "\tsType = " << value.sType << '\n'; 6293 s << "\tpNext = " << value.pNext << '\n'; 6294 s << "\tflags = " << getPipelineCoverageModulationStateCreateFlagsNVStr(value.flags) << '\n'; 6295 s << "\tcoverageModulationMode = " << value.coverageModulationMode << '\n'; 6296 s << "\tcoverageModulationTableEnable = " << value.coverageModulationTableEnable << '\n'; 6297 s << "\tcoverageModulationTableCount = " << value.coverageModulationTableCount << '\n'; 6298 s << "\tpCoverageModulationTable = " << value.pCoverageModulationTable << '\n'; 6299 s << '}'; 6300 return s; 6301} 6302 6303std::ostream& operator<< (std::ostream& s, const VkValidationCacheCreateInfoEXT& value) 6304{ 6305 s << "VkValidationCacheCreateInfoEXT = {\n"; 6306 s << "\tsType = " << value.sType << '\n'; 6307 s << "\tpNext = " << value.pNext << '\n'; 6308 s << "\tflags = " << getValidationCacheCreateFlagsEXTStr(value.flags) << '\n'; 6309 s << "\tinitialDataSize = " << value.initialDataSize << '\n'; 6310 s << "\tpInitialData = " << value.pInitialData << '\n'; 6311 s << '}'; 6312 return s; 6313} 6314 6315std::ostream& operator<< (std::ostream& s, const VkShaderModuleValidationCacheCreateInfoEXT& value) 6316{ 6317 s << "VkShaderModuleValidationCacheCreateInfoEXT = {\n"; 6318 s << "\tsType = " << value.sType << '\n'; 6319 s << "\tpNext = " << value.pNext << '\n'; 6320 s << "\tvalidationCache = " << value.validationCache << '\n'; 6321 s << '}'; 6322 return s; 6323} 6324 6325std::ostream& operator<< (std::ostream& s, const VkAndroidHardwareBufferUsageANDROID& value) 6326{ 6327 s << "VkAndroidHardwareBufferUsageANDROID = {\n"; 6328 s << "\tsType = " << value.sType << '\n'; 6329 s << "\tpNext = " << value.pNext << '\n'; 6330 s << "\tandroidHardwareBufferUsage = " << value.androidHardwareBufferUsage << '\n'; 6331 s << '}'; 6332 return s; 6333} 6334 6335std::ostream& operator<< (std::ostream& s, const VkAndroidHardwareBufferPropertiesANDROID& value) 6336{ 6337 s << "VkAndroidHardwareBufferPropertiesANDROID = {\n"; 6338 s << "\tsType = " << value.sType << '\n'; 6339 s << "\tpNext = " << value.pNext << '\n'; 6340 s << "\tallocationSize = " << value.allocationSize << '\n'; 6341 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 6342 s << '}'; 6343 return s; 6344} 6345 6346std::ostream& operator<< (std::ostream& s, const VkAndroidHardwareBufferFormatPropertiesANDROID& value) 6347{ 6348 s << "VkAndroidHardwareBufferFormatPropertiesANDROID = {\n"; 6349 s << "\tsType = " << value.sType << '\n'; 6350 s << "\tpNext = " << value.pNext << '\n'; 6351 s << "\tformat = " << value.format << '\n'; 6352 s << "\texternalFormat = " << value.externalFormat << '\n'; 6353 s << "\tformatFeatures = " << getFormatFeatureFlagsStr(value.formatFeatures) << '\n'; 6354 s << "\tsamplerYcbcrConversionComponents = " << value.samplerYcbcrConversionComponents << '\n'; 6355 s << "\tsuggestedYcbcrModel = " << value.suggestedYcbcrModel << '\n'; 6356 s << "\tsuggestedYcbcrRange = " << value.suggestedYcbcrRange << '\n'; 6357 s << "\tsuggestedXChromaOffset = " << value.suggestedXChromaOffset << '\n'; 6358 s << "\tsuggestedYChromaOffset = " << value.suggestedYChromaOffset << '\n'; 6359 s << '}'; 6360 return s; 6361} 6362 6363std::ostream& operator<< (std::ostream& s, const VkImportAndroidHardwareBufferInfoANDROID& value) 6364{ 6365 s << "VkImportAndroidHardwareBufferInfoANDROID = {\n"; 6366 s << "\tsType = " << value.sType << '\n'; 6367 s << "\tpNext = " << value.pNext << '\n'; 6368 s << "\tbuffer = " << value.buffer << '\n'; 6369 s << '}'; 6370 return s; 6371} 6372 6373std::ostream& operator<< (std::ostream& s, const VkMemoryGetAndroidHardwareBufferInfoANDROID& value) 6374{ 6375 s << "VkMemoryGetAndroidHardwareBufferInfoANDROID = {\n"; 6376 s << "\tsType = " << value.sType << '\n'; 6377 s << "\tpNext = " << value.pNext << '\n'; 6378 s << "\tmemory = " << value.memory << '\n'; 6379 s << '}'; 6380 return s; 6381} 6382 6383std::ostream& operator<< (std::ostream& s, const VkExternalFormatANDROID& value) 6384{ 6385 s << "VkExternalFormatANDROID = {\n"; 6386 s << "\tsType = " << value.sType << '\n'; 6387 s << "\tpNext = " << value.pNext << '\n'; 6388 s << "\texternalFormat = " << value.externalFormat << '\n'; 6389 s << '}'; 6390 return s; 6391} 6392 6393std::ostream& operator<< (std::ostream& s, const VkImportMemoryHostPointerInfoEXT& value) 6394{ 6395 s << "VkImportMemoryHostPointerInfoEXT = {\n"; 6396 s << "\tsType = " << value.sType << '\n'; 6397 s << "\tpNext = " << value.pNext << '\n'; 6398 s << "\thandleType = " << value.handleType << '\n'; 6399 s << "\tpHostPointer = " << value.pHostPointer << '\n'; 6400 s << '}'; 6401 return s; 6402} 6403 6404std::ostream& operator<< (std::ostream& s, const VkMemoryHostPointerPropertiesEXT& value) 6405{ 6406 s << "VkMemoryHostPointerPropertiesEXT = {\n"; 6407 s << "\tsType = " << value.sType << '\n'; 6408 s << "\tpNext = " << value.pNext << '\n'; 6409 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 6410 s << '}'; 6411 return s; 6412} 6413 6414std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalMemoryHostPropertiesEXT& value) 6415{ 6416 s << "VkPhysicalDeviceExternalMemoryHostPropertiesEXT = {\n"; 6417 s << "\tsType = " << value.sType << '\n'; 6418 s << "\tpNext = " << value.pNext << '\n'; 6419 s << "\tminImportedHostPointerAlignment = " << value.minImportedHostPointerAlignment << '\n'; 6420 s << '}'; 6421 return s; 6422} 6423 6424std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT& value) 6425{ 6426 s << "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT = {\n"; 6427 s << "\tsType = " << value.sType << '\n'; 6428 s << "\tpNext = " << value.pNext << '\n'; 6429 s << "\tmaxVertexAttribDivisor = " << value.maxVertexAttribDivisor << '\n'; 6430 s << '}'; 6431 return s; 6432} 6433 6434std::ostream& operator<< (std::ostream& s, const VkVertexInputBindingDivisorDescriptionEXT& value) 6435{ 6436 s << "VkVertexInputBindingDivisorDescriptionEXT = {\n"; 6437 s << "\tbinding = " << value.binding << '\n'; 6438 s << "\tdivisor = " << value.divisor << '\n'; 6439 s << '}'; 6440 return s; 6441} 6442 6443std::ostream& operator<< (std::ostream& s, const VkPipelineVertexInputDivisorStateCreateInfoEXT& value) 6444{ 6445 s << "VkPipelineVertexInputDivisorStateCreateInfoEXT = {\n"; 6446 s << "\tsType = " << value.sType << '\n'; 6447 s << "\tpNext = " << value.pNext << '\n'; 6448 s << "\tvertexBindingDivisorCount = " << value.vertexBindingDivisorCount << '\n'; 6449 s << "\tpVertexBindingDivisors = " << value.pVertexBindingDivisors << '\n'; 6450 s << '}'; 6451 return s; 6452} 6453 6454std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT& value) 6455{ 6456 s << "VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT = {\n"; 6457 s << "\tsType = " << value.sType << '\n'; 6458 s << "\tpNext = " << value.pNext << '\n'; 6459 s << "\tvertexAttributeInstanceRateDivisor = " << value.vertexAttributeInstanceRateDivisor << '\n'; 6460 s << "\tvertexAttributeInstanceRateZeroDivisor = " << value.vertexAttributeInstanceRateZeroDivisor << '\n'; 6461 s << '}'; 6462 return s; 6463} 6464 6465std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutBindingFlagsCreateInfoEXT& value) 6466{ 6467 s << "VkDescriptorSetLayoutBindingFlagsCreateInfoEXT = {\n"; 6468 s << "\tsType = " << value.sType << '\n'; 6469 s << "\tpNext = " << value.pNext << '\n'; 6470 s << "\tbindingCount = " << value.bindingCount << '\n'; 6471 s << "\tpBindingFlags = " << value.pBindingFlags << '\n'; 6472 s << '}'; 6473 return s; 6474} 6475 6476std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDescriptorIndexingFeaturesEXT& value) 6477{ 6478 s << "VkPhysicalDeviceDescriptorIndexingFeaturesEXT = {\n"; 6479 s << "\tsType = " << value.sType << '\n'; 6480 s << "\tpNext = " << value.pNext << '\n'; 6481 s << "\tshaderInputAttachmentArrayDynamicIndexing = " << value.shaderInputAttachmentArrayDynamicIndexing << '\n'; 6482 s << "\tshaderUniformTexelBufferArrayDynamicIndexing = " << value.shaderUniformTexelBufferArrayDynamicIndexing << '\n'; 6483 s << "\tshaderStorageTexelBufferArrayDynamicIndexing = " << value.shaderStorageTexelBufferArrayDynamicIndexing << '\n'; 6484 s << "\tshaderUniformBufferArrayNonUniformIndexing = " << value.shaderUniformBufferArrayNonUniformIndexing << '\n'; 6485 s << "\tshaderSampledImageArrayNonUniformIndexing = " << value.shaderSampledImageArrayNonUniformIndexing << '\n'; 6486 s << "\tshaderStorageBufferArrayNonUniformIndexing = " << value.shaderStorageBufferArrayNonUniformIndexing << '\n'; 6487 s << "\tshaderStorageImageArrayNonUniformIndexing = " << value.shaderStorageImageArrayNonUniformIndexing << '\n'; 6488 s << "\tshaderInputAttachmentArrayNonUniformIndexing = " << value.shaderInputAttachmentArrayNonUniformIndexing << '\n'; 6489 s << "\tshaderUniformTexelBufferArrayNonUniformIndexing = " << value.shaderUniformTexelBufferArrayNonUniformIndexing << '\n'; 6490 s << "\tshaderStorageTexelBufferArrayNonUniformIndexing = " << value.shaderStorageTexelBufferArrayNonUniformIndexing << '\n'; 6491 s << "\tdescriptorBindingUniformBufferUpdateAfterBind = " << value.descriptorBindingUniformBufferUpdateAfterBind << '\n'; 6492 s << "\tdescriptorBindingSampledImageUpdateAfterBind = " << value.descriptorBindingSampledImageUpdateAfterBind << '\n'; 6493 s << "\tdescriptorBindingStorageImageUpdateAfterBind = " << value.descriptorBindingStorageImageUpdateAfterBind << '\n'; 6494 s << "\tdescriptorBindingStorageBufferUpdateAfterBind = " << value.descriptorBindingStorageBufferUpdateAfterBind << '\n'; 6495 s << "\tdescriptorBindingUniformTexelBufferUpdateAfterBind = " << value.descriptorBindingUniformTexelBufferUpdateAfterBind << '\n'; 6496 s << "\tdescriptorBindingStorageTexelBufferUpdateAfterBind = " << value.descriptorBindingStorageTexelBufferUpdateAfterBind << '\n'; 6497 s << "\tdescriptorBindingUpdateUnusedWhilePending = " << value.descriptorBindingUpdateUnusedWhilePending << '\n'; 6498 s << "\tdescriptorBindingPartiallyBound = " << value.descriptorBindingPartiallyBound << '\n'; 6499 s << "\tdescriptorBindingVariableDescriptorCount = " << value.descriptorBindingVariableDescriptorCount << '\n'; 6500 s << "\truntimeDescriptorArray = " << value.runtimeDescriptorArray << '\n'; 6501 s << '}'; 6502 return s; 6503} 6504 6505std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDescriptorIndexingPropertiesEXT& value) 6506{ 6507 s << "VkPhysicalDeviceDescriptorIndexingPropertiesEXT = {\n"; 6508 s << "\tsType = " << value.sType << '\n'; 6509 s << "\tpNext = " << value.pNext << '\n'; 6510 s << "\tmaxUpdateAfterBindDescriptorsInAllPools = " << value.maxUpdateAfterBindDescriptorsInAllPools << '\n'; 6511 s << "\tshaderUniformBufferArrayNonUniformIndexingNative = " << value.shaderUniformBufferArrayNonUniformIndexingNative << '\n'; 6512 s << "\tshaderSampledImageArrayNonUniformIndexingNative = " << value.shaderSampledImageArrayNonUniformIndexingNative << '\n'; 6513 s << "\tshaderStorageBufferArrayNonUniformIndexingNative = " << value.shaderStorageBufferArrayNonUniformIndexingNative << '\n'; 6514 s << "\tshaderStorageImageArrayNonUniformIndexingNative = " << value.shaderStorageImageArrayNonUniformIndexingNative << '\n'; 6515 s << "\tshaderInputAttachmentArrayNonUniformIndexingNative = " << value.shaderInputAttachmentArrayNonUniformIndexingNative << '\n'; 6516 s << "\trobustBufferAccessUpdateAfterBind = " << value.robustBufferAccessUpdateAfterBind << '\n'; 6517 s << "\tquadDivergentImplicitLod = " << value.quadDivergentImplicitLod << '\n'; 6518 s << "\tmaxPerStageDescriptorUpdateAfterBindSamplers = " << value.maxPerStageDescriptorUpdateAfterBindSamplers << '\n'; 6519 s << "\tmaxPerStageDescriptorUpdateAfterBindUniformBuffers = " << value.maxPerStageDescriptorUpdateAfterBindUniformBuffers << '\n'; 6520 s << "\tmaxPerStageDescriptorUpdateAfterBindStorageBuffers = " << value.maxPerStageDescriptorUpdateAfterBindStorageBuffers << '\n'; 6521 s << "\tmaxPerStageDescriptorUpdateAfterBindSampledImages = " << value.maxPerStageDescriptorUpdateAfterBindSampledImages << '\n'; 6522 s << "\tmaxPerStageDescriptorUpdateAfterBindStorageImages = " << value.maxPerStageDescriptorUpdateAfterBindStorageImages << '\n'; 6523 s << "\tmaxPerStageDescriptorUpdateAfterBindInputAttachments = " << value.maxPerStageDescriptorUpdateAfterBindInputAttachments << '\n'; 6524 s << "\tmaxPerStageUpdateAfterBindResources = " << value.maxPerStageUpdateAfterBindResources << '\n'; 6525 s << "\tmaxDescriptorSetUpdateAfterBindSamplers = " << value.maxDescriptorSetUpdateAfterBindSamplers << '\n'; 6526 s << "\tmaxDescriptorSetUpdateAfterBindUniformBuffers = " << value.maxDescriptorSetUpdateAfterBindUniformBuffers << '\n'; 6527 s << "\tmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic = " << value.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic << '\n'; 6528 s << "\tmaxDescriptorSetUpdateAfterBindStorageBuffers = " << value.maxDescriptorSetUpdateAfterBindStorageBuffers << '\n'; 6529 s << "\tmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic = " << value.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic << '\n'; 6530 s << "\tmaxDescriptorSetUpdateAfterBindSampledImages = " << value.maxDescriptorSetUpdateAfterBindSampledImages << '\n'; 6531 s << "\tmaxDescriptorSetUpdateAfterBindStorageImages = " << value.maxDescriptorSetUpdateAfterBindStorageImages << '\n'; 6532 s << "\tmaxDescriptorSetUpdateAfterBindInputAttachments = " << value.maxDescriptorSetUpdateAfterBindInputAttachments << '\n'; 6533 s << '}'; 6534 return s; 6535} 6536 6537std::ostream& operator<< (std::ostream& s, const VkDescriptorSetVariableDescriptorCountAllocateInfoEXT& value) 6538{ 6539 s << "VkDescriptorSetVariableDescriptorCountAllocateInfoEXT = {\n"; 6540 s << "\tsType = " << value.sType << '\n'; 6541 s << "\tpNext = " << value.pNext << '\n'; 6542 s << "\tdescriptorSetCount = " << value.descriptorSetCount << '\n'; 6543 s << "\tpDescriptorCounts = " << value.pDescriptorCounts << '\n'; 6544 s << '}'; 6545 return s; 6546} 6547 6548std::ostream& operator<< (std::ostream& s, const VkDescriptorSetVariableDescriptorCountLayoutSupportEXT& value) 6549{ 6550 s << "VkDescriptorSetVariableDescriptorCountLayoutSupportEXT = {\n"; 6551 s << "\tsType = " << value.sType << '\n'; 6552 s << "\tpNext = " << value.pNext << '\n'; 6553 s << "\tmaxVariableDescriptorCount = " << value.maxVariableDescriptorCount << '\n'; 6554 s << '}'; 6555 return s; 6556} 6557 6558std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceInlineUniformBlockFeaturesEXT& value) 6559{ 6560 s << "VkPhysicalDeviceInlineUniformBlockFeaturesEXT = {\n"; 6561 s << "\tsType = " << value.sType << '\n'; 6562 s << "\tpNext = " << value.pNext << '\n'; 6563 s << "\tinlineUniformBlock = " << value.inlineUniformBlock << '\n'; 6564 s << "\tdescriptorBindingInlineUniformBlockUpdateAfterBind = " << value.descriptorBindingInlineUniformBlockUpdateAfterBind << '\n'; 6565 s << '}'; 6566 return s; 6567} 6568 6569std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceInlineUniformBlockPropertiesEXT& value) 6570{ 6571 s << "VkPhysicalDeviceInlineUniformBlockPropertiesEXT = {\n"; 6572 s << "\tsType = " << value.sType << '\n'; 6573 s << "\tpNext = " << value.pNext << '\n'; 6574 s << "\tmaxInlineUniformBlockSize = " << value.maxInlineUniformBlockSize << '\n'; 6575 s << "\tmaxPerStageDescriptorInlineUniformBlocks = " << value.maxPerStageDescriptorInlineUniformBlocks << '\n'; 6576 s << "\tmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = " << value.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks << '\n'; 6577 s << "\tmaxDescriptorSetInlineUniformBlocks = " << value.maxDescriptorSetInlineUniformBlocks << '\n'; 6578 s << "\tmaxDescriptorSetUpdateAfterBindInlineUniformBlocks = " << value.maxDescriptorSetUpdateAfterBindInlineUniformBlocks << '\n'; 6579 s << '}'; 6580 return s; 6581} 6582 6583std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSetInlineUniformBlockEXT& value) 6584{ 6585 s << "VkWriteDescriptorSetInlineUniformBlockEXT = {\n"; 6586 s << "\tsType = " << value.sType << '\n'; 6587 s << "\tpNext = " << value.pNext << '\n'; 6588 s << "\tdataSize = " << value.dataSize << '\n'; 6589 s << "\tpData = " << value.pData << '\n'; 6590 s << '}'; 6591 return s; 6592} 6593 6594std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolInlineUniformBlockCreateInfoEXT& value) 6595{ 6596 s << "VkDescriptorPoolInlineUniformBlockCreateInfoEXT = {\n"; 6597 s << "\tsType = " << value.sType << '\n'; 6598 s << "\tpNext = " << value.pNext << '\n'; 6599 s << "\tmaxInlineUniformBlockBindings = " << value.maxInlineUniformBlockBindings << '\n'; 6600 s << '}'; 6601 return s; 6602} 6603 6604std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderAtomicInt64FeaturesKHR& value) 6605{ 6606 s << "VkPhysicalDeviceShaderAtomicInt64FeaturesKHR = {\n"; 6607 s << "\tsType = " << value.sType << '\n'; 6608 s << "\tpNext = " << value.pNext << '\n'; 6609 s << "\tshaderBufferInt64Atomics = " << value.shaderBufferInt64Atomics << '\n'; 6610 s << "\tshaderSharedInt64Atomics = " << value.shaderSharedInt64Atomics << '\n'; 6611 s << '}'; 6612 return s; 6613} 6614 6615std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVulkanMemoryModelFeaturesKHR& value) 6616{ 6617 s << "VkPhysicalDeviceVulkanMemoryModelFeaturesKHR = {\n"; 6618 s << "\tsType = " << value.sType << '\n'; 6619 s << "\tpNext = " << value.pNext << '\n'; 6620 s << "\tvulkanMemoryModel = " << value.vulkanMemoryModel << '\n'; 6621 s << "\tvulkanMemoryModelDeviceScope = " << value.vulkanMemoryModelDeviceScope << '\n'; 6622 s << "\tvulkanMemoryModelAvailabilityVisibilityChains = " << value.vulkanMemoryModelAvailabilityVisibilityChains << '\n'; 6623 s << '}'; 6624 return s; 6625} 6626 6627std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceScalarBlockLayoutFeaturesEXT& value) 6628{ 6629 s << "VkPhysicalDeviceScalarBlockLayoutFeaturesEXT = {\n"; 6630 s << "\tsType = " << value.sType << '\n'; 6631 s << "\tpNext = " << value.pNext << '\n'; 6632 s << "\tscalarBlockLayout = " << value.scalarBlockLayout << '\n'; 6633 s << '}'; 6634 return s; 6635} 6636