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<VkSurfaceKHR> (void) { return "VkSurfaceKHR"; } 30template<> const char* getTypeName<VkSwapchainKHR> (void) { return "VkSwapchainKHR"; } 31template<> const char* getTypeName<VkDisplayKHR> (void) { return "VkDisplayKHR"; } 32template<> const char* getTypeName<VkDisplayModeKHR> (void) { return "VkDisplayModeKHR"; } 33template<> const char* getTypeName<VkDescriptorUpdateTemplateKHR> (void) { return "VkDescriptorUpdateTemplateKHR"; } 34template<> const char* getTypeName<VkSamplerYcbcrConversionKHR> (void) { return "VkSamplerYcbcrConversionKHR"; } 35template<> const char* getTypeName<VkDebugReportCallbackEXT> (void) { return "VkDebugReportCallbackEXT"; } 36 37namespace pt 38{ 39std::ostream& operator<< (std::ostream& s, XlibDisplayPtr v) { return s << tcu::toHex(v.internal); } 40std::ostream& operator<< (std::ostream& s, XlibWindow v) { return s << tcu::toHex(v.internal); } 41std::ostream& operator<< (std::ostream& s, XlibVisualID v) { return s << tcu::toHex(v.internal); } 42std::ostream& operator<< (std::ostream& s, XcbConnectionPtr v) { return s << tcu::toHex(v.internal); } 43std::ostream& operator<< (std::ostream& s, XcbWindow v) { return s << tcu::toHex(v.internal); } 44std::ostream& operator<< (std::ostream& s, XcbVisualid v) { return s << tcu::toHex(v.internal); } 45std::ostream& operator<< (std::ostream& s, WaylandDisplayPtr v) { return s << tcu::toHex(v.internal); } 46std::ostream& operator<< (std::ostream& s, WaylandSurfacePtr v) { return s << tcu::toHex(v.internal); } 47std::ostream& operator<< (std::ostream& s, MirConnectionPtr v) { return s << tcu::toHex(v.internal); } 48std::ostream& operator<< (std::ostream& s, MirSurfacePtr v) { return s << tcu::toHex(v.internal); } 49std::ostream& operator<< (std::ostream& s, AndroidNativeWindowPtr v) { return s << tcu::toHex(v.internal); } 50std::ostream& operator<< (std::ostream& s, Win32InstanceHandle v) { return s << tcu::toHex(v.internal); } 51std::ostream& operator<< (std::ostream& s, Win32WindowHandle v) { return s << tcu::toHex(v.internal); } 52std::ostream& operator<< (std::ostream& s, Win32Handle v) { return s << tcu::toHex(v.internal); } 53std::ostream& operator<< (std::ostream& s, Win32SecurityAttributesPtr v) { return s << tcu::toHex(v.internal); } 54} 55 56const char* getPipelineCacheHeaderVersionName (VkPipelineCacheHeaderVersion value) 57{ 58 switch (value) 59 { 60 case VK_PIPELINE_CACHE_HEADER_VERSION_ONE: return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"; 61 default: return DE_NULL; 62 } 63} 64 65const char* getResultName (VkResult value) 66{ 67 switch (value) 68 { 69 case VK_SUCCESS: return "VK_SUCCESS"; 70 case VK_NOT_READY: return "VK_NOT_READY"; 71 case VK_TIMEOUT: return "VK_TIMEOUT"; 72 case VK_EVENT_SET: return "VK_EVENT_SET"; 73 case VK_EVENT_RESET: return "VK_EVENT_RESET"; 74 case VK_INCOMPLETE: return "VK_INCOMPLETE"; 75 case VK_ERROR_OUT_OF_HOST_MEMORY: return "VK_ERROR_OUT_OF_HOST_MEMORY"; 76 case VK_ERROR_OUT_OF_DEVICE_MEMORY: return "VK_ERROR_OUT_OF_DEVICE_MEMORY"; 77 case VK_ERROR_INITIALIZATION_FAILED: return "VK_ERROR_INITIALIZATION_FAILED"; 78 case VK_ERROR_DEVICE_LOST: return "VK_ERROR_DEVICE_LOST"; 79 case VK_ERROR_MEMORY_MAP_FAILED: return "VK_ERROR_MEMORY_MAP_FAILED"; 80 case VK_ERROR_LAYER_NOT_PRESENT: return "VK_ERROR_LAYER_NOT_PRESENT"; 81 case VK_ERROR_EXTENSION_NOT_PRESENT: return "VK_ERROR_EXTENSION_NOT_PRESENT"; 82 case VK_ERROR_FEATURE_NOT_PRESENT: return "VK_ERROR_FEATURE_NOT_PRESENT"; 83 case VK_ERROR_INCOMPATIBLE_DRIVER: return "VK_ERROR_INCOMPATIBLE_DRIVER"; 84 case VK_ERROR_TOO_MANY_OBJECTS: return "VK_ERROR_TOO_MANY_OBJECTS"; 85 case VK_ERROR_FORMAT_NOT_SUPPORTED: return "VK_ERROR_FORMAT_NOT_SUPPORTED"; 86 case VK_ERROR_FRAGMENTED_POOL: return "VK_ERROR_FRAGMENTED_POOL"; 87 case VK_ERROR_SURFACE_LOST_KHR: return "VK_ERROR_SURFACE_LOST_KHR"; 88 case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR: return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"; 89 case VK_SUBOPTIMAL_KHR: return "VK_SUBOPTIMAL_KHR"; 90 case VK_ERROR_OUT_OF_DATE_KHR: return "VK_ERROR_OUT_OF_DATE_KHR"; 91 case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR: return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"; 92 case VK_ERROR_VALIDATION_FAILED_EXT: return "VK_ERROR_VALIDATION_FAILED_EXT"; 93 case VK_ERROR_INVALID_SHADER_NV: return "VK_ERROR_INVALID_SHADER_NV"; 94 case VK_ERROR_OUT_OF_POOL_MEMORY_KHR: return "VK_ERROR_OUT_OF_POOL_MEMORY_KHR"; 95 case VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR: return "VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR"; 96 default: return DE_NULL; 97 } 98} 99 100const char* getStructureTypeName (VkStructureType value) 101{ 102 switch (value) 103 { 104 case VK_STRUCTURE_TYPE_APPLICATION_INFO: return "VK_STRUCTURE_TYPE_APPLICATION_INFO"; 105 case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"; 106 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"; 107 case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"; 108 case VK_STRUCTURE_TYPE_SUBMIT_INFO: return "VK_STRUCTURE_TYPE_SUBMIT_INFO"; 109 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"; 110 case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE: return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"; 111 case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO: return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO"; 112 case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"; 113 case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"; 114 case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO: return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"; 115 case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"; 116 case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"; 117 case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"; 118 case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"; 119 case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"; 120 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO"; 121 case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"; 122 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"; 123 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"; 124 case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"; 125 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"; 126 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"; 127 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"; 128 case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"; 129 case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"; 130 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"; 131 case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"; 132 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"; 133 case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"; 134 case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"; 135 case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO: return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"; 136 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"; 137 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"; 138 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"; 139 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"; 140 case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"; 141 case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"; 142 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"; 143 case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"; 144 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"; 145 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"; 146 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"; 147 case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"; 148 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"; 149 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"; 150 case VK_STRUCTURE_TYPE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_MEMORY_BARRIER"; 151 case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO"; 152 case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO"; 153 case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"; 154 case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"; 155 case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"; 156 case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"; 157 case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"; 158 case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"; 159 case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"; 160 case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"; 161 case VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR"; 162 case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"; 163 case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"; 164 case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"; 165 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX: return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX"; 166 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX"; 167 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX"; 168 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR"; 169 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR"; 170 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR"; 171 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR"; 172 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR"; 173 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR"; 174 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR"; 175 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR"; 176 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR"; 177 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR"; 178 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR"; 179 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR"; 180 case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR"; 181 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR"; 182 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR"; 183 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR"; 184 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR"; 185 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"; 186 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"; 187 case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"; 188 case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"; 189 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"; 190 case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"; 191 case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"; 192 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"; 193 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR"; 194 case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR"; 195 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR"; 196 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"; 197 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"; 198 case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"; 199 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"; 200 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"; 201 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"; 202 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"; 203 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR"; 204 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"; 205 case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR"; 206 case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"; 207 case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"; 208 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR"; 209 case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR"; 210 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR"; 211 case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"; 212 case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"; 213 case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"; 214 case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"; 215 case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"; 216 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR"; 217 case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR"; 218 case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR"; 219 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR"; 220 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"; 221 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"; 222 case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"; 223 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR"; 224 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR"; 225 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR"; 226 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR"; 227 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR"; 228 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR"; 229 case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR"; 230 case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR: return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR"; 231 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR"; 232 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR"; 233 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR"; 234 case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR: return "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR"; 235 case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR: return "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR"; 236 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR"; 237 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR"; 238 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR: return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR"; 239 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR: return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR"; 240 default: return DE_NULL; 241 } 242} 243 244const char* getSystemAllocationScopeName (VkSystemAllocationScope value) 245{ 246 switch (value) 247 { 248 case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND: return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND"; 249 case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT: return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT"; 250 case VK_SYSTEM_ALLOCATION_SCOPE_CACHE: return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE"; 251 case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE: return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"; 252 case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE: return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"; 253 default: return DE_NULL; 254 } 255} 256 257const char* getInternalAllocationTypeName (VkInternalAllocationType value) 258{ 259 switch (value) 260 { 261 case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE: return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"; 262 default: return DE_NULL; 263 } 264} 265 266const char* getFormatName (VkFormat value) 267{ 268 switch (value) 269 { 270 case VK_FORMAT_UNDEFINED: return "VK_FORMAT_UNDEFINED"; 271 case VK_FORMAT_R4G4_UNORM_PACK8: return "VK_FORMAT_R4G4_UNORM_PACK8"; 272 case VK_FORMAT_R4G4B4A4_UNORM_PACK16: return "VK_FORMAT_R4G4B4A4_UNORM_PACK16"; 273 case VK_FORMAT_B4G4R4A4_UNORM_PACK16: return "VK_FORMAT_B4G4R4A4_UNORM_PACK16"; 274 case VK_FORMAT_R5G6B5_UNORM_PACK16: return "VK_FORMAT_R5G6B5_UNORM_PACK16"; 275 case VK_FORMAT_B5G6R5_UNORM_PACK16: return "VK_FORMAT_B5G6R5_UNORM_PACK16"; 276 case VK_FORMAT_R5G5B5A1_UNORM_PACK16: return "VK_FORMAT_R5G5B5A1_UNORM_PACK16"; 277 case VK_FORMAT_B5G5R5A1_UNORM_PACK16: return "VK_FORMAT_B5G5R5A1_UNORM_PACK16"; 278 case VK_FORMAT_A1R5G5B5_UNORM_PACK16: return "VK_FORMAT_A1R5G5B5_UNORM_PACK16"; 279 case VK_FORMAT_R8_UNORM: return "VK_FORMAT_R8_UNORM"; 280 case VK_FORMAT_R8_SNORM: return "VK_FORMAT_R8_SNORM"; 281 case VK_FORMAT_R8_USCALED: return "VK_FORMAT_R8_USCALED"; 282 case VK_FORMAT_R8_SSCALED: return "VK_FORMAT_R8_SSCALED"; 283 case VK_FORMAT_R8_UINT: return "VK_FORMAT_R8_UINT"; 284 case VK_FORMAT_R8_SINT: return "VK_FORMAT_R8_SINT"; 285 case VK_FORMAT_R8_SRGB: return "VK_FORMAT_R8_SRGB"; 286 case VK_FORMAT_R8G8_UNORM: return "VK_FORMAT_R8G8_UNORM"; 287 case VK_FORMAT_R8G8_SNORM: return "VK_FORMAT_R8G8_SNORM"; 288 case VK_FORMAT_R8G8_USCALED: return "VK_FORMAT_R8G8_USCALED"; 289 case VK_FORMAT_R8G8_SSCALED: return "VK_FORMAT_R8G8_SSCALED"; 290 case VK_FORMAT_R8G8_UINT: return "VK_FORMAT_R8G8_UINT"; 291 case VK_FORMAT_R8G8_SINT: return "VK_FORMAT_R8G8_SINT"; 292 case VK_FORMAT_R8G8_SRGB: return "VK_FORMAT_R8G8_SRGB"; 293 case VK_FORMAT_R8G8B8_UNORM: return "VK_FORMAT_R8G8B8_UNORM"; 294 case VK_FORMAT_R8G8B8_SNORM: return "VK_FORMAT_R8G8B8_SNORM"; 295 case VK_FORMAT_R8G8B8_USCALED: return "VK_FORMAT_R8G8B8_USCALED"; 296 case VK_FORMAT_R8G8B8_SSCALED: return "VK_FORMAT_R8G8B8_SSCALED"; 297 case VK_FORMAT_R8G8B8_UINT: return "VK_FORMAT_R8G8B8_UINT"; 298 case VK_FORMAT_R8G8B8_SINT: return "VK_FORMAT_R8G8B8_SINT"; 299 case VK_FORMAT_R8G8B8_SRGB: return "VK_FORMAT_R8G8B8_SRGB"; 300 case VK_FORMAT_B8G8R8_UNORM: return "VK_FORMAT_B8G8R8_UNORM"; 301 case VK_FORMAT_B8G8R8_SNORM: return "VK_FORMAT_B8G8R8_SNORM"; 302 case VK_FORMAT_B8G8R8_USCALED: return "VK_FORMAT_B8G8R8_USCALED"; 303 case VK_FORMAT_B8G8R8_SSCALED: return "VK_FORMAT_B8G8R8_SSCALED"; 304 case VK_FORMAT_B8G8R8_UINT: return "VK_FORMAT_B8G8R8_UINT"; 305 case VK_FORMAT_B8G8R8_SINT: return "VK_FORMAT_B8G8R8_SINT"; 306 case VK_FORMAT_B8G8R8_SRGB: return "VK_FORMAT_B8G8R8_SRGB"; 307 case VK_FORMAT_R8G8B8A8_UNORM: return "VK_FORMAT_R8G8B8A8_UNORM"; 308 case VK_FORMAT_R8G8B8A8_SNORM: return "VK_FORMAT_R8G8B8A8_SNORM"; 309 case VK_FORMAT_R8G8B8A8_USCALED: return "VK_FORMAT_R8G8B8A8_USCALED"; 310 case VK_FORMAT_R8G8B8A8_SSCALED: return "VK_FORMAT_R8G8B8A8_SSCALED"; 311 case VK_FORMAT_R8G8B8A8_UINT: return "VK_FORMAT_R8G8B8A8_UINT"; 312 case VK_FORMAT_R8G8B8A8_SINT: return "VK_FORMAT_R8G8B8A8_SINT"; 313 case VK_FORMAT_R8G8B8A8_SRGB: return "VK_FORMAT_R8G8B8A8_SRGB"; 314 case VK_FORMAT_B8G8R8A8_UNORM: return "VK_FORMAT_B8G8R8A8_UNORM"; 315 case VK_FORMAT_B8G8R8A8_SNORM: return "VK_FORMAT_B8G8R8A8_SNORM"; 316 case VK_FORMAT_B8G8R8A8_USCALED: return "VK_FORMAT_B8G8R8A8_USCALED"; 317 case VK_FORMAT_B8G8R8A8_SSCALED: return "VK_FORMAT_B8G8R8A8_SSCALED"; 318 case VK_FORMAT_B8G8R8A8_UINT: return "VK_FORMAT_B8G8R8A8_UINT"; 319 case VK_FORMAT_B8G8R8A8_SINT: return "VK_FORMAT_B8G8R8A8_SINT"; 320 case VK_FORMAT_B8G8R8A8_SRGB: return "VK_FORMAT_B8G8R8A8_SRGB"; 321 case VK_FORMAT_A8B8G8R8_UNORM_PACK32: return "VK_FORMAT_A8B8G8R8_UNORM_PACK32"; 322 case VK_FORMAT_A8B8G8R8_SNORM_PACK32: return "VK_FORMAT_A8B8G8R8_SNORM_PACK32"; 323 case VK_FORMAT_A8B8G8R8_USCALED_PACK32: return "VK_FORMAT_A8B8G8R8_USCALED_PACK32"; 324 case VK_FORMAT_A8B8G8R8_SSCALED_PACK32: return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32"; 325 case VK_FORMAT_A8B8G8R8_UINT_PACK32: return "VK_FORMAT_A8B8G8R8_UINT_PACK32"; 326 case VK_FORMAT_A8B8G8R8_SINT_PACK32: return "VK_FORMAT_A8B8G8R8_SINT_PACK32"; 327 case VK_FORMAT_A8B8G8R8_SRGB_PACK32: return "VK_FORMAT_A8B8G8R8_SRGB_PACK32"; 328 case VK_FORMAT_A2R10G10B10_UNORM_PACK32: return "VK_FORMAT_A2R10G10B10_UNORM_PACK32"; 329 case VK_FORMAT_A2R10G10B10_SNORM_PACK32: return "VK_FORMAT_A2R10G10B10_SNORM_PACK32"; 330 case VK_FORMAT_A2R10G10B10_USCALED_PACK32: return "VK_FORMAT_A2R10G10B10_USCALED_PACK32"; 331 case VK_FORMAT_A2R10G10B10_SSCALED_PACK32: return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32"; 332 case VK_FORMAT_A2R10G10B10_UINT_PACK32: return "VK_FORMAT_A2R10G10B10_UINT_PACK32"; 333 case VK_FORMAT_A2R10G10B10_SINT_PACK32: return "VK_FORMAT_A2R10G10B10_SINT_PACK32"; 334 case VK_FORMAT_A2B10G10R10_UNORM_PACK32: return "VK_FORMAT_A2B10G10R10_UNORM_PACK32"; 335 case VK_FORMAT_A2B10G10R10_SNORM_PACK32: return "VK_FORMAT_A2B10G10R10_SNORM_PACK32"; 336 case VK_FORMAT_A2B10G10R10_USCALED_PACK32: return "VK_FORMAT_A2B10G10R10_USCALED_PACK32"; 337 case VK_FORMAT_A2B10G10R10_SSCALED_PACK32: return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32"; 338 case VK_FORMAT_A2B10G10R10_UINT_PACK32: return "VK_FORMAT_A2B10G10R10_UINT_PACK32"; 339 case VK_FORMAT_A2B10G10R10_SINT_PACK32: return "VK_FORMAT_A2B10G10R10_SINT_PACK32"; 340 case VK_FORMAT_R16_UNORM: return "VK_FORMAT_R16_UNORM"; 341 case VK_FORMAT_R16_SNORM: return "VK_FORMAT_R16_SNORM"; 342 case VK_FORMAT_R16_USCALED: return "VK_FORMAT_R16_USCALED"; 343 case VK_FORMAT_R16_SSCALED: return "VK_FORMAT_R16_SSCALED"; 344 case VK_FORMAT_R16_UINT: return "VK_FORMAT_R16_UINT"; 345 case VK_FORMAT_R16_SINT: return "VK_FORMAT_R16_SINT"; 346 case VK_FORMAT_R16_SFLOAT: return "VK_FORMAT_R16_SFLOAT"; 347 case VK_FORMAT_R16G16_UNORM: return "VK_FORMAT_R16G16_UNORM"; 348 case VK_FORMAT_R16G16_SNORM: return "VK_FORMAT_R16G16_SNORM"; 349 case VK_FORMAT_R16G16_USCALED: return "VK_FORMAT_R16G16_USCALED"; 350 case VK_FORMAT_R16G16_SSCALED: return "VK_FORMAT_R16G16_SSCALED"; 351 case VK_FORMAT_R16G16_UINT: return "VK_FORMAT_R16G16_UINT"; 352 case VK_FORMAT_R16G16_SINT: return "VK_FORMAT_R16G16_SINT"; 353 case VK_FORMAT_R16G16_SFLOAT: return "VK_FORMAT_R16G16_SFLOAT"; 354 case VK_FORMAT_R16G16B16_UNORM: return "VK_FORMAT_R16G16B16_UNORM"; 355 case VK_FORMAT_R16G16B16_SNORM: return "VK_FORMAT_R16G16B16_SNORM"; 356 case VK_FORMAT_R16G16B16_USCALED: return "VK_FORMAT_R16G16B16_USCALED"; 357 case VK_FORMAT_R16G16B16_SSCALED: return "VK_FORMAT_R16G16B16_SSCALED"; 358 case VK_FORMAT_R16G16B16_UINT: return "VK_FORMAT_R16G16B16_UINT"; 359 case VK_FORMAT_R16G16B16_SINT: return "VK_FORMAT_R16G16B16_SINT"; 360 case VK_FORMAT_R16G16B16_SFLOAT: return "VK_FORMAT_R16G16B16_SFLOAT"; 361 case VK_FORMAT_R16G16B16A16_UNORM: return "VK_FORMAT_R16G16B16A16_UNORM"; 362 case VK_FORMAT_R16G16B16A16_SNORM: return "VK_FORMAT_R16G16B16A16_SNORM"; 363 case VK_FORMAT_R16G16B16A16_USCALED: return "VK_FORMAT_R16G16B16A16_USCALED"; 364 case VK_FORMAT_R16G16B16A16_SSCALED: return "VK_FORMAT_R16G16B16A16_SSCALED"; 365 case VK_FORMAT_R16G16B16A16_UINT: return "VK_FORMAT_R16G16B16A16_UINT"; 366 case VK_FORMAT_R16G16B16A16_SINT: return "VK_FORMAT_R16G16B16A16_SINT"; 367 case VK_FORMAT_R16G16B16A16_SFLOAT: return "VK_FORMAT_R16G16B16A16_SFLOAT"; 368 case VK_FORMAT_R32_UINT: return "VK_FORMAT_R32_UINT"; 369 case VK_FORMAT_R32_SINT: return "VK_FORMAT_R32_SINT"; 370 case VK_FORMAT_R32_SFLOAT: return "VK_FORMAT_R32_SFLOAT"; 371 case VK_FORMAT_R32G32_UINT: return "VK_FORMAT_R32G32_UINT"; 372 case VK_FORMAT_R32G32_SINT: return "VK_FORMAT_R32G32_SINT"; 373 case VK_FORMAT_R32G32_SFLOAT: return "VK_FORMAT_R32G32_SFLOAT"; 374 case VK_FORMAT_R32G32B32_UINT: return "VK_FORMAT_R32G32B32_UINT"; 375 case VK_FORMAT_R32G32B32_SINT: return "VK_FORMAT_R32G32B32_SINT"; 376 case VK_FORMAT_R32G32B32_SFLOAT: return "VK_FORMAT_R32G32B32_SFLOAT"; 377 case VK_FORMAT_R32G32B32A32_UINT: return "VK_FORMAT_R32G32B32A32_UINT"; 378 case VK_FORMAT_R32G32B32A32_SINT: return "VK_FORMAT_R32G32B32A32_SINT"; 379 case VK_FORMAT_R32G32B32A32_SFLOAT: return "VK_FORMAT_R32G32B32A32_SFLOAT"; 380 case VK_FORMAT_R64_UINT: return "VK_FORMAT_R64_UINT"; 381 case VK_FORMAT_R64_SINT: return "VK_FORMAT_R64_SINT"; 382 case VK_FORMAT_R64_SFLOAT: return "VK_FORMAT_R64_SFLOAT"; 383 case VK_FORMAT_R64G64_UINT: return "VK_FORMAT_R64G64_UINT"; 384 case VK_FORMAT_R64G64_SINT: return "VK_FORMAT_R64G64_SINT"; 385 case VK_FORMAT_R64G64_SFLOAT: return "VK_FORMAT_R64G64_SFLOAT"; 386 case VK_FORMAT_R64G64B64_UINT: return "VK_FORMAT_R64G64B64_UINT"; 387 case VK_FORMAT_R64G64B64_SINT: return "VK_FORMAT_R64G64B64_SINT"; 388 case VK_FORMAT_R64G64B64_SFLOAT: return "VK_FORMAT_R64G64B64_SFLOAT"; 389 case VK_FORMAT_R64G64B64A64_UINT: return "VK_FORMAT_R64G64B64A64_UINT"; 390 case VK_FORMAT_R64G64B64A64_SINT: return "VK_FORMAT_R64G64B64A64_SINT"; 391 case VK_FORMAT_R64G64B64A64_SFLOAT: return "VK_FORMAT_R64G64B64A64_SFLOAT"; 392 case VK_FORMAT_B10G11R11_UFLOAT_PACK32: return "VK_FORMAT_B10G11R11_UFLOAT_PACK32"; 393 case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32: return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32"; 394 case VK_FORMAT_D16_UNORM: return "VK_FORMAT_D16_UNORM"; 395 case VK_FORMAT_X8_D24_UNORM_PACK32: return "VK_FORMAT_X8_D24_UNORM_PACK32"; 396 case VK_FORMAT_D32_SFLOAT: return "VK_FORMAT_D32_SFLOAT"; 397 case VK_FORMAT_S8_UINT: return "VK_FORMAT_S8_UINT"; 398 case VK_FORMAT_D16_UNORM_S8_UINT: return "VK_FORMAT_D16_UNORM_S8_UINT"; 399 case VK_FORMAT_D24_UNORM_S8_UINT: return "VK_FORMAT_D24_UNORM_S8_UINT"; 400 case VK_FORMAT_D32_SFLOAT_S8_UINT: return "VK_FORMAT_D32_SFLOAT_S8_UINT"; 401 case VK_FORMAT_BC1_RGB_UNORM_BLOCK: return "VK_FORMAT_BC1_RGB_UNORM_BLOCK"; 402 case VK_FORMAT_BC1_RGB_SRGB_BLOCK: return "VK_FORMAT_BC1_RGB_SRGB_BLOCK"; 403 case VK_FORMAT_BC1_RGBA_UNORM_BLOCK: return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK"; 404 case VK_FORMAT_BC1_RGBA_SRGB_BLOCK: return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK"; 405 case VK_FORMAT_BC2_UNORM_BLOCK: return "VK_FORMAT_BC2_UNORM_BLOCK"; 406 case VK_FORMAT_BC2_SRGB_BLOCK: return "VK_FORMAT_BC2_SRGB_BLOCK"; 407 case VK_FORMAT_BC3_UNORM_BLOCK: return "VK_FORMAT_BC3_UNORM_BLOCK"; 408 case VK_FORMAT_BC3_SRGB_BLOCK: return "VK_FORMAT_BC3_SRGB_BLOCK"; 409 case VK_FORMAT_BC4_UNORM_BLOCK: return "VK_FORMAT_BC4_UNORM_BLOCK"; 410 case VK_FORMAT_BC4_SNORM_BLOCK: return "VK_FORMAT_BC4_SNORM_BLOCK"; 411 case VK_FORMAT_BC5_UNORM_BLOCK: return "VK_FORMAT_BC5_UNORM_BLOCK"; 412 case VK_FORMAT_BC5_SNORM_BLOCK: return "VK_FORMAT_BC5_SNORM_BLOCK"; 413 case VK_FORMAT_BC6H_UFLOAT_BLOCK: return "VK_FORMAT_BC6H_UFLOAT_BLOCK"; 414 case VK_FORMAT_BC6H_SFLOAT_BLOCK: return "VK_FORMAT_BC6H_SFLOAT_BLOCK"; 415 case VK_FORMAT_BC7_UNORM_BLOCK: return "VK_FORMAT_BC7_UNORM_BLOCK"; 416 case VK_FORMAT_BC7_SRGB_BLOCK: return "VK_FORMAT_BC7_SRGB_BLOCK"; 417 case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK"; 418 case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK"; 419 case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK"; 420 case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK"; 421 case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK"; 422 case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK"; 423 case VK_FORMAT_EAC_R11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11_UNORM_BLOCK"; 424 case VK_FORMAT_EAC_R11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11_SNORM_BLOCK"; 425 case VK_FORMAT_EAC_R11G11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK"; 426 case VK_FORMAT_EAC_R11G11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK"; 427 case VK_FORMAT_ASTC_4x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK"; 428 case VK_FORMAT_ASTC_4x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK"; 429 case VK_FORMAT_ASTC_5x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK"; 430 case VK_FORMAT_ASTC_5x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK"; 431 case VK_FORMAT_ASTC_5x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK"; 432 case VK_FORMAT_ASTC_5x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK"; 433 case VK_FORMAT_ASTC_6x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK"; 434 case VK_FORMAT_ASTC_6x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK"; 435 case VK_FORMAT_ASTC_6x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK"; 436 case VK_FORMAT_ASTC_6x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK"; 437 case VK_FORMAT_ASTC_8x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK"; 438 case VK_FORMAT_ASTC_8x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK"; 439 case VK_FORMAT_ASTC_8x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK"; 440 case VK_FORMAT_ASTC_8x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK"; 441 case VK_FORMAT_ASTC_8x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK"; 442 case VK_FORMAT_ASTC_8x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK"; 443 case VK_FORMAT_ASTC_10x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK"; 444 case VK_FORMAT_ASTC_10x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK"; 445 case VK_FORMAT_ASTC_10x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK"; 446 case VK_FORMAT_ASTC_10x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK"; 447 case VK_FORMAT_ASTC_10x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK"; 448 case VK_FORMAT_ASTC_10x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK"; 449 case VK_FORMAT_ASTC_10x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK"; 450 case VK_FORMAT_ASTC_10x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK"; 451 case VK_FORMAT_ASTC_12x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK"; 452 case VK_FORMAT_ASTC_12x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK"; 453 case VK_FORMAT_ASTC_12x12_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK"; 454 case VK_FORMAT_ASTC_12x12_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"; 455 case VK_FORMAT_G8B8G8R8_422_UNORM_KHR: return "VK_FORMAT_G8B8G8R8_422_UNORM_KHR"; 456 case VK_FORMAT_B8G8R8G8_422_UNORM_KHR: return "VK_FORMAT_B8G8R8G8_422_UNORM_KHR"; 457 case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR: return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR"; 458 case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR: return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR"; 459 case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR: return "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR"; 460 case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR: return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR"; 461 case VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR: return "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR"; 462 case VK_FORMAT_R10X6_UNORM_PACK16_KHR: return "VK_FORMAT_R10X6_UNORM_PACK16_KHR"; 463 case VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR: return "VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR"; 464 case VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR: return "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR"; 465 case VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR: return "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR"; 466 case VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR: return "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR"; 467 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR"; 468 case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR: return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR"; 469 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR"; 470 case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR: return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR"; 471 case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR: return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR"; 472 case VK_FORMAT_R12X4_UNORM_PACK16_KHR: return "VK_FORMAT_R12X4_UNORM_PACK16_KHR"; 473 case VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR: return "VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR"; 474 case VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR: return "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR"; 475 case VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR: return "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR"; 476 case VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR: return "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR"; 477 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR"; 478 case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR: return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR"; 479 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR"; 480 case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR: return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR"; 481 case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR: return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR"; 482 case VK_FORMAT_G16B16G16R16_422_UNORM_KHR: return "VK_FORMAT_G16B16G16R16_422_UNORM_KHR"; 483 case VK_FORMAT_B16G16R16G16_422_UNORM_KHR: return "VK_FORMAT_B16G16R16G16_422_UNORM_KHR"; 484 case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR: return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR"; 485 case VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR: return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR"; 486 case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR: return "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR"; 487 case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR: return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR"; 488 case VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR: return "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR"; 489 default: return DE_NULL; 490 } 491} 492 493const char* getImageTypeName (VkImageType value) 494{ 495 switch (value) 496 { 497 case VK_IMAGE_TYPE_1D: return "VK_IMAGE_TYPE_1D"; 498 case VK_IMAGE_TYPE_2D: return "VK_IMAGE_TYPE_2D"; 499 case VK_IMAGE_TYPE_3D: return "VK_IMAGE_TYPE_3D"; 500 default: return DE_NULL; 501 } 502} 503 504const char* getImageTilingName (VkImageTiling value) 505{ 506 switch (value) 507 { 508 case VK_IMAGE_TILING_OPTIMAL: return "VK_IMAGE_TILING_OPTIMAL"; 509 case VK_IMAGE_TILING_LINEAR: return "VK_IMAGE_TILING_LINEAR"; 510 default: return DE_NULL; 511 } 512} 513 514const char* getPhysicalDeviceTypeName (VkPhysicalDeviceType value) 515{ 516 switch (value) 517 { 518 case VK_PHYSICAL_DEVICE_TYPE_OTHER: return "VK_PHYSICAL_DEVICE_TYPE_OTHER"; 519 case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU: return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU"; 520 case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU: return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU"; 521 case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU: return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"; 522 case VK_PHYSICAL_DEVICE_TYPE_CPU: return "VK_PHYSICAL_DEVICE_TYPE_CPU"; 523 default: return DE_NULL; 524 } 525} 526 527const char* getQueryTypeName (VkQueryType value) 528{ 529 switch (value) 530 { 531 case VK_QUERY_TYPE_OCCLUSION: return "VK_QUERY_TYPE_OCCLUSION"; 532 case VK_QUERY_TYPE_PIPELINE_STATISTICS: return "VK_QUERY_TYPE_PIPELINE_STATISTICS"; 533 case VK_QUERY_TYPE_TIMESTAMP: return "VK_QUERY_TYPE_TIMESTAMP"; 534 default: return DE_NULL; 535 } 536} 537 538const char* getSharingModeName (VkSharingMode value) 539{ 540 switch (value) 541 { 542 case VK_SHARING_MODE_EXCLUSIVE: return "VK_SHARING_MODE_EXCLUSIVE"; 543 case VK_SHARING_MODE_CONCURRENT: return "VK_SHARING_MODE_CONCURRENT"; 544 default: return DE_NULL; 545 } 546} 547 548const char* getImageLayoutName (VkImageLayout value) 549{ 550 switch (value) 551 { 552 case VK_IMAGE_LAYOUT_UNDEFINED: return "VK_IMAGE_LAYOUT_UNDEFINED"; 553 case VK_IMAGE_LAYOUT_GENERAL: return "VK_IMAGE_LAYOUT_GENERAL"; 554 case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL"; 555 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL"; 556 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL"; 557 case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL"; 558 case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL"; 559 case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL"; 560 case VK_IMAGE_LAYOUT_PREINITIALIZED: return "VK_IMAGE_LAYOUT_PREINITIALIZED"; 561 case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR: return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR"; 562 case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR: return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR"; 563 case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR: return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR"; 564 case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR: return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR"; 565 default: return DE_NULL; 566 } 567} 568 569const char* getImageViewTypeName (VkImageViewType value) 570{ 571 switch (value) 572 { 573 case VK_IMAGE_VIEW_TYPE_1D: return "VK_IMAGE_VIEW_TYPE_1D"; 574 case VK_IMAGE_VIEW_TYPE_2D: return "VK_IMAGE_VIEW_TYPE_2D"; 575 case VK_IMAGE_VIEW_TYPE_3D: return "VK_IMAGE_VIEW_TYPE_3D"; 576 case VK_IMAGE_VIEW_TYPE_CUBE: return "VK_IMAGE_VIEW_TYPE_CUBE"; 577 case VK_IMAGE_VIEW_TYPE_1D_ARRAY: return "VK_IMAGE_VIEW_TYPE_1D_ARRAY"; 578 case VK_IMAGE_VIEW_TYPE_2D_ARRAY: return "VK_IMAGE_VIEW_TYPE_2D_ARRAY"; 579 case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY: return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"; 580 default: return DE_NULL; 581 } 582} 583 584const char* getComponentSwizzleName (VkComponentSwizzle value) 585{ 586 switch (value) 587 { 588 case VK_COMPONENT_SWIZZLE_IDENTITY: return "VK_COMPONENT_SWIZZLE_IDENTITY"; 589 case VK_COMPONENT_SWIZZLE_ZERO: return "VK_COMPONENT_SWIZZLE_ZERO"; 590 case VK_COMPONENT_SWIZZLE_ONE: return "VK_COMPONENT_SWIZZLE_ONE"; 591 case VK_COMPONENT_SWIZZLE_R: return "VK_COMPONENT_SWIZZLE_R"; 592 case VK_COMPONENT_SWIZZLE_G: return "VK_COMPONENT_SWIZZLE_G"; 593 case VK_COMPONENT_SWIZZLE_B: return "VK_COMPONENT_SWIZZLE_B"; 594 case VK_COMPONENT_SWIZZLE_A: return "VK_COMPONENT_SWIZZLE_A"; 595 default: return DE_NULL; 596 } 597} 598 599const char* getVertexInputRateName (VkVertexInputRate value) 600{ 601 switch (value) 602 { 603 case VK_VERTEX_INPUT_RATE_VERTEX: return "VK_VERTEX_INPUT_RATE_VERTEX"; 604 case VK_VERTEX_INPUT_RATE_INSTANCE: return "VK_VERTEX_INPUT_RATE_INSTANCE"; 605 default: return DE_NULL; 606 } 607} 608 609const char* getPrimitiveTopologyName (VkPrimitiveTopology value) 610{ 611 switch (value) 612 { 613 case VK_PRIMITIVE_TOPOLOGY_POINT_LIST: return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST"; 614 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST"; 615 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP"; 616 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"; 617 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP"; 618 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN"; 619 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY"; 620 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY"; 621 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY"; 622 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"; 623 case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST: return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"; 624 default: return DE_NULL; 625 } 626} 627 628const char* getPolygonModeName (VkPolygonMode value) 629{ 630 switch (value) 631 { 632 case VK_POLYGON_MODE_FILL: return "VK_POLYGON_MODE_FILL"; 633 case VK_POLYGON_MODE_LINE: return "VK_POLYGON_MODE_LINE"; 634 case VK_POLYGON_MODE_POINT: return "VK_POLYGON_MODE_POINT"; 635 default: return DE_NULL; 636 } 637} 638 639const char* getFrontFaceName (VkFrontFace value) 640{ 641 switch (value) 642 { 643 case VK_FRONT_FACE_COUNTER_CLOCKWISE: return "VK_FRONT_FACE_COUNTER_CLOCKWISE"; 644 case VK_FRONT_FACE_CLOCKWISE: return "VK_FRONT_FACE_CLOCKWISE"; 645 default: return DE_NULL; 646 } 647} 648 649const char* getCompareOpName (VkCompareOp value) 650{ 651 switch (value) 652 { 653 case VK_COMPARE_OP_NEVER: return "VK_COMPARE_OP_NEVER"; 654 case VK_COMPARE_OP_LESS: return "VK_COMPARE_OP_LESS"; 655 case VK_COMPARE_OP_EQUAL: return "VK_COMPARE_OP_EQUAL"; 656 case VK_COMPARE_OP_LESS_OR_EQUAL: return "VK_COMPARE_OP_LESS_OR_EQUAL"; 657 case VK_COMPARE_OP_GREATER: return "VK_COMPARE_OP_GREATER"; 658 case VK_COMPARE_OP_NOT_EQUAL: return "VK_COMPARE_OP_NOT_EQUAL"; 659 case VK_COMPARE_OP_GREATER_OR_EQUAL: return "VK_COMPARE_OP_GREATER_OR_EQUAL"; 660 case VK_COMPARE_OP_ALWAYS: return "VK_COMPARE_OP_ALWAYS"; 661 default: return DE_NULL; 662 } 663} 664 665const char* getStencilOpName (VkStencilOp value) 666{ 667 switch (value) 668 { 669 case VK_STENCIL_OP_KEEP: return "VK_STENCIL_OP_KEEP"; 670 case VK_STENCIL_OP_ZERO: return "VK_STENCIL_OP_ZERO"; 671 case VK_STENCIL_OP_REPLACE: return "VK_STENCIL_OP_REPLACE"; 672 case VK_STENCIL_OP_INCREMENT_AND_CLAMP: return "VK_STENCIL_OP_INCREMENT_AND_CLAMP"; 673 case VK_STENCIL_OP_DECREMENT_AND_CLAMP: return "VK_STENCIL_OP_DECREMENT_AND_CLAMP"; 674 case VK_STENCIL_OP_INVERT: return "VK_STENCIL_OP_INVERT"; 675 case VK_STENCIL_OP_INCREMENT_AND_WRAP: return "VK_STENCIL_OP_INCREMENT_AND_WRAP"; 676 case VK_STENCIL_OP_DECREMENT_AND_WRAP: return "VK_STENCIL_OP_DECREMENT_AND_WRAP"; 677 default: return DE_NULL; 678 } 679} 680 681const char* getLogicOpName (VkLogicOp value) 682{ 683 switch (value) 684 { 685 case VK_LOGIC_OP_CLEAR: return "VK_LOGIC_OP_CLEAR"; 686 case VK_LOGIC_OP_AND: return "VK_LOGIC_OP_AND"; 687 case VK_LOGIC_OP_AND_REVERSE: return "VK_LOGIC_OP_AND_REVERSE"; 688 case VK_LOGIC_OP_COPY: return "VK_LOGIC_OP_COPY"; 689 case VK_LOGIC_OP_AND_INVERTED: return "VK_LOGIC_OP_AND_INVERTED"; 690 case VK_LOGIC_OP_NO_OP: return "VK_LOGIC_OP_NO_OP"; 691 case VK_LOGIC_OP_XOR: return "VK_LOGIC_OP_XOR"; 692 case VK_LOGIC_OP_OR: return "VK_LOGIC_OP_OR"; 693 case VK_LOGIC_OP_NOR: return "VK_LOGIC_OP_NOR"; 694 case VK_LOGIC_OP_EQUIVALENT: return "VK_LOGIC_OP_EQUIVALENT"; 695 case VK_LOGIC_OP_INVERT: return "VK_LOGIC_OP_INVERT"; 696 case VK_LOGIC_OP_OR_REVERSE: return "VK_LOGIC_OP_OR_REVERSE"; 697 case VK_LOGIC_OP_COPY_INVERTED: return "VK_LOGIC_OP_COPY_INVERTED"; 698 case VK_LOGIC_OP_OR_INVERTED: return "VK_LOGIC_OP_OR_INVERTED"; 699 case VK_LOGIC_OP_NAND: return "VK_LOGIC_OP_NAND"; 700 case VK_LOGIC_OP_SET: return "VK_LOGIC_OP_SET"; 701 default: return DE_NULL; 702 } 703} 704 705const char* getBlendFactorName (VkBlendFactor value) 706{ 707 switch (value) 708 { 709 case VK_BLEND_FACTOR_ZERO: return "VK_BLEND_FACTOR_ZERO"; 710 case VK_BLEND_FACTOR_ONE: return "VK_BLEND_FACTOR_ONE"; 711 case VK_BLEND_FACTOR_SRC_COLOR: return "VK_BLEND_FACTOR_SRC_COLOR"; 712 case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR"; 713 case VK_BLEND_FACTOR_DST_COLOR: return "VK_BLEND_FACTOR_DST_COLOR"; 714 case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR"; 715 case VK_BLEND_FACTOR_SRC_ALPHA: return "VK_BLEND_FACTOR_SRC_ALPHA"; 716 case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA"; 717 case VK_BLEND_FACTOR_DST_ALPHA: return "VK_BLEND_FACTOR_DST_ALPHA"; 718 case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA"; 719 case VK_BLEND_FACTOR_CONSTANT_COLOR: return "VK_BLEND_FACTOR_CONSTANT_COLOR"; 720 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR"; 721 case VK_BLEND_FACTOR_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_CONSTANT_ALPHA"; 722 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA"; 723 case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE: return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE"; 724 case VK_BLEND_FACTOR_SRC1_COLOR: return "VK_BLEND_FACTOR_SRC1_COLOR"; 725 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR"; 726 case VK_BLEND_FACTOR_SRC1_ALPHA: return "VK_BLEND_FACTOR_SRC1_ALPHA"; 727 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"; 728 default: return DE_NULL; 729 } 730} 731 732const char* getBlendOpName (VkBlendOp value) 733{ 734 switch (value) 735 { 736 case VK_BLEND_OP_ADD: return "VK_BLEND_OP_ADD"; 737 case VK_BLEND_OP_SUBTRACT: return "VK_BLEND_OP_SUBTRACT"; 738 case VK_BLEND_OP_REVERSE_SUBTRACT: return "VK_BLEND_OP_REVERSE_SUBTRACT"; 739 case VK_BLEND_OP_MIN: return "VK_BLEND_OP_MIN"; 740 case VK_BLEND_OP_MAX: return "VK_BLEND_OP_MAX"; 741 default: return DE_NULL; 742 } 743} 744 745const char* getDynamicStateName (VkDynamicState value) 746{ 747 switch (value) 748 { 749 case VK_DYNAMIC_STATE_VIEWPORT: return "VK_DYNAMIC_STATE_VIEWPORT"; 750 case VK_DYNAMIC_STATE_SCISSOR: return "VK_DYNAMIC_STATE_SCISSOR"; 751 case VK_DYNAMIC_STATE_LINE_WIDTH: return "VK_DYNAMIC_STATE_LINE_WIDTH"; 752 case VK_DYNAMIC_STATE_DEPTH_BIAS: return "VK_DYNAMIC_STATE_DEPTH_BIAS"; 753 case VK_DYNAMIC_STATE_BLEND_CONSTANTS: return "VK_DYNAMIC_STATE_BLEND_CONSTANTS"; 754 case VK_DYNAMIC_STATE_DEPTH_BOUNDS: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS"; 755 case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK: return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK"; 756 case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK: return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK"; 757 case VK_DYNAMIC_STATE_STENCIL_REFERENCE: return "VK_DYNAMIC_STATE_STENCIL_REFERENCE"; 758 default: return DE_NULL; 759 } 760} 761 762const char* getFilterName (VkFilter value) 763{ 764 switch (value) 765 { 766 case VK_FILTER_NEAREST: return "VK_FILTER_NEAREST"; 767 case VK_FILTER_LINEAR: return "VK_FILTER_LINEAR"; 768 default: return DE_NULL; 769 } 770} 771 772const char* getSamplerMipmapModeName (VkSamplerMipmapMode value) 773{ 774 switch (value) 775 { 776 case VK_SAMPLER_MIPMAP_MODE_NEAREST: return "VK_SAMPLER_MIPMAP_MODE_NEAREST"; 777 case VK_SAMPLER_MIPMAP_MODE_LINEAR: return "VK_SAMPLER_MIPMAP_MODE_LINEAR"; 778 default: return DE_NULL; 779 } 780} 781 782const char* getSamplerAddressModeName (VkSamplerAddressMode value) 783{ 784 switch (value) 785 { 786 case VK_SAMPLER_ADDRESS_MODE_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_REPEAT"; 787 case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT"; 788 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE"; 789 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER"; 790 case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"; 791 default: return DE_NULL; 792 } 793} 794 795const char* getBorderColorName (VkBorderColor value) 796{ 797 switch (value) 798 { 799 case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK"; 800 case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK"; 801 case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK: return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK"; 802 case VK_BORDER_COLOR_INT_OPAQUE_BLACK: return "VK_BORDER_COLOR_INT_OPAQUE_BLACK"; 803 case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE: return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE"; 804 case VK_BORDER_COLOR_INT_OPAQUE_WHITE: return "VK_BORDER_COLOR_INT_OPAQUE_WHITE"; 805 default: return DE_NULL; 806 } 807} 808 809const char* getDescriptorTypeName (VkDescriptorType value) 810{ 811 switch (value) 812 { 813 case VK_DESCRIPTOR_TYPE_SAMPLER: return "VK_DESCRIPTOR_TYPE_SAMPLER"; 814 case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER: return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"; 815 case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE: return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"; 816 case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE: return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"; 817 case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"; 818 case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"; 819 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"; 820 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"; 821 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"; 822 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"; 823 case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT: return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"; 824 default: return DE_NULL; 825 } 826} 827 828const char* getAttachmentLoadOpName (VkAttachmentLoadOp value) 829{ 830 switch (value) 831 { 832 case VK_ATTACHMENT_LOAD_OP_LOAD: return "VK_ATTACHMENT_LOAD_OP_LOAD"; 833 case VK_ATTACHMENT_LOAD_OP_CLEAR: return "VK_ATTACHMENT_LOAD_OP_CLEAR"; 834 case VK_ATTACHMENT_LOAD_OP_DONT_CARE: return "VK_ATTACHMENT_LOAD_OP_DONT_CARE"; 835 default: return DE_NULL; 836 } 837} 838 839const char* getAttachmentStoreOpName (VkAttachmentStoreOp value) 840{ 841 switch (value) 842 { 843 case VK_ATTACHMENT_STORE_OP_STORE: return "VK_ATTACHMENT_STORE_OP_STORE"; 844 case VK_ATTACHMENT_STORE_OP_DONT_CARE: return "VK_ATTACHMENT_STORE_OP_DONT_CARE"; 845 default: return DE_NULL; 846 } 847} 848 849const char* getPipelineBindPointName (VkPipelineBindPoint value) 850{ 851 switch (value) 852 { 853 case VK_PIPELINE_BIND_POINT_GRAPHICS: return "VK_PIPELINE_BIND_POINT_GRAPHICS"; 854 case VK_PIPELINE_BIND_POINT_COMPUTE: return "VK_PIPELINE_BIND_POINT_COMPUTE"; 855 default: return DE_NULL; 856 } 857} 858 859const char* getCommandBufferLevelName (VkCommandBufferLevel value) 860{ 861 switch (value) 862 { 863 case VK_COMMAND_BUFFER_LEVEL_PRIMARY: return "VK_COMMAND_BUFFER_LEVEL_PRIMARY"; 864 case VK_COMMAND_BUFFER_LEVEL_SECONDARY: return "VK_COMMAND_BUFFER_LEVEL_SECONDARY"; 865 default: return DE_NULL; 866 } 867} 868 869const char* getIndexTypeName (VkIndexType value) 870{ 871 switch (value) 872 { 873 case VK_INDEX_TYPE_UINT16: return "VK_INDEX_TYPE_UINT16"; 874 case VK_INDEX_TYPE_UINT32: return "VK_INDEX_TYPE_UINT32"; 875 default: return DE_NULL; 876 } 877} 878 879const char* getSubpassContentsName (VkSubpassContents value) 880{ 881 switch (value) 882 { 883 case VK_SUBPASS_CONTENTS_INLINE: return "VK_SUBPASS_CONTENTS_INLINE"; 884 case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS: return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"; 885 default: return DE_NULL; 886 } 887} 888 889const char* getObjectTypeName (VkObjectType value) 890{ 891 switch (value) 892 { 893 case VK_OBJECT_TYPE_UNKNOWN: return "VK_OBJECT_TYPE_UNKNOWN"; 894 case VK_OBJECT_TYPE_INSTANCE: return "VK_OBJECT_TYPE_INSTANCE"; 895 case VK_OBJECT_TYPE_PHYSICAL_DEVICE: return "VK_OBJECT_TYPE_PHYSICAL_DEVICE"; 896 case VK_OBJECT_TYPE_DEVICE: return "VK_OBJECT_TYPE_DEVICE"; 897 case VK_OBJECT_TYPE_QUEUE: return "VK_OBJECT_TYPE_QUEUE"; 898 case VK_OBJECT_TYPE_SEMAPHORE: return "VK_OBJECT_TYPE_SEMAPHORE"; 899 case VK_OBJECT_TYPE_COMMAND_BUFFER: return "VK_OBJECT_TYPE_COMMAND_BUFFER"; 900 case VK_OBJECT_TYPE_FENCE: return "VK_OBJECT_TYPE_FENCE"; 901 case VK_OBJECT_TYPE_DEVICE_MEMORY: return "VK_OBJECT_TYPE_DEVICE_MEMORY"; 902 case VK_OBJECT_TYPE_BUFFER: return "VK_OBJECT_TYPE_BUFFER"; 903 case VK_OBJECT_TYPE_IMAGE: return "VK_OBJECT_TYPE_IMAGE"; 904 case VK_OBJECT_TYPE_EVENT: return "VK_OBJECT_TYPE_EVENT"; 905 case VK_OBJECT_TYPE_QUERY_POOL: return "VK_OBJECT_TYPE_QUERY_POOL"; 906 case VK_OBJECT_TYPE_BUFFER_VIEW: return "VK_OBJECT_TYPE_BUFFER_VIEW"; 907 case VK_OBJECT_TYPE_IMAGE_VIEW: return "VK_OBJECT_TYPE_IMAGE_VIEW"; 908 case VK_OBJECT_TYPE_SHADER_MODULE: return "VK_OBJECT_TYPE_SHADER_MODULE"; 909 case VK_OBJECT_TYPE_PIPELINE_CACHE: return "VK_OBJECT_TYPE_PIPELINE_CACHE"; 910 case VK_OBJECT_TYPE_PIPELINE_LAYOUT: return "VK_OBJECT_TYPE_PIPELINE_LAYOUT"; 911 case VK_OBJECT_TYPE_RENDER_PASS: return "VK_OBJECT_TYPE_RENDER_PASS"; 912 case VK_OBJECT_TYPE_PIPELINE: return "VK_OBJECT_TYPE_PIPELINE"; 913 case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT: return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"; 914 case VK_OBJECT_TYPE_SAMPLER: return "VK_OBJECT_TYPE_SAMPLER"; 915 case VK_OBJECT_TYPE_DESCRIPTOR_POOL: return "VK_OBJECT_TYPE_DESCRIPTOR_POOL"; 916 case VK_OBJECT_TYPE_DESCRIPTOR_SET: return "VK_OBJECT_TYPE_DESCRIPTOR_SET"; 917 case VK_OBJECT_TYPE_FRAMEBUFFER: return "VK_OBJECT_TYPE_FRAMEBUFFER"; 918 case VK_OBJECT_TYPE_COMMAND_POOL: return "VK_OBJECT_TYPE_COMMAND_POOL"; 919 case VK_OBJECT_TYPE_SURFACE_KHR: return "VK_OBJECT_TYPE_SURFACE_KHR"; 920 case VK_OBJECT_TYPE_SWAPCHAIN_KHR: return "VK_OBJECT_TYPE_SWAPCHAIN_KHR"; 921 case VK_OBJECT_TYPE_DISPLAY_KHR: return "VK_OBJECT_TYPE_DISPLAY_KHR"; 922 case VK_OBJECT_TYPE_DISPLAY_MODE_KHR: return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"; 923 case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT: return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"; 924 case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR: return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR"; 925 case VK_OBJECT_TYPE_OBJECT_TABLE_NVX: return "VK_OBJECT_TYPE_OBJECT_TABLE_NVX"; 926 case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX: return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX"; 927 default: return DE_NULL; 928 } 929} 930 931const char* getColorSpaceKHRName (VkColorSpaceKHR value) 932{ 933 switch (value) 934 { 935 case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR: return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR"; 936 case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT"; 937 case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT: return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT"; 938 case VK_COLOR_SPACE_DCI_P3_LINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_LINEAR_EXT"; 939 case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT"; 940 case VK_COLOR_SPACE_BT709_LINEAR_EXT: return "VK_COLOR_SPACE_BT709_LINEAR_EXT"; 941 case VK_COLOR_SPACE_BT709_NONLINEAR_EXT: return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT"; 942 case VK_COLOR_SPACE_BT2020_LINEAR_EXT: return "VK_COLOR_SPACE_BT2020_LINEAR_EXT"; 943 case VK_COLOR_SPACE_HDR10_ST2084_EXT: return "VK_COLOR_SPACE_HDR10_ST2084_EXT"; 944 case VK_COLOR_SPACE_DOLBYVISION_EXT: return "VK_COLOR_SPACE_DOLBYVISION_EXT"; 945 case VK_COLOR_SPACE_HDR10_HLG_EXT: return "VK_COLOR_SPACE_HDR10_HLG_EXT"; 946 case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT"; 947 case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT"; 948 case VK_COLOR_SPACE_PASS_THROUGH_EXT: return "VK_COLOR_SPACE_PASS_THROUGH_EXT"; 949 default: return DE_NULL; 950 } 951} 952 953const char* getPresentModeKHRName (VkPresentModeKHR value) 954{ 955 switch (value) 956 { 957 case VK_PRESENT_MODE_IMMEDIATE_KHR: return "VK_PRESENT_MODE_IMMEDIATE_KHR"; 958 case VK_PRESENT_MODE_MAILBOX_KHR: return "VK_PRESENT_MODE_MAILBOX_KHR"; 959 case VK_PRESENT_MODE_FIFO_KHR: return "VK_PRESENT_MODE_FIFO_KHR"; 960 case VK_PRESENT_MODE_FIFO_RELAXED_KHR: return "VK_PRESENT_MODE_FIFO_RELAXED_KHR"; 961 case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR"; 962 case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR"; 963 default: return DE_NULL; 964 } 965} 966 967const char* getDescriptorUpdateTemplateTypeKHRName (VkDescriptorUpdateTemplateTypeKHR value) 968{ 969 switch (value) 970 { 971 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR"; 972 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR"; 973 default: return DE_NULL; 974 } 975} 976 977const char* getPointClippingBehaviorKHRName (VkPointClippingBehaviorKHR value) 978{ 979 switch (value) 980 { 981 case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR: return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR"; 982 case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR: return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR"; 983 default: return DE_NULL; 984 } 985} 986 987const char* getTessellationDomainOriginKHRName (VkTessellationDomainOriginKHR value) 988{ 989 switch (value) 990 { 991 case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR: return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR"; 992 case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR: return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR"; 993 default: return DE_NULL; 994 } 995} 996 997const char* getSamplerYcbcrModelConversionKHRName (VkSamplerYcbcrModelConversionKHR value) 998{ 999 switch (value) 1000 { 1001 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR"; 1002 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR"; 1003 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR"; 1004 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR"; 1005 case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR: return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR"; 1006 default: return DE_NULL; 1007 } 1008} 1009 1010const char* getSamplerYcbcrRangeKHRName (VkSamplerYcbcrRangeKHR value) 1011{ 1012 switch (value) 1013 { 1014 case VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR: return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR"; 1015 case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR: return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR"; 1016 default: return DE_NULL; 1017 } 1018} 1019 1020const char* getChromaLocationKHRName (VkChromaLocationKHR value) 1021{ 1022 switch (value) 1023 { 1024 case VK_CHROMA_LOCATION_COSITED_EVEN_KHR: return "VK_CHROMA_LOCATION_COSITED_EVEN_KHR"; 1025 case VK_CHROMA_LOCATION_MIDPOINT_KHR: return "VK_CHROMA_LOCATION_MIDPOINT_KHR"; 1026 default: return DE_NULL; 1027 } 1028} 1029 1030const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value) 1031{ 1032 switch (value) 1033 { 1034 case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT"; 1035 case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT"; 1036 case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT"; 1037 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT"; 1038 case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT"; 1039 case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT"; 1040 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT"; 1041 case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT"; 1042 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT"; 1043 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT"; 1044 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT"; 1045 case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT"; 1046 case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT"; 1047 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT"; 1048 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT"; 1049 case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT"; 1050 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT"; 1051 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT"; 1052 case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT"; 1053 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT"; 1054 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT"; 1055 case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT"; 1056 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT"; 1057 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT"; 1058 case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT"; 1059 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT"; 1060 case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT"; 1061 case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT"; 1062 case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT"; 1063 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT"; 1064 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT"; 1065 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT"; 1066 case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT"; 1067 default: return DE_NULL; 1068 } 1069} 1070 1071const char* getDebugReportErrorEXTName (VkDebugReportErrorEXT value) 1072{ 1073 switch (value) 1074 { 1075 case VK_DEBUG_REPORT_ERROR_NONE_EXT: return "VK_DEBUG_REPORT_ERROR_NONE_EXT"; 1076 case VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT: return "VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT"; 1077 default: return DE_NULL; 1078 } 1079} 1080 1081tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value) 1082{ 1083 static const tcu::Format::BitDesc s_desc[] = 1084 { 1085 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"), 1086 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"), 1087 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"), 1088 tcu::Format::BitDesc(VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"), 1089 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"), 1090 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"), 1091 tcu::Format::BitDesc(VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"), 1092 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"), 1093 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"), 1094 tcu::Format::BitDesc(VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"), 1095 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_SRC_BIT, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"), 1096 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_DST_BIT, "VK_FORMAT_FEATURE_BLIT_DST_BIT"), 1097 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"), 1098 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR"), 1099 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR"), 1100 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR"), 1101 tcu::Format::BitDesc(VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR, "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR"), 1102 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR"), 1103 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR"), 1104 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR"), 1105 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR"), 1106 tcu::Format::BitDesc(VK_FORMAT_FEATURE_DISJOINT_BIT_KHR, "VK_FORMAT_FEATURE_DISJOINT_BIT_KHR"), 1107 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR, "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR"), 1108 }; 1109 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1110} 1111 1112tcu::Format::Bitfield<32> getImageUsageFlagsStr (VkImageUsageFlags value) 1113{ 1114 static const tcu::Format::BitDesc s_desc[] = 1115 { 1116 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_SRC_BIT, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"), 1117 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_DST_BIT, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"), 1118 tcu::Format::BitDesc(VK_IMAGE_USAGE_SAMPLED_BIT, "VK_IMAGE_USAGE_SAMPLED_BIT"), 1119 tcu::Format::BitDesc(VK_IMAGE_USAGE_STORAGE_BIT, "VK_IMAGE_USAGE_STORAGE_BIT"), 1120 tcu::Format::BitDesc(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"), 1121 tcu::Format::BitDesc(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"), 1122 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"), 1123 tcu::Format::BitDesc(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"), 1124 }; 1125 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1126} 1127 1128tcu::Format::Bitfield<32> getImageCreateFlagsStr (VkImageCreateFlags value) 1129{ 1130 static const tcu::Format::BitDesc s_desc[] = 1131 { 1132 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_BINDING_BIT, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"), 1133 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"), 1134 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"), 1135 tcu::Format::BitDesc(VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"), 1136 tcu::Format::BitDesc(VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"), 1137 tcu::Format::BitDesc(VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, "VK_IMAGE_CREATE_BIND_SFR_BIT_KHX"), 1138 tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR"), 1139 tcu::Format::BitDesc(VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR, "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR"), 1140 tcu::Format::BitDesc(VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR, "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR"), 1141 tcu::Format::BitDesc(VK_IMAGE_CREATE_ALIAS_BIT_KHR, "VK_IMAGE_CREATE_ALIAS_BIT_KHR"), 1142 tcu::Format::BitDesc(VK_IMAGE_CREATE_DISJOINT_BIT_KHR, "VK_IMAGE_CREATE_DISJOINT_BIT_KHR"), 1143 }; 1144 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1145} 1146 1147tcu::Format::Bitfield<32> getSampleCountFlagsStr (VkSampleCountFlags value) 1148{ 1149 static const tcu::Format::BitDesc s_desc[] = 1150 { 1151 tcu::Format::BitDesc(VK_SAMPLE_COUNT_1_BIT, "VK_SAMPLE_COUNT_1_BIT"), 1152 tcu::Format::BitDesc(VK_SAMPLE_COUNT_2_BIT, "VK_SAMPLE_COUNT_2_BIT"), 1153 tcu::Format::BitDesc(VK_SAMPLE_COUNT_4_BIT, "VK_SAMPLE_COUNT_4_BIT"), 1154 tcu::Format::BitDesc(VK_SAMPLE_COUNT_8_BIT, "VK_SAMPLE_COUNT_8_BIT"), 1155 tcu::Format::BitDesc(VK_SAMPLE_COUNT_16_BIT, "VK_SAMPLE_COUNT_16_BIT"), 1156 tcu::Format::BitDesc(VK_SAMPLE_COUNT_32_BIT, "VK_SAMPLE_COUNT_32_BIT"), 1157 tcu::Format::BitDesc(VK_SAMPLE_COUNT_64_BIT, "VK_SAMPLE_COUNT_64_BIT"), 1158 }; 1159 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1160} 1161 1162tcu::Format::Bitfield<32> getQueueFlagsStr (VkQueueFlags value) 1163{ 1164 static const tcu::Format::BitDesc s_desc[] = 1165 { 1166 tcu::Format::BitDesc(VK_QUEUE_GRAPHICS_BIT, "VK_QUEUE_GRAPHICS_BIT"), 1167 tcu::Format::BitDesc(VK_QUEUE_COMPUTE_BIT, "VK_QUEUE_COMPUTE_BIT"), 1168 tcu::Format::BitDesc(VK_QUEUE_TRANSFER_BIT, "VK_QUEUE_TRANSFER_BIT"), 1169 tcu::Format::BitDesc(VK_QUEUE_SPARSE_BINDING_BIT, "VK_QUEUE_SPARSE_BINDING_BIT"), 1170 }; 1171 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1172} 1173 1174tcu::Format::Bitfield<32> getMemoryPropertyFlagsStr (VkMemoryPropertyFlags value) 1175{ 1176 static const tcu::Format::BitDesc s_desc[] = 1177 { 1178 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"), 1179 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"), 1180 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"), 1181 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_CACHED_BIT, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"), 1182 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"), 1183 }; 1184 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1185} 1186 1187tcu::Format::Bitfield<32> getMemoryHeapFlagsStr (VkMemoryHeapFlags value) 1188{ 1189 static const tcu::Format::BitDesc s_desc[] = 1190 { 1191 tcu::Format::BitDesc(VK_MEMORY_HEAP_DEVICE_LOCAL_BIT, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"), 1192 tcu::Format::BitDesc(VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX"), 1193 }; 1194 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1195} 1196 1197tcu::Format::Bitfield<32> getPipelineStageFlagsStr (VkPipelineStageFlags value) 1198{ 1199 static const tcu::Format::BitDesc s_desc[] = 1200 { 1201 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"), 1202 tcu::Format::BitDesc(VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"), 1203 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"), 1204 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_SHADER_BIT, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"), 1205 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"), 1206 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"), 1207 tcu::Format::BitDesc(VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"), 1208 tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"), 1209 tcu::Format::BitDesc(VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"), 1210 tcu::Format::BitDesc(VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"), 1211 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"), 1212 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"), 1213 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TRANSFER_BIT, "VK_PIPELINE_STAGE_TRANSFER_BIT"), 1214 tcu::Format::BitDesc(VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"), 1215 tcu::Format::BitDesc(VK_PIPELINE_STAGE_HOST_BIT, "VK_PIPELINE_STAGE_HOST_BIT"), 1216 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"), 1217 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"), 1218 }; 1219 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1220} 1221 1222tcu::Format::Bitfield<32> getImageAspectFlagsStr (VkImageAspectFlags value) 1223{ 1224 static const tcu::Format::BitDesc s_desc[] = 1225 { 1226 tcu::Format::BitDesc(VK_IMAGE_ASPECT_COLOR_BIT, "VK_IMAGE_ASPECT_COLOR_BIT"), 1227 tcu::Format::BitDesc(VK_IMAGE_ASPECT_DEPTH_BIT, "VK_IMAGE_ASPECT_DEPTH_BIT"), 1228 tcu::Format::BitDesc(VK_IMAGE_ASPECT_STENCIL_BIT, "VK_IMAGE_ASPECT_STENCIL_BIT"), 1229 tcu::Format::BitDesc(VK_IMAGE_ASPECT_METADATA_BIT, "VK_IMAGE_ASPECT_METADATA_BIT"), 1230 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_0_BIT_KHR, "VK_IMAGE_ASPECT_PLANE_0_BIT_KHR"), 1231 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_1_BIT_KHR, "VK_IMAGE_ASPECT_PLANE_1_BIT_KHR"), 1232 tcu::Format::BitDesc(VK_IMAGE_ASPECT_PLANE_2_BIT_KHR, "VK_IMAGE_ASPECT_PLANE_2_BIT_KHR"), 1233 }; 1234 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1235} 1236 1237tcu::Format::Bitfield<32> getSparseImageFormatFlagsStr (VkSparseImageFormatFlags value) 1238{ 1239 static const tcu::Format::BitDesc s_desc[] = 1240 { 1241 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT"), 1242 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT"), 1243 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT"), 1244 }; 1245 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1246} 1247 1248tcu::Format::Bitfield<32> getSparseMemoryBindFlagsStr (VkSparseMemoryBindFlags value) 1249{ 1250 static const tcu::Format::BitDesc s_desc[] = 1251 { 1252 tcu::Format::BitDesc(VK_SPARSE_MEMORY_BIND_METADATA_BIT, "VK_SPARSE_MEMORY_BIND_METADATA_BIT"), 1253 }; 1254 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1255} 1256 1257tcu::Format::Bitfield<32> getFenceCreateFlagsStr (VkFenceCreateFlags value) 1258{ 1259 static const tcu::Format::BitDesc s_desc[] = 1260 { 1261 tcu::Format::BitDesc(VK_FENCE_CREATE_SIGNALED_BIT, "VK_FENCE_CREATE_SIGNALED_BIT"), 1262 }; 1263 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1264} 1265 1266tcu::Format::Bitfield<32> getQueryPipelineStatisticFlagsStr (VkQueryPipelineStatisticFlags value) 1267{ 1268 static const tcu::Format::BitDesc s_desc[] = 1269 { 1270 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"), 1271 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"), 1272 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"), 1273 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"), 1274 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"), 1275 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"), 1276 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"), 1277 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"), 1278 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"), 1279 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"), 1280 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"), 1281 }; 1282 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1283} 1284 1285tcu::Format::Bitfield<32> getQueryResultFlagsStr (VkQueryResultFlags value) 1286{ 1287 static const tcu::Format::BitDesc s_desc[] = 1288 { 1289 tcu::Format::BitDesc(VK_QUERY_RESULT_64_BIT, "VK_QUERY_RESULT_64_BIT"), 1290 tcu::Format::BitDesc(VK_QUERY_RESULT_WAIT_BIT, "VK_QUERY_RESULT_WAIT_BIT"), 1291 tcu::Format::BitDesc(VK_QUERY_RESULT_WITH_AVAILABILITY_BIT, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"), 1292 tcu::Format::BitDesc(VK_QUERY_RESULT_PARTIAL_BIT, "VK_QUERY_RESULT_PARTIAL_BIT"), 1293 }; 1294 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1295} 1296 1297tcu::Format::Bitfield<32> getBufferCreateFlagsStr (VkBufferCreateFlags value) 1298{ 1299 static const tcu::Format::BitDesc s_desc[] = 1300 { 1301 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_BINDING_BIT, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"), 1302 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"), 1303 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"), 1304 }; 1305 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1306} 1307 1308tcu::Format::Bitfield<32> getBufferUsageFlagsStr (VkBufferUsageFlags value) 1309{ 1310 static const tcu::Format::BitDesc s_desc[] = 1311 { 1312 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_SRC_BIT, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"), 1313 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_DST_BIT, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"), 1314 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"), 1315 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"), 1316 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"), 1317 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"), 1318 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDEX_BUFFER_BIT, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"), 1319 tcu::Format::BitDesc(VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"), 1320 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"), 1321 }; 1322 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1323} 1324 1325tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value) 1326{ 1327 static const tcu::Format::BitDesc s_desc[] = 1328 { 1329 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"), 1330 tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT, "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"), 1331 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT, "VK_PIPELINE_CREATE_DERIVATIVE_BIT"), 1332 tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX"), 1333 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_KHX, "VK_PIPELINE_CREATE_DISPATCH_BASE_KHX"), 1334 }; 1335 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1336} 1337 1338tcu::Format::Bitfield<32> getShaderStageFlagsStr (VkShaderStageFlags value) 1339{ 1340 static const tcu::Format::BitDesc s_desc[] = 1341 { 1342 tcu::Format::BitDesc(VK_SHADER_STAGE_VERTEX_BIT, "VK_SHADER_STAGE_VERTEX_BIT"), 1343 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"), 1344 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"), 1345 tcu::Format::BitDesc(VK_SHADER_STAGE_GEOMETRY_BIT, "VK_SHADER_STAGE_GEOMETRY_BIT"), 1346 tcu::Format::BitDesc(VK_SHADER_STAGE_FRAGMENT_BIT, "VK_SHADER_STAGE_FRAGMENT_BIT"), 1347 tcu::Format::BitDesc(VK_SHADER_STAGE_COMPUTE_BIT, "VK_SHADER_STAGE_COMPUTE_BIT"), 1348 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL_GRAPHICS, "VK_SHADER_STAGE_ALL_GRAPHICS"), 1349 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL, "VK_SHADER_STAGE_ALL"), 1350 }; 1351 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1352} 1353 1354tcu::Format::Bitfield<32> getCullModeFlagsStr (VkCullModeFlags value) 1355{ 1356 static const tcu::Format::BitDesc s_desc[] = 1357 { 1358 tcu::Format::BitDesc(VK_CULL_MODE_NONE, "VK_CULL_MODE_NONE"), 1359 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_BIT, "VK_CULL_MODE_FRONT_BIT"), 1360 tcu::Format::BitDesc(VK_CULL_MODE_BACK_BIT, "VK_CULL_MODE_BACK_BIT"), 1361 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_AND_BACK, "VK_CULL_MODE_FRONT_AND_BACK"), 1362 }; 1363 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1364} 1365 1366tcu::Format::Bitfield<32> getColorComponentFlagsStr (VkColorComponentFlags value) 1367{ 1368 static const tcu::Format::BitDesc s_desc[] = 1369 { 1370 tcu::Format::BitDesc(VK_COLOR_COMPONENT_R_BIT, "VK_COLOR_COMPONENT_R_BIT"), 1371 tcu::Format::BitDesc(VK_COLOR_COMPONENT_G_BIT, "VK_COLOR_COMPONENT_G_BIT"), 1372 tcu::Format::BitDesc(VK_COLOR_COMPONENT_B_BIT, "VK_COLOR_COMPONENT_B_BIT"), 1373 tcu::Format::BitDesc(VK_COLOR_COMPONENT_A_BIT, "VK_COLOR_COMPONENT_A_BIT"), 1374 }; 1375 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1376} 1377 1378tcu::Format::Bitfield<32> getDescriptorSetLayoutCreateFlagsStr (VkDescriptorSetLayoutCreateFlags value) 1379{ 1380 static const tcu::Format::BitDesc s_desc[] = 1381 { 1382 tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"), 1383 }; 1384 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1385} 1386 1387tcu::Format::Bitfield<32> getDescriptorPoolCreateFlagsStr (VkDescriptorPoolCreateFlags value) 1388{ 1389 static const tcu::Format::BitDesc s_desc[] = 1390 { 1391 tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"), 1392 }; 1393 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1394} 1395 1396tcu::Format::Bitfield<32> getAttachmentDescriptionFlagsStr (VkAttachmentDescriptionFlags value) 1397{ 1398 static const tcu::Format::BitDesc s_desc[] = 1399 { 1400 tcu::Format::BitDesc(VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"), 1401 }; 1402 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1403} 1404 1405tcu::Format::Bitfield<32> getSubpassDescriptionFlagsStr (VkSubpassDescriptionFlags value) 1406{ 1407 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1408} 1409 1410tcu::Format::Bitfield<32> getAccessFlagsStr (VkAccessFlags value) 1411{ 1412 static const tcu::Format::BitDesc s_desc[] = 1413 { 1414 tcu::Format::BitDesc(VK_ACCESS_INDIRECT_COMMAND_READ_BIT, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"), 1415 tcu::Format::BitDesc(VK_ACCESS_INDEX_READ_BIT, "VK_ACCESS_INDEX_READ_BIT"), 1416 tcu::Format::BitDesc(VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"), 1417 tcu::Format::BitDesc(VK_ACCESS_UNIFORM_READ_BIT, "VK_ACCESS_UNIFORM_READ_BIT"), 1418 tcu::Format::BitDesc(VK_ACCESS_INPUT_ATTACHMENT_READ_BIT, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"), 1419 tcu::Format::BitDesc(VK_ACCESS_SHADER_READ_BIT, "VK_ACCESS_SHADER_READ_BIT"), 1420 tcu::Format::BitDesc(VK_ACCESS_SHADER_WRITE_BIT, "VK_ACCESS_SHADER_WRITE_BIT"), 1421 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_READ_BIT, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"), 1422 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"), 1423 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"), 1424 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"), 1425 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_READ_BIT, "VK_ACCESS_TRANSFER_READ_BIT"), 1426 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_WRITE_BIT, "VK_ACCESS_TRANSFER_WRITE_BIT"), 1427 tcu::Format::BitDesc(VK_ACCESS_HOST_READ_BIT, "VK_ACCESS_HOST_READ_BIT"), 1428 tcu::Format::BitDesc(VK_ACCESS_HOST_WRITE_BIT, "VK_ACCESS_HOST_WRITE_BIT"), 1429 tcu::Format::BitDesc(VK_ACCESS_MEMORY_READ_BIT, "VK_ACCESS_MEMORY_READ_BIT"), 1430 tcu::Format::BitDesc(VK_ACCESS_MEMORY_WRITE_BIT, "VK_ACCESS_MEMORY_WRITE_BIT"), 1431 }; 1432 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1433} 1434 1435tcu::Format::Bitfield<32> getDependencyFlagsStr (VkDependencyFlags value) 1436{ 1437 static const tcu::Format::BitDesc s_desc[] = 1438 { 1439 tcu::Format::BitDesc(VK_DEPENDENCY_BY_REGION_BIT, "VK_DEPENDENCY_BY_REGION_BIT"), 1440 tcu::Format::BitDesc(VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX, "VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX"), 1441 tcu::Format::BitDesc(VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX, "VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX"), 1442 }; 1443 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1444} 1445 1446tcu::Format::Bitfield<32> getCommandPoolCreateFlagsStr (VkCommandPoolCreateFlags value) 1447{ 1448 static const tcu::Format::BitDesc s_desc[] = 1449 { 1450 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"), 1451 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"), 1452 }; 1453 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1454} 1455 1456tcu::Format::Bitfield<32> getCommandPoolResetFlagsStr (VkCommandPoolResetFlags value) 1457{ 1458 static const tcu::Format::BitDesc s_desc[] = 1459 { 1460 tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"), 1461 }; 1462 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1463} 1464 1465tcu::Format::Bitfield<32> getCommandBufferUsageFlagsStr (VkCommandBufferUsageFlags value) 1466{ 1467 static const tcu::Format::BitDesc s_desc[] = 1468 { 1469 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"), 1470 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"), 1471 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"), 1472 }; 1473 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1474} 1475 1476tcu::Format::Bitfield<32> getQueryControlFlagsStr (VkQueryControlFlags value) 1477{ 1478 static const tcu::Format::BitDesc s_desc[] = 1479 { 1480 tcu::Format::BitDesc(VK_QUERY_CONTROL_PRECISE_BIT, "VK_QUERY_CONTROL_PRECISE_BIT"), 1481 }; 1482 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1483} 1484 1485tcu::Format::Bitfield<32> getCommandBufferResetFlagsStr (VkCommandBufferResetFlags value) 1486{ 1487 static const tcu::Format::BitDesc s_desc[] = 1488 { 1489 tcu::Format::BitDesc(VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"), 1490 }; 1491 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1492} 1493 1494tcu::Format::Bitfield<32> getStencilFaceFlagsStr (VkStencilFaceFlags value) 1495{ 1496 static const tcu::Format::BitDesc s_desc[] = 1497 { 1498 tcu::Format::BitDesc(VK_STENCIL_FACE_FRONT_BIT, "VK_STENCIL_FACE_FRONT_BIT"), 1499 tcu::Format::BitDesc(VK_STENCIL_FACE_BACK_BIT, "VK_STENCIL_FACE_BACK_BIT"), 1500 tcu::Format::BitDesc(VK_STENCIL_FRONT_AND_BACK, "VK_STENCIL_FRONT_AND_BACK"), 1501 }; 1502 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1503} 1504 1505tcu::Format::Bitfield<32> getSurfaceTransformFlagsKHRStr (VkSurfaceTransformFlagsKHR value) 1506{ 1507 static const tcu::Format::BitDesc s_desc[] = 1508 { 1509 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR, "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR"), 1510 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR"), 1511 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR"), 1512 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR"), 1513 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR"), 1514 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR"), 1515 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR"), 1516 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"), 1517 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR, "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"), 1518 }; 1519 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1520} 1521 1522tcu::Format::Bitfield<32> getCompositeAlphaFlagsKHRStr (VkCompositeAlphaFlagsKHR value) 1523{ 1524 static const tcu::Format::BitDesc s_desc[] = 1525 { 1526 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR"), 1527 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR"), 1528 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR"), 1529 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR, "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR"), 1530 }; 1531 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1532} 1533 1534tcu::Format::Bitfield<32> getSwapchainCreateFlagsKHRStr (VkSwapchainCreateFlagsKHR value) 1535{ 1536 static const tcu::Format::BitDesc s_desc[] = 1537 { 1538 tcu::Format::BitDesc(VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX, "VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX"), 1539 }; 1540 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1541} 1542 1543tcu::Format::Bitfield<32> getDisplayPlaneAlphaFlagsKHRStr (VkDisplayPlaneAlphaFlagsKHR value) 1544{ 1545 static const tcu::Format::BitDesc s_desc[] = 1546 { 1547 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR"), 1548 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR"), 1549 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR"), 1550 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR"), 1551 }; 1552 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1553} 1554 1555tcu::Format::Bitfield<32> getExternalFenceHandleTypeFlagsKHRStr (VkExternalFenceHandleTypeFlagsKHR value) 1556{ 1557 static const tcu::Format::BitDesc s_desc[] = 1558 { 1559 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"), 1560 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"), 1561 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"), 1562 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR"), 1563 }; 1564 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1565} 1566 1567tcu::Format::Bitfield<32> getExternalFenceFeatureFlagsKHRStr (VkExternalFenceFeatureFlagsKHR value) 1568{ 1569 static const tcu::Format::BitDesc s_desc[] = 1570 { 1571 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR"), 1572 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR"), 1573 }; 1574 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1575} 1576 1577tcu::Format::Bitfield<32> getFenceImportFlagsKHRStr (VkFenceImportFlagsKHR value) 1578{ 1579 static const tcu::Format::BitDesc s_desc[] = 1580 { 1581 tcu::Format::BitDesc(VK_FENCE_IMPORT_TEMPORARY_BIT_KHR, "VK_FENCE_IMPORT_TEMPORARY_BIT_KHR"), 1582 }; 1583 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1584} 1585 1586tcu::Format::Bitfield<32> getDebugReportFlagsEXTStr (VkDebugReportFlagsEXT value) 1587{ 1588 static const tcu::Format::BitDesc s_desc[] = 1589 { 1590 tcu::Format::BitDesc(VK_DEBUG_REPORT_INFORMATION_BIT_EXT, "VK_DEBUG_REPORT_INFORMATION_BIT_EXT"), 1591 tcu::Format::BitDesc(VK_DEBUG_REPORT_WARNING_BIT_EXT, "VK_DEBUG_REPORT_WARNING_BIT_EXT"), 1592 tcu::Format::BitDesc(VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT, "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT"), 1593 tcu::Format::BitDesc(VK_DEBUG_REPORT_ERROR_BIT_EXT, "VK_DEBUG_REPORT_ERROR_BIT_EXT"), 1594 tcu::Format::BitDesc(VK_DEBUG_REPORT_DEBUG_BIT_EXT, "VK_DEBUG_REPORT_DEBUG_BIT_EXT"), 1595 }; 1596 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1597} 1598 1599tcu::Format::Bitfield<32> getExternalMemoryHandleTypeFlagsKHRStr (VkExternalMemoryHandleTypeFlagsKHR value) 1600{ 1601 static const tcu::Format::BitDesc s_desc[] = 1602 { 1603 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"), 1604 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"), 1605 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"), 1606 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR"), 1607 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR"), 1608 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR"), 1609 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR"), 1610 }; 1611 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1612} 1613 1614tcu::Format::Bitfield<32> getExternalMemoryFeatureFlagsKHRStr (VkExternalMemoryFeatureFlagsKHR value) 1615{ 1616 static const tcu::Format::BitDesc s_desc[] = 1617 { 1618 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR"), 1619 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR"), 1620 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR"), 1621 }; 1622 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1623} 1624 1625tcu::Format::Bitfield<32> getExternalSemaphoreHandleTypeFlagsKHRStr (VkExternalSemaphoreHandleTypeFlagsKHR value) 1626{ 1627 static const tcu::Format::BitDesc s_desc[] = 1628 { 1629 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"), 1630 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"), 1631 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"), 1632 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR"), 1633 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR"), 1634 }; 1635 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1636} 1637 1638tcu::Format::Bitfield<32> getExternalSemaphoreFeatureFlagsKHRStr (VkExternalSemaphoreFeatureFlagsKHR value) 1639{ 1640 static const tcu::Format::BitDesc s_desc[] = 1641 { 1642 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR"), 1643 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR"), 1644 }; 1645 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1646} 1647 1648tcu::Format::Bitfield<32> getSemaphoreImportFlagsKHRStr (VkSemaphoreImportFlagsKHR value) 1649{ 1650 static const tcu::Format::BitDesc s_desc[] = 1651 { 1652 tcu::Format::BitDesc(VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR, "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR"), 1653 }; 1654 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc)); 1655} 1656 1657tcu::Format::Bitfield<32> getInstanceCreateFlagsStr (VkInstanceCreateFlags value) 1658{ 1659 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1660} 1661 1662tcu::Format::Bitfield<32> getDeviceCreateFlagsStr (VkDeviceCreateFlags value) 1663{ 1664 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1665} 1666 1667tcu::Format::Bitfield<32> getDeviceQueueCreateFlagsStr (VkDeviceQueueCreateFlags value) 1668{ 1669 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1670} 1671 1672tcu::Format::Bitfield<32> getMemoryMapFlagsStr (VkMemoryMapFlags value) 1673{ 1674 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1675} 1676 1677tcu::Format::Bitfield<32> getSemaphoreCreateFlagsStr (VkSemaphoreCreateFlags value) 1678{ 1679 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1680} 1681 1682tcu::Format::Bitfield<32> getEventCreateFlagsStr (VkEventCreateFlags value) 1683{ 1684 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1685} 1686 1687tcu::Format::Bitfield<32> getQueryPoolCreateFlagsStr (VkQueryPoolCreateFlags value) 1688{ 1689 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1690} 1691 1692tcu::Format::Bitfield<32> getBufferViewCreateFlagsStr (VkBufferViewCreateFlags value) 1693{ 1694 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1695} 1696 1697tcu::Format::Bitfield<32> getImageViewCreateFlagsStr (VkImageViewCreateFlags value) 1698{ 1699 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1700} 1701 1702tcu::Format::Bitfield<32> getShaderModuleCreateFlagsStr (VkShaderModuleCreateFlags value) 1703{ 1704 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1705} 1706 1707tcu::Format::Bitfield<32> getPipelineCacheCreateFlagsStr (VkPipelineCacheCreateFlags value) 1708{ 1709 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1710} 1711 1712tcu::Format::Bitfield<32> getPipelineShaderStageCreateFlagsStr (VkPipelineShaderStageCreateFlags value) 1713{ 1714 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1715} 1716 1717tcu::Format::Bitfield<32> getPipelineVertexInputStateCreateFlagsStr (VkPipelineVertexInputStateCreateFlags value) 1718{ 1719 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1720} 1721 1722tcu::Format::Bitfield<32> getPipelineInputAssemblyStateCreateFlagsStr (VkPipelineInputAssemblyStateCreateFlags value) 1723{ 1724 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1725} 1726 1727tcu::Format::Bitfield<32> getPipelineTessellationStateCreateFlagsStr (VkPipelineTessellationStateCreateFlags value) 1728{ 1729 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1730} 1731 1732tcu::Format::Bitfield<32> getPipelineViewportStateCreateFlagsStr (VkPipelineViewportStateCreateFlags value) 1733{ 1734 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1735} 1736 1737tcu::Format::Bitfield<32> getPipelineRasterizationStateCreateFlagsStr (VkPipelineRasterizationStateCreateFlags value) 1738{ 1739 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1740} 1741 1742tcu::Format::Bitfield<32> getPipelineMultisampleStateCreateFlagsStr (VkPipelineMultisampleStateCreateFlags value) 1743{ 1744 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1745} 1746 1747tcu::Format::Bitfield<32> getPipelineDepthStencilStateCreateFlagsStr (VkPipelineDepthStencilStateCreateFlags value) 1748{ 1749 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1750} 1751 1752tcu::Format::Bitfield<32> getPipelineColorBlendStateCreateFlagsStr (VkPipelineColorBlendStateCreateFlags value) 1753{ 1754 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1755} 1756 1757tcu::Format::Bitfield<32> getPipelineDynamicStateCreateFlagsStr (VkPipelineDynamicStateCreateFlags value) 1758{ 1759 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1760} 1761 1762tcu::Format::Bitfield<32> getPipelineLayoutCreateFlagsStr (VkPipelineLayoutCreateFlags value) 1763{ 1764 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1765} 1766 1767tcu::Format::Bitfield<32> getSamplerCreateFlagsStr (VkSamplerCreateFlags value) 1768{ 1769 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1770} 1771 1772tcu::Format::Bitfield<32> getDescriptorPoolResetFlagsStr (VkDescriptorPoolResetFlags value) 1773{ 1774 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1775} 1776 1777tcu::Format::Bitfield<32> getFramebufferCreateFlagsStr (VkFramebufferCreateFlags value) 1778{ 1779 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1780} 1781 1782tcu::Format::Bitfield<32> getRenderPassCreateFlagsStr (VkRenderPassCreateFlags value) 1783{ 1784 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1785} 1786 1787tcu::Format::Bitfield<32> getDisplayModeCreateFlagsKHRStr (VkDisplayModeCreateFlagsKHR value) 1788{ 1789 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1790} 1791 1792tcu::Format::Bitfield<32> getDisplaySurfaceCreateFlagsKHRStr (VkDisplaySurfaceCreateFlagsKHR value) 1793{ 1794 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1795} 1796 1797tcu::Format::Bitfield<32> getXlibSurfaceCreateFlagsKHRStr (VkXlibSurfaceCreateFlagsKHR value) 1798{ 1799 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1800} 1801 1802tcu::Format::Bitfield<32> getXcbSurfaceCreateFlagsKHRStr (VkXcbSurfaceCreateFlagsKHR value) 1803{ 1804 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1805} 1806 1807tcu::Format::Bitfield<32> getWaylandSurfaceCreateFlagsKHRStr (VkWaylandSurfaceCreateFlagsKHR value) 1808{ 1809 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1810} 1811 1812tcu::Format::Bitfield<32> getMirSurfaceCreateFlagsKHRStr (VkMirSurfaceCreateFlagsKHR value) 1813{ 1814 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1815} 1816 1817tcu::Format::Bitfield<32> getAndroidSurfaceCreateFlagsKHRStr (VkAndroidSurfaceCreateFlagsKHR value) 1818{ 1819 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1820} 1821 1822tcu::Format::Bitfield<32> getWin32SurfaceCreateFlagsKHRStr (VkWin32SurfaceCreateFlagsKHR value) 1823{ 1824 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1825} 1826 1827tcu::Format::Bitfield<32> getCommandPoolTrimFlagsKHRStr (VkCommandPoolTrimFlagsKHR value) 1828{ 1829 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1830} 1831 1832tcu::Format::Bitfield<32> getDescriptorUpdateTemplateCreateFlagsKHRStr (VkDescriptorUpdateTemplateCreateFlagsKHR value) 1833{ 1834 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL); 1835} 1836 1837std::ostream& operator<< (std::ostream& s, const VkApplicationInfo& value) 1838{ 1839 s << "VkApplicationInfo = {\n"; 1840 s << "\tsType = " << value.sType << '\n'; 1841 s << "\tpNext = " << value.pNext << '\n'; 1842 s << "\tpApplicationName = " << getCharPtrStr(value.pApplicationName) << '\n'; 1843 s << "\tapplicationVersion = " << value.applicationVersion << '\n'; 1844 s << "\tpEngineName = " << getCharPtrStr(value.pEngineName) << '\n'; 1845 s << "\tengineVersion = " << value.engineVersion << '\n'; 1846 s << "\tapiVersion = " << value.apiVersion << '\n'; 1847 s << '}'; 1848 return s; 1849} 1850 1851std::ostream& operator<< (std::ostream& s, const VkInstanceCreateInfo& value) 1852{ 1853 s << "VkInstanceCreateInfo = {\n"; 1854 s << "\tsType = " << value.sType << '\n'; 1855 s << "\tpNext = " << value.pNext << '\n'; 1856 s << "\tflags = " << getInstanceCreateFlagsStr(value.flags) << '\n'; 1857 s << "\tpApplicationInfo = " << value.pApplicationInfo << '\n'; 1858 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n'; 1859 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n'; 1860 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n'; 1861 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n'; 1862 s << '}'; 1863 return s; 1864} 1865 1866std::ostream& operator<< (std::ostream& s, const VkAllocationCallbacks& value) 1867{ 1868 s << "VkAllocationCallbacks = {\n"; 1869 s << "\tpUserData = " << value.pUserData << '\n'; 1870 s << "\tpfnAllocation = " << value.pfnAllocation << '\n'; 1871 s << "\tpfnReallocation = " << value.pfnReallocation << '\n'; 1872 s << "\tpfnFree = " << value.pfnFree << '\n'; 1873 s << "\tpfnInternalAllocation = " << value.pfnInternalAllocation << '\n'; 1874 s << "\tpfnInternalFree = " << value.pfnInternalFree << '\n'; 1875 s << '}'; 1876 return s; 1877} 1878 1879std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures& value) 1880{ 1881 s << "VkPhysicalDeviceFeatures = {\n"; 1882 s << "\trobustBufferAccess = " << value.robustBufferAccess << '\n'; 1883 s << "\tfullDrawIndexUint32 = " << value.fullDrawIndexUint32 << '\n'; 1884 s << "\timageCubeArray = " << value.imageCubeArray << '\n'; 1885 s << "\tindependentBlend = " << value.independentBlend << '\n'; 1886 s << "\tgeometryShader = " << value.geometryShader << '\n'; 1887 s << "\ttessellationShader = " << value.tessellationShader << '\n'; 1888 s << "\tsampleRateShading = " << value.sampleRateShading << '\n'; 1889 s << "\tdualSrcBlend = " << value.dualSrcBlend << '\n'; 1890 s << "\tlogicOp = " << value.logicOp << '\n'; 1891 s << "\tmultiDrawIndirect = " << value.multiDrawIndirect << '\n'; 1892 s << "\tdrawIndirectFirstInstance = " << value.drawIndirectFirstInstance << '\n'; 1893 s << "\tdepthClamp = " << value.depthClamp << '\n'; 1894 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n'; 1895 s << "\tfillModeNonSolid = " << value.fillModeNonSolid << '\n'; 1896 s << "\tdepthBounds = " << value.depthBounds << '\n'; 1897 s << "\twideLines = " << value.wideLines << '\n'; 1898 s << "\tlargePoints = " << value.largePoints << '\n'; 1899 s << "\talphaToOne = " << value.alphaToOne << '\n'; 1900 s << "\tmultiViewport = " << value.multiViewport << '\n'; 1901 s << "\tsamplerAnisotropy = " << value.samplerAnisotropy << '\n'; 1902 s << "\ttextureCompressionETC2 = " << value.textureCompressionETC2 << '\n'; 1903 s << "\ttextureCompressionASTC_LDR = " << value.textureCompressionASTC_LDR << '\n'; 1904 s << "\ttextureCompressionBC = " << value.textureCompressionBC << '\n'; 1905 s << "\tocclusionQueryPrecise = " << value.occlusionQueryPrecise << '\n'; 1906 s << "\tpipelineStatisticsQuery = " << value.pipelineStatisticsQuery << '\n'; 1907 s << "\tvertexPipelineStoresAndAtomics = " << value.vertexPipelineStoresAndAtomics << '\n'; 1908 s << "\tfragmentStoresAndAtomics = " << value.fragmentStoresAndAtomics << '\n'; 1909 s << "\tshaderTessellationAndGeometryPointSize = " << value.shaderTessellationAndGeometryPointSize << '\n'; 1910 s << "\tshaderImageGatherExtended = " << value.shaderImageGatherExtended << '\n'; 1911 s << "\tshaderStorageImageExtendedFormats = " << value.shaderStorageImageExtendedFormats << '\n'; 1912 s << "\tshaderStorageImageMultisample = " << value.shaderStorageImageMultisample << '\n'; 1913 s << "\tshaderStorageImageReadWithoutFormat = " << value.shaderStorageImageReadWithoutFormat << '\n'; 1914 s << "\tshaderStorageImageWriteWithoutFormat = " << value.shaderStorageImageWriteWithoutFormat << '\n'; 1915 s << "\tshaderUniformBufferArrayDynamicIndexing = " << value.shaderUniformBufferArrayDynamicIndexing << '\n'; 1916 s << "\tshaderSampledImageArrayDynamicIndexing = " << value.shaderSampledImageArrayDynamicIndexing << '\n'; 1917 s << "\tshaderStorageBufferArrayDynamicIndexing = " << value.shaderStorageBufferArrayDynamicIndexing << '\n'; 1918 s << "\tshaderStorageImageArrayDynamicIndexing = " << value.shaderStorageImageArrayDynamicIndexing << '\n'; 1919 s << "\tshaderClipDistance = " << value.shaderClipDistance << '\n'; 1920 s << "\tshaderCullDistance = " << value.shaderCullDistance << '\n'; 1921 s << "\tshaderFloat64 = " << value.shaderFloat64 << '\n'; 1922 s << "\tshaderInt64 = " << value.shaderInt64 << '\n'; 1923 s << "\tshaderInt16 = " << value.shaderInt16 << '\n'; 1924 s << "\tshaderResourceResidency = " << value.shaderResourceResidency << '\n'; 1925 s << "\tshaderResourceMinLod = " << value.shaderResourceMinLod << '\n'; 1926 s << "\tsparseBinding = " << value.sparseBinding << '\n'; 1927 s << "\tsparseResidencyBuffer = " << value.sparseResidencyBuffer << '\n'; 1928 s << "\tsparseResidencyImage2D = " << value.sparseResidencyImage2D << '\n'; 1929 s << "\tsparseResidencyImage3D = " << value.sparseResidencyImage3D << '\n'; 1930 s << "\tsparseResidency2Samples = " << value.sparseResidency2Samples << '\n'; 1931 s << "\tsparseResidency4Samples = " << value.sparseResidency4Samples << '\n'; 1932 s << "\tsparseResidency8Samples = " << value.sparseResidency8Samples << '\n'; 1933 s << "\tsparseResidency16Samples = " << value.sparseResidency16Samples << '\n'; 1934 s << "\tsparseResidencyAliased = " << value.sparseResidencyAliased << '\n'; 1935 s << "\tvariableMultisampleRate = " << value.variableMultisampleRate << '\n'; 1936 s << "\tinheritedQueries = " << value.inheritedQueries << '\n'; 1937 s << '}'; 1938 return s; 1939} 1940 1941std::ostream& operator<< (std::ostream& s, const VkFormatProperties& value) 1942{ 1943 s << "VkFormatProperties = {\n"; 1944 s << "\tlinearTilingFeatures = " << getFormatFeatureFlagsStr(value.linearTilingFeatures) << '\n'; 1945 s << "\toptimalTilingFeatures = " << getFormatFeatureFlagsStr(value.optimalTilingFeatures) << '\n'; 1946 s << "\tbufferFeatures = " << getFormatFeatureFlagsStr(value.bufferFeatures) << '\n'; 1947 s << '}'; 1948 return s; 1949} 1950 1951std::ostream& operator<< (std::ostream& s, const VkExtent3D& value) 1952{ 1953 s << "VkExtent3D = {\n"; 1954 s << "\twidth = " << value.width << '\n'; 1955 s << "\theight = " << value.height << '\n'; 1956 s << "\tdepth = " << value.depth << '\n'; 1957 s << '}'; 1958 return s; 1959} 1960 1961std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties& value) 1962{ 1963 s << "VkImageFormatProperties = {\n"; 1964 s << "\tmaxExtent = " << value.maxExtent << '\n'; 1965 s << "\tmaxMipLevels = " << value.maxMipLevels << '\n'; 1966 s << "\tmaxArrayLayers = " << value.maxArrayLayers << '\n'; 1967 s << "\tsampleCounts = " << getSampleCountFlagsStr(value.sampleCounts) << '\n'; 1968 s << "\tmaxResourceSize = " << value.maxResourceSize << '\n'; 1969 s << '}'; 1970 return s; 1971} 1972 1973std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceLimits& value) 1974{ 1975 s << "VkPhysicalDeviceLimits = {\n"; 1976 s << "\tmaxImageDimension1D = " << value.maxImageDimension1D << '\n'; 1977 s << "\tmaxImageDimension2D = " << value.maxImageDimension2D << '\n'; 1978 s << "\tmaxImageDimension3D = " << value.maxImageDimension3D << '\n'; 1979 s << "\tmaxImageDimensionCube = " << value.maxImageDimensionCube << '\n'; 1980 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n'; 1981 s << "\tmaxTexelBufferElements = " << value.maxTexelBufferElements << '\n'; 1982 s << "\tmaxUniformBufferRange = " << value.maxUniformBufferRange << '\n'; 1983 s << "\tmaxStorageBufferRange = " << value.maxStorageBufferRange << '\n'; 1984 s << "\tmaxPushConstantsSize = " << value.maxPushConstantsSize << '\n'; 1985 s << "\tmaxMemoryAllocationCount = " << value.maxMemoryAllocationCount << '\n'; 1986 s << "\tmaxSamplerAllocationCount = " << value.maxSamplerAllocationCount << '\n'; 1987 s << "\tbufferImageGranularity = " << value.bufferImageGranularity << '\n'; 1988 s << "\tsparseAddressSpaceSize = " << value.sparseAddressSpaceSize << '\n'; 1989 s << "\tmaxBoundDescriptorSets = " << value.maxBoundDescriptorSets << '\n'; 1990 s << "\tmaxPerStageDescriptorSamplers = " << value.maxPerStageDescriptorSamplers << '\n'; 1991 s << "\tmaxPerStageDescriptorUniformBuffers = " << value.maxPerStageDescriptorUniformBuffers << '\n'; 1992 s << "\tmaxPerStageDescriptorStorageBuffers = " << value.maxPerStageDescriptorStorageBuffers << '\n'; 1993 s << "\tmaxPerStageDescriptorSampledImages = " << value.maxPerStageDescriptorSampledImages << '\n'; 1994 s << "\tmaxPerStageDescriptorStorageImages = " << value.maxPerStageDescriptorStorageImages << '\n'; 1995 s << "\tmaxPerStageDescriptorInputAttachments = " << value.maxPerStageDescriptorInputAttachments << '\n'; 1996 s << "\tmaxPerStageResources = " << value.maxPerStageResources << '\n'; 1997 s << "\tmaxDescriptorSetSamplers = " << value.maxDescriptorSetSamplers << '\n'; 1998 s << "\tmaxDescriptorSetUniformBuffers = " << value.maxDescriptorSetUniformBuffers << '\n'; 1999 s << "\tmaxDescriptorSetUniformBuffersDynamic = " << value.maxDescriptorSetUniformBuffersDynamic << '\n'; 2000 s << "\tmaxDescriptorSetStorageBuffers = " << value.maxDescriptorSetStorageBuffers << '\n'; 2001 s << "\tmaxDescriptorSetStorageBuffersDynamic = " << value.maxDescriptorSetStorageBuffersDynamic << '\n'; 2002 s << "\tmaxDescriptorSetSampledImages = " << value.maxDescriptorSetSampledImages << '\n'; 2003 s << "\tmaxDescriptorSetStorageImages = " << value.maxDescriptorSetStorageImages << '\n'; 2004 s << "\tmaxDescriptorSetInputAttachments = " << value.maxDescriptorSetInputAttachments << '\n'; 2005 s << "\tmaxVertexInputAttributes = " << value.maxVertexInputAttributes << '\n'; 2006 s << "\tmaxVertexInputBindings = " << value.maxVertexInputBindings << '\n'; 2007 s << "\tmaxVertexInputAttributeOffset = " << value.maxVertexInputAttributeOffset << '\n'; 2008 s << "\tmaxVertexInputBindingStride = " << value.maxVertexInputBindingStride << '\n'; 2009 s << "\tmaxVertexOutputComponents = " << value.maxVertexOutputComponents << '\n'; 2010 s << "\tmaxTessellationGenerationLevel = " << value.maxTessellationGenerationLevel << '\n'; 2011 s << "\tmaxTessellationPatchSize = " << value.maxTessellationPatchSize << '\n'; 2012 s << "\tmaxTessellationControlPerVertexInputComponents = " << value.maxTessellationControlPerVertexInputComponents << '\n'; 2013 s << "\tmaxTessellationControlPerVertexOutputComponents = " << value.maxTessellationControlPerVertexOutputComponents << '\n'; 2014 s << "\tmaxTessellationControlPerPatchOutputComponents = " << value.maxTessellationControlPerPatchOutputComponents << '\n'; 2015 s << "\tmaxTessellationControlTotalOutputComponents = " << value.maxTessellationControlTotalOutputComponents << '\n'; 2016 s << "\tmaxTessellationEvaluationInputComponents = " << value.maxTessellationEvaluationInputComponents << '\n'; 2017 s << "\tmaxTessellationEvaluationOutputComponents = " << value.maxTessellationEvaluationOutputComponents << '\n'; 2018 s << "\tmaxGeometryShaderInvocations = " << value.maxGeometryShaderInvocations << '\n'; 2019 s << "\tmaxGeometryInputComponents = " << value.maxGeometryInputComponents << '\n'; 2020 s << "\tmaxGeometryOutputComponents = " << value.maxGeometryOutputComponents << '\n'; 2021 s << "\tmaxGeometryOutputVertices = " << value.maxGeometryOutputVertices << '\n'; 2022 s << "\tmaxGeometryTotalOutputComponents = " << value.maxGeometryTotalOutputComponents << '\n'; 2023 s << "\tmaxFragmentInputComponents = " << value.maxFragmentInputComponents << '\n'; 2024 s << "\tmaxFragmentOutputAttachments = " << value.maxFragmentOutputAttachments << '\n'; 2025 s << "\tmaxFragmentDualSrcAttachments = " << value.maxFragmentDualSrcAttachments << '\n'; 2026 s << "\tmaxFragmentCombinedOutputResources = " << value.maxFragmentCombinedOutputResources << '\n'; 2027 s << "\tmaxComputeSharedMemorySize = " << value.maxComputeSharedMemorySize << '\n'; 2028 s << "\tmaxComputeWorkGroupCount = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupCount), DE_ARRAY_END(value.maxComputeWorkGroupCount)) << '\n'; 2029 s << "\tmaxComputeWorkGroupInvocations = " << value.maxComputeWorkGroupInvocations << '\n'; 2030 s << "\tmaxComputeWorkGroupSize = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupSize), DE_ARRAY_END(value.maxComputeWorkGroupSize)) << '\n'; 2031 s << "\tsubPixelPrecisionBits = " << value.subPixelPrecisionBits << '\n'; 2032 s << "\tsubTexelPrecisionBits = " << value.subTexelPrecisionBits << '\n'; 2033 s << "\tmipmapPrecisionBits = " << value.mipmapPrecisionBits << '\n'; 2034 s << "\tmaxDrawIndexedIndexValue = " << value.maxDrawIndexedIndexValue << '\n'; 2035 s << "\tmaxDrawIndirectCount = " << value.maxDrawIndirectCount << '\n'; 2036 s << "\tmaxSamplerLodBias = " << value.maxSamplerLodBias << '\n'; 2037 s << "\tmaxSamplerAnisotropy = " << value.maxSamplerAnisotropy << '\n'; 2038 s << "\tmaxViewports = " << value.maxViewports << '\n'; 2039 s << "\tmaxViewportDimensions = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxViewportDimensions), DE_ARRAY_END(value.maxViewportDimensions)) << '\n'; 2040 s << "\tviewportBoundsRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewportBoundsRange), DE_ARRAY_END(value.viewportBoundsRange)) << '\n'; 2041 s << "\tviewportSubPixelBits = " << value.viewportSubPixelBits << '\n'; 2042 s << "\tminMemoryMapAlignment = " << value.minMemoryMapAlignment << '\n'; 2043 s << "\tminTexelBufferOffsetAlignment = " << value.minTexelBufferOffsetAlignment << '\n'; 2044 s << "\tminUniformBufferOffsetAlignment = " << value.minUniformBufferOffsetAlignment << '\n'; 2045 s << "\tminStorageBufferOffsetAlignment = " << value.minStorageBufferOffsetAlignment << '\n'; 2046 s << "\tminTexelOffset = " << value.minTexelOffset << '\n'; 2047 s << "\tmaxTexelOffset = " << value.maxTexelOffset << '\n'; 2048 s << "\tminTexelGatherOffset = " << value.minTexelGatherOffset << '\n'; 2049 s << "\tmaxTexelGatherOffset = " << value.maxTexelGatherOffset << '\n'; 2050 s << "\tminInterpolationOffset = " << value.minInterpolationOffset << '\n'; 2051 s << "\tmaxInterpolationOffset = " << value.maxInterpolationOffset << '\n'; 2052 s << "\tsubPixelInterpolationOffsetBits = " << value.subPixelInterpolationOffsetBits << '\n'; 2053 s << "\tmaxFramebufferWidth = " << value.maxFramebufferWidth << '\n'; 2054 s << "\tmaxFramebufferHeight = " << value.maxFramebufferHeight << '\n'; 2055 s << "\tmaxFramebufferLayers = " << value.maxFramebufferLayers << '\n'; 2056 s << "\tframebufferColorSampleCounts = " << getSampleCountFlagsStr(value.framebufferColorSampleCounts) << '\n'; 2057 s << "\tframebufferDepthSampleCounts = " << getSampleCountFlagsStr(value.framebufferDepthSampleCounts) << '\n'; 2058 s << "\tframebufferStencilSampleCounts = " << getSampleCountFlagsStr(value.framebufferStencilSampleCounts) << '\n'; 2059 s << "\tframebufferNoAttachmentsSampleCounts = " << getSampleCountFlagsStr(value.framebufferNoAttachmentsSampleCounts) << '\n'; 2060 s << "\tmaxColorAttachments = " << value.maxColorAttachments << '\n'; 2061 s << "\tsampledImageColorSampleCounts = " << getSampleCountFlagsStr(value.sampledImageColorSampleCounts) << '\n'; 2062 s << "\tsampledImageIntegerSampleCounts = " << getSampleCountFlagsStr(value.sampledImageIntegerSampleCounts) << '\n'; 2063 s << "\tsampledImageDepthSampleCounts = " << getSampleCountFlagsStr(value.sampledImageDepthSampleCounts) << '\n'; 2064 s << "\tsampledImageStencilSampleCounts = " << getSampleCountFlagsStr(value.sampledImageStencilSampleCounts) << '\n'; 2065 s << "\tstorageImageSampleCounts = " << getSampleCountFlagsStr(value.storageImageSampleCounts) << '\n'; 2066 s << "\tmaxSampleMaskWords = " << value.maxSampleMaskWords << '\n'; 2067 s << "\ttimestampComputeAndGraphics = " << value.timestampComputeAndGraphics << '\n'; 2068 s << "\ttimestampPeriod = " << value.timestampPeriod << '\n'; 2069 s << "\tmaxClipDistances = " << value.maxClipDistances << '\n'; 2070 s << "\tmaxCullDistances = " << value.maxCullDistances << '\n'; 2071 s << "\tmaxCombinedClipAndCullDistances = " << value.maxCombinedClipAndCullDistances << '\n'; 2072 s << "\tdiscreteQueuePriorities = " << value.discreteQueuePriorities << '\n'; 2073 s << "\tpointSizeRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.pointSizeRange), DE_ARRAY_END(value.pointSizeRange)) << '\n'; 2074 s << "\tlineWidthRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.lineWidthRange), DE_ARRAY_END(value.lineWidthRange)) << '\n'; 2075 s << "\tpointSizeGranularity = " << value.pointSizeGranularity << '\n'; 2076 s << "\tlineWidthGranularity = " << value.lineWidthGranularity << '\n'; 2077 s << "\tstrictLines = " << value.strictLines << '\n'; 2078 s << "\tstandardSampleLocations = " << value.standardSampleLocations << '\n'; 2079 s << "\toptimalBufferCopyOffsetAlignment = " << value.optimalBufferCopyOffsetAlignment << '\n'; 2080 s << "\toptimalBufferCopyRowPitchAlignment = " << value.optimalBufferCopyRowPitchAlignment << '\n'; 2081 s << "\tnonCoherentAtomSize = " << value.nonCoherentAtomSize << '\n'; 2082 s << '}'; 2083 return s; 2084} 2085 2086std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseProperties& value) 2087{ 2088 s << "VkPhysicalDeviceSparseProperties = {\n"; 2089 s << "\tresidencyStandard2DBlockShape = " << value.residencyStandard2DBlockShape << '\n'; 2090 s << "\tresidencyStandard2DMultisampleBlockShape = " << value.residencyStandard2DMultisampleBlockShape << '\n'; 2091 s << "\tresidencyStandard3DBlockShape = " << value.residencyStandard3DBlockShape << '\n'; 2092 s << "\tresidencyAlignedMipSize = " << value.residencyAlignedMipSize << '\n'; 2093 s << "\tresidencyNonResidentStrict = " << value.residencyNonResidentStrict << '\n'; 2094 s << '}'; 2095 return s; 2096} 2097 2098std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties& value) 2099{ 2100 s << "VkPhysicalDeviceProperties = {\n"; 2101 s << "\tapiVersion = " << value.apiVersion << '\n'; 2102 s << "\tdriverVersion = " << value.driverVersion << '\n'; 2103 s << "\tvendorID = " << value.vendorID << '\n'; 2104 s << "\tdeviceID = " << value.deviceID << '\n'; 2105 s << "\tdeviceType = " << value.deviceType << '\n'; 2106 s << "\tdeviceName = " << (const char*)value.deviceName << '\n'; 2107 s << "\tpipelineCacheUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.pipelineCacheUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.pipelineCacheUUID))) << '\n'; 2108 s << "\tlimits = " << value.limits << '\n'; 2109 s << "\tsparseProperties = " << value.sparseProperties << '\n'; 2110 s << '}'; 2111 return s; 2112} 2113 2114std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties& value) 2115{ 2116 s << "VkQueueFamilyProperties = {\n"; 2117 s << "\tqueueFlags = " << getQueueFlagsStr(value.queueFlags) << '\n'; 2118 s << "\tqueueCount = " << value.queueCount << '\n'; 2119 s << "\ttimestampValidBits = " << value.timestampValidBits << '\n'; 2120 s << "\tminImageTransferGranularity = " << value.minImageTransferGranularity << '\n'; 2121 s << '}'; 2122 return s; 2123} 2124 2125std::ostream& operator<< (std::ostream& s, const VkMemoryType& value) 2126{ 2127 s << "VkMemoryType = {\n"; 2128 s << "\tpropertyFlags = " << getMemoryPropertyFlagsStr(value.propertyFlags) << '\n'; 2129 s << "\theapIndex = " << value.heapIndex << '\n'; 2130 s << '}'; 2131 return s; 2132} 2133 2134std::ostream& operator<< (std::ostream& s, const VkMemoryHeap& value) 2135{ 2136 s << "VkMemoryHeap = {\n"; 2137 s << "\tsize = " << value.size << '\n'; 2138 s << "\tflags = " << getMemoryHeapFlagsStr(value.flags) << '\n'; 2139 s << '}'; 2140 return s; 2141} 2142 2143std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties& value) 2144{ 2145 s << "VkPhysicalDeviceMemoryProperties = {\n"; 2146 s << "\tmemoryTypeCount = " << value.memoryTypeCount << '\n'; 2147 s << "\tmemoryTypes = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryTypes), DE_ARRAY_BEGIN(value.memoryTypes) + value.memoryTypeCount) << '\n'; 2148 s << "\tmemoryHeapCount = " << value.memoryHeapCount << '\n'; 2149 s << "\tmemoryHeaps = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryHeaps), DE_ARRAY_BEGIN(value.memoryHeaps) + value.memoryHeapCount) << '\n'; 2150 s << '}'; 2151 return s; 2152} 2153 2154std::ostream& operator<< (std::ostream& s, const VkDeviceQueueCreateInfo& value) 2155{ 2156 s << "VkDeviceQueueCreateInfo = {\n"; 2157 s << "\tsType = " << value.sType << '\n'; 2158 s << "\tpNext = " << value.pNext << '\n'; 2159 s << "\tflags = " << getDeviceQueueCreateFlagsStr(value.flags) << '\n'; 2160 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n'; 2161 s << "\tqueueCount = " << value.queueCount << '\n'; 2162 s << "\tpQueuePriorities = " << value.pQueuePriorities << '\n'; 2163 s << '}'; 2164 return s; 2165} 2166 2167std::ostream& operator<< (std::ostream& s, const VkDeviceCreateInfo& value) 2168{ 2169 s << "VkDeviceCreateInfo = {\n"; 2170 s << "\tsType = " << value.sType << '\n'; 2171 s << "\tpNext = " << value.pNext << '\n'; 2172 s << "\tflags = " << getDeviceCreateFlagsStr(value.flags) << '\n'; 2173 s << "\tqueueCreateInfoCount = " << value.queueCreateInfoCount << '\n'; 2174 s << "\tpQueueCreateInfos = " << value.pQueueCreateInfos << '\n'; 2175 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n'; 2176 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n'; 2177 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n'; 2178 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n'; 2179 s << "\tpEnabledFeatures = " << value.pEnabledFeatures << '\n'; 2180 s << '}'; 2181 return s; 2182} 2183 2184std::ostream& operator<< (std::ostream& s, const VkExtensionProperties& value) 2185{ 2186 s << "VkExtensionProperties = {\n"; 2187 s << "\textensionName = " << (const char*)value.extensionName << '\n'; 2188 s << "\tspecVersion = " << value.specVersion << '\n'; 2189 s << '}'; 2190 return s; 2191} 2192 2193std::ostream& operator<< (std::ostream& s, const VkLayerProperties& value) 2194{ 2195 s << "VkLayerProperties = {\n"; 2196 s << "\tlayerName = " << (const char*)value.layerName << '\n'; 2197 s << "\tspecVersion = " << value.specVersion << '\n'; 2198 s << "\timplementationVersion = " << value.implementationVersion << '\n'; 2199 s << "\tdescription = " << (const char*)value.description << '\n'; 2200 s << '}'; 2201 return s; 2202} 2203 2204std::ostream& operator<< (std::ostream& s, const VkSubmitInfo& value) 2205{ 2206 s << "VkSubmitInfo = {\n"; 2207 s << "\tsType = " << value.sType << '\n'; 2208 s << "\tpNext = " << value.pNext << '\n'; 2209 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 2210 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 2211 s << "\tpWaitDstStageMask = " << value.pWaitDstStageMask << '\n'; 2212 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n'; 2213 s << "\tpCommandBuffers = " << value.pCommandBuffers << '\n'; 2214 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n'; 2215 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n'; 2216 s << '}'; 2217 return s; 2218} 2219 2220std::ostream& operator<< (std::ostream& s, const VkMemoryAllocateInfo& value) 2221{ 2222 s << "VkMemoryAllocateInfo = {\n"; 2223 s << "\tsType = " << value.sType << '\n'; 2224 s << "\tpNext = " << value.pNext << '\n'; 2225 s << "\tallocationSize = " << value.allocationSize << '\n'; 2226 s << "\tmemoryTypeIndex = " << value.memoryTypeIndex << '\n'; 2227 s << '}'; 2228 return s; 2229} 2230 2231std::ostream& operator<< (std::ostream& s, const VkMappedMemoryRange& value) 2232{ 2233 s << "VkMappedMemoryRange = {\n"; 2234 s << "\tsType = " << value.sType << '\n'; 2235 s << "\tpNext = " << value.pNext << '\n'; 2236 s << "\tmemory = " << value.memory << '\n'; 2237 s << "\toffset = " << value.offset << '\n'; 2238 s << "\tsize = " << value.size << '\n'; 2239 s << '}'; 2240 return s; 2241} 2242 2243std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements& value) 2244{ 2245 s << "VkMemoryRequirements = {\n"; 2246 s << "\tsize = " << value.size << '\n'; 2247 s << "\talignment = " << value.alignment << '\n'; 2248 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 2249 s << '}'; 2250 return s; 2251} 2252 2253std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties& value) 2254{ 2255 s << "VkSparseImageFormatProperties = {\n"; 2256 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 2257 s << "\timageGranularity = " << value.imageGranularity << '\n'; 2258 s << "\tflags = " << getSparseImageFormatFlagsStr(value.flags) << '\n'; 2259 s << '}'; 2260 return s; 2261} 2262 2263std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements& value) 2264{ 2265 s << "VkSparseImageMemoryRequirements = {\n"; 2266 s << "\tformatProperties = " << value.formatProperties << '\n'; 2267 s << "\timageMipTailFirstLod = " << value.imageMipTailFirstLod << '\n'; 2268 s << "\timageMipTailSize = " << value.imageMipTailSize << '\n'; 2269 s << "\timageMipTailOffset = " << value.imageMipTailOffset << '\n'; 2270 s << "\timageMipTailStride = " << value.imageMipTailStride << '\n'; 2271 s << '}'; 2272 return s; 2273} 2274 2275std::ostream& operator<< (std::ostream& s, const VkSparseMemoryBind& value) 2276{ 2277 s << "VkSparseMemoryBind = {\n"; 2278 s << "\tresourceOffset = " << value.resourceOffset << '\n'; 2279 s << "\tsize = " << value.size << '\n'; 2280 s << "\tmemory = " << value.memory << '\n'; 2281 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 2282 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n'; 2283 s << '}'; 2284 return s; 2285} 2286 2287std::ostream& operator<< (std::ostream& s, const VkSparseBufferMemoryBindInfo& value) 2288{ 2289 s << "VkSparseBufferMemoryBindInfo = {\n"; 2290 s << "\tbuffer = " << value.buffer << '\n'; 2291 s << "\tbindCount = " << value.bindCount << '\n'; 2292 s << "\tpBinds = " << value.pBinds << '\n'; 2293 s << '}'; 2294 return s; 2295} 2296 2297std::ostream& operator<< (std::ostream& s, const VkSparseImageOpaqueMemoryBindInfo& value) 2298{ 2299 s << "VkSparseImageOpaqueMemoryBindInfo = {\n"; 2300 s << "\timage = " << value.image << '\n'; 2301 s << "\tbindCount = " << value.bindCount << '\n'; 2302 s << "\tpBinds = " << value.pBinds << '\n'; 2303 s << '}'; 2304 return s; 2305} 2306 2307std::ostream& operator<< (std::ostream& s, const VkImageSubresource& value) 2308{ 2309 s << "VkImageSubresource = {\n"; 2310 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 2311 s << "\tmipLevel = " << value.mipLevel << '\n'; 2312 s << "\tarrayLayer = " << value.arrayLayer << '\n'; 2313 s << '}'; 2314 return s; 2315} 2316 2317std::ostream& operator<< (std::ostream& s, const VkOffset3D& value) 2318{ 2319 s << "VkOffset3D = {\n"; 2320 s << "\tx = " << value.x << '\n'; 2321 s << "\ty = " << value.y << '\n'; 2322 s << "\tz = " << value.z << '\n'; 2323 s << '}'; 2324 return s; 2325} 2326 2327std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBind& value) 2328{ 2329 s << "VkSparseImageMemoryBind = {\n"; 2330 s << "\tsubresource = " << value.subresource << '\n'; 2331 s << "\toffset = " << value.offset << '\n'; 2332 s << "\textent = " << value.extent << '\n'; 2333 s << "\tmemory = " << value.memory << '\n'; 2334 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 2335 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n'; 2336 s << '}'; 2337 return s; 2338} 2339 2340std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBindInfo& value) 2341{ 2342 s << "VkSparseImageMemoryBindInfo = {\n"; 2343 s << "\timage = " << value.image << '\n'; 2344 s << "\tbindCount = " << value.bindCount << '\n'; 2345 s << "\tpBinds = " << value.pBinds << '\n'; 2346 s << '}'; 2347 return s; 2348} 2349 2350std::ostream& operator<< (std::ostream& s, const VkBindSparseInfo& value) 2351{ 2352 s << "VkBindSparseInfo = {\n"; 2353 s << "\tsType = " << value.sType << '\n'; 2354 s << "\tpNext = " << value.pNext << '\n'; 2355 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 2356 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 2357 s << "\tbufferBindCount = " << value.bufferBindCount << '\n'; 2358 s << "\tpBufferBinds = " << value.pBufferBinds << '\n'; 2359 s << "\timageOpaqueBindCount = " << value.imageOpaqueBindCount << '\n'; 2360 s << "\tpImageOpaqueBinds = " << value.pImageOpaqueBinds << '\n'; 2361 s << "\timageBindCount = " << value.imageBindCount << '\n'; 2362 s << "\tpImageBinds = " << value.pImageBinds << '\n'; 2363 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n'; 2364 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n'; 2365 s << '}'; 2366 return s; 2367} 2368 2369std::ostream& operator<< (std::ostream& s, const VkFenceCreateInfo& value) 2370{ 2371 s << "VkFenceCreateInfo = {\n"; 2372 s << "\tsType = " << value.sType << '\n'; 2373 s << "\tpNext = " << value.pNext << '\n'; 2374 s << "\tflags = " << getFenceCreateFlagsStr(value.flags) << '\n'; 2375 s << '}'; 2376 return s; 2377} 2378 2379std::ostream& operator<< (std::ostream& s, const VkSemaphoreCreateInfo& value) 2380{ 2381 s << "VkSemaphoreCreateInfo = {\n"; 2382 s << "\tsType = " << value.sType << '\n'; 2383 s << "\tpNext = " << value.pNext << '\n'; 2384 s << "\tflags = " << getSemaphoreCreateFlagsStr(value.flags) << '\n'; 2385 s << '}'; 2386 return s; 2387} 2388 2389std::ostream& operator<< (std::ostream& s, const VkEventCreateInfo& value) 2390{ 2391 s << "VkEventCreateInfo = {\n"; 2392 s << "\tsType = " << value.sType << '\n'; 2393 s << "\tpNext = " << value.pNext << '\n'; 2394 s << "\tflags = " << getEventCreateFlagsStr(value.flags) << '\n'; 2395 s << '}'; 2396 return s; 2397} 2398 2399std::ostream& operator<< (std::ostream& s, const VkQueryPoolCreateInfo& value) 2400{ 2401 s << "VkQueryPoolCreateInfo = {\n"; 2402 s << "\tsType = " << value.sType << '\n'; 2403 s << "\tpNext = " << value.pNext << '\n'; 2404 s << "\tflags = " << getQueryPoolCreateFlagsStr(value.flags) << '\n'; 2405 s << "\tqueryType = " << value.queryType << '\n'; 2406 s << "\tqueryCount = " << value.queryCount << '\n'; 2407 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n'; 2408 s << '}'; 2409 return s; 2410} 2411 2412std::ostream& operator<< (std::ostream& s, const VkBufferCreateInfo& value) 2413{ 2414 s << "VkBufferCreateInfo = {\n"; 2415 s << "\tsType = " << value.sType << '\n'; 2416 s << "\tpNext = " << value.pNext << '\n'; 2417 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n'; 2418 s << "\tsize = " << value.size << '\n'; 2419 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n'; 2420 s << "\tsharingMode = " << value.sharingMode << '\n'; 2421 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 2422 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 2423 s << '}'; 2424 return s; 2425} 2426 2427std::ostream& operator<< (std::ostream& s, const VkBufferViewCreateInfo& value) 2428{ 2429 s << "VkBufferViewCreateInfo = {\n"; 2430 s << "\tsType = " << value.sType << '\n'; 2431 s << "\tpNext = " << value.pNext << '\n'; 2432 s << "\tflags = " << getBufferViewCreateFlagsStr(value.flags) << '\n'; 2433 s << "\tbuffer = " << value.buffer << '\n'; 2434 s << "\tformat = " << value.format << '\n'; 2435 s << "\toffset = " << value.offset << '\n'; 2436 s << "\trange = " << value.range << '\n'; 2437 s << '}'; 2438 return s; 2439} 2440 2441std::ostream& operator<< (std::ostream& s, const VkImageCreateInfo& value) 2442{ 2443 s << "VkImageCreateInfo = {\n"; 2444 s << "\tsType = " << value.sType << '\n'; 2445 s << "\tpNext = " << value.pNext << '\n'; 2446 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n'; 2447 s << "\timageType = " << value.imageType << '\n'; 2448 s << "\tformat = " << value.format << '\n'; 2449 s << "\textent = " << value.extent << '\n'; 2450 s << "\tmipLevels = " << value.mipLevels << '\n'; 2451 s << "\tarrayLayers = " << value.arrayLayers << '\n'; 2452 s << "\tsamples = " << value.samples << '\n'; 2453 s << "\ttiling = " << value.tiling << '\n'; 2454 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 2455 s << "\tsharingMode = " << value.sharingMode << '\n'; 2456 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 2457 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 2458 s << "\tinitialLayout = " << value.initialLayout << '\n'; 2459 s << '}'; 2460 return s; 2461} 2462 2463std::ostream& operator<< (std::ostream& s, const VkSubresourceLayout& value) 2464{ 2465 s << "VkSubresourceLayout = {\n"; 2466 s << "\toffset = " << value.offset << '\n'; 2467 s << "\tsize = " << value.size << '\n'; 2468 s << "\trowPitch = " << value.rowPitch << '\n'; 2469 s << "\tarrayPitch = " << value.arrayPitch << '\n'; 2470 s << "\tdepthPitch = " << value.depthPitch << '\n'; 2471 s << '}'; 2472 return s; 2473} 2474 2475std::ostream& operator<< (std::ostream& s, const VkComponentMapping& value) 2476{ 2477 s << "VkComponentMapping = {\n"; 2478 s << "\tr = " << value.r << '\n'; 2479 s << "\tg = " << value.g << '\n'; 2480 s << "\tb = " << value.b << '\n'; 2481 s << "\ta = " << value.a << '\n'; 2482 s << '}'; 2483 return s; 2484} 2485 2486std::ostream& operator<< (std::ostream& s, const VkImageSubresourceRange& value) 2487{ 2488 s << "VkImageSubresourceRange = {\n"; 2489 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 2490 s << "\tbaseMipLevel = " << value.baseMipLevel << '\n'; 2491 s << "\tlevelCount = " << value.levelCount << '\n'; 2492 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 2493 s << "\tlayerCount = " << value.layerCount << '\n'; 2494 s << '}'; 2495 return s; 2496} 2497 2498std::ostream& operator<< (std::ostream& s, const VkImageViewCreateInfo& value) 2499{ 2500 s << "VkImageViewCreateInfo = {\n"; 2501 s << "\tsType = " << value.sType << '\n'; 2502 s << "\tpNext = " << value.pNext << '\n'; 2503 s << "\tflags = " << getImageViewCreateFlagsStr(value.flags) << '\n'; 2504 s << "\timage = " << value.image << '\n'; 2505 s << "\tviewType = " << value.viewType << '\n'; 2506 s << "\tformat = " << value.format << '\n'; 2507 s << "\tcomponents = " << value.components << '\n'; 2508 s << "\tsubresourceRange = " << value.subresourceRange << '\n'; 2509 s << '}'; 2510 return s; 2511} 2512 2513std::ostream& operator<< (std::ostream& s, const VkShaderModuleCreateInfo& value) 2514{ 2515 s << "VkShaderModuleCreateInfo = {\n"; 2516 s << "\tsType = " << value.sType << '\n'; 2517 s << "\tpNext = " << value.pNext << '\n'; 2518 s << "\tflags = " << getShaderModuleCreateFlagsStr(value.flags) << '\n'; 2519 s << "\tcodeSize = " << value.codeSize << '\n'; 2520 s << "\tpCode = " << value.pCode << '\n'; 2521 s << '}'; 2522 return s; 2523} 2524 2525std::ostream& operator<< (std::ostream& s, const VkPipelineCacheCreateInfo& value) 2526{ 2527 s << "VkPipelineCacheCreateInfo = {\n"; 2528 s << "\tsType = " << value.sType << '\n'; 2529 s << "\tpNext = " << value.pNext << '\n'; 2530 s << "\tflags = " << getPipelineCacheCreateFlagsStr(value.flags) << '\n'; 2531 s << "\tinitialDataSize = " << value.initialDataSize << '\n'; 2532 s << "\tpInitialData = " << value.pInitialData << '\n'; 2533 s << '}'; 2534 return s; 2535} 2536 2537std::ostream& operator<< (std::ostream& s, const VkSpecializationMapEntry& value) 2538{ 2539 s << "VkSpecializationMapEntry = {\n"; 2540 s << "\tconstantID = " << value.constantID << '\n'; 2541 s << "\toffset = " << value.offset << '\n'; 2542 s << "\tsize = " << value.size << '\n'; 2543 s << '}'; 2544 return s; 2545} 2546 2547std::ostream& operator<< (std::ostream& s, const VkSpecializationInfo& value) 2548{ 2549 s << "VkSpecializationInfo = {\n"; 2550 s << "\tmapEntryCount = " << value.mapEntryCount << '\n'; 2551 s << "\tpMapEntries = " << value.pMapEntries << '\n'; 2552 s << "\tdataSize = " << value.dataSize << '\n'; 2553 s << "\tpData = " << value.pData << '\n'; 2554 s << '}'; 2555 return s; 2556} 2557 2558std::ostream& operator<< (std::ostream& s, const VkPipelineShaderStageCreateInfo& value) 2559{ 2560 s << "VkPipelineShaderStageCreateInfo = {\n"; 2561 s << "\tsType = " << value.sType << '\n'; 2562 s << "\tpNext = " << value.pNext << '\n'; 2563 s << "\tflags = " << getPipelineShaderStageCreateFlagsStr(value.flags) << '\n'; 2564 s << "\tstage = " << value.stage << '\n'; 2565 s << "\tmodule = " << value.module << '\n'; 2566 s << "\tpName = " << getCharPtrStr(value.pName) << '\n'; 2567 s << "\tpSpecializationInfo = " << value.pSpecializationInfo << '\n'; 2568 s << '}'; 2569 return s; 2570} 2571 2572std::ostream& operator<< (std::ostream& s, const VkVertexInputBindingDescription& value) 2573{ 2574 s << "VkVertexInputBindingDescription = {\n"; 2575 s << "\tbinding = " << value.binding << '\n'; 2576 s << "\tstride = " << value.stride << '\n'; 2577 s << "\tinputRate = " << value.inputRate << '\n'; 2578 s << '}'; 2579 return s; 2580} 2581 2582std::ostream& operator<< (std::ostream& s, const VkVertexInputAttributeDescription& value) 2583{ 2584 s << "VkVertexInputAttributeDescription = {\n"; 2585 s << "\tlocation = " << value.location << '\n'; 2586 s << "\tbinding = " << value.binding << '\n'; 2587 s << "\tformat = " << value.format << '\n'; 2588 s << "\toffset = " << value.offset << '\n'; 2589 s << '}'; 2590 return s; 2591} 2592 2593std::ostream& operator<< (std::ostream& s, const VkPipelineVertexInputStateCreateInfo& value) 2594{ 2595 s << "VkPipelineVertexInputStateCreateInfo = {\n"; 2596 s << "\tsType = " << value.sType << '\n'; 2597 s << "\tpNext = " << value.pNext << '\n'; 2598 s << "\tflags = " << getPipelineVertexInputStateCreateFlagsStr(value.flags) << '\n'; 2599 s << "\tvertexBindingDescriptionCount = " << value.vertexBindingDescriptionCount << '\n'; 2600 s << "\tpVertexBindingDescriptions = " << value.pVertexBindingDescriptions << '\n'; 2601 s << "\tvertexAttributeDescriptionCount = " << value.vertexAttributeDescriptionCount << '\n'; 2602 s << "\tpVertexAttributeDescriptions = " << value.pVertexAttributeDescriptions << '\n'; 2603 s << '}'; 2604 return s; 2605} 2606 2607std::ostream& operator<< (std::ostream& s, const VkPipelineInputAssemblyStateCreateInfo& value) 2608{ 2609 s << "VkPipelineInputAssemblyStateCreateInfo = {\n"; 2610 s << "\tsType = " << value.sType << '\n'; 2611 s << "\tpNext = " << value.pNext << '\n'; 2612 s << "\tflags = " << getPipelineInputAssemblyStateCreateFlagsStr(value.flags) << '\n'; 2613 s << "\ttopology = " << value.topology << '\n'; 2614 s << "\tprimitiveRestartEnable = " << value.primitiveRestartEnable << '\n'; 2615 s << '}'; 2616 return s; 2617} 2618 2619std::ostream& operator<< (std::ostream& s, const VkPipelineTessellationStateCreateInfo& value) 2620{ 2621 s << "VkPipelineTessellationStateCreateInfo = {\n"; 2622 s << "\tsType = " << value.sType << '\n'; 2623 s << "\tpNext = " << value.pNext << '\n'; 2624 s << "\tflags = " << getPipelineTessellationStateCreateFlagsStr(value.flags) << '\n'; 2625 s << "\tpatchControlPoints = " << value.patchControlPoints << '\n'; 2626 s << '}'; 2627 return s; 2628} 2629 2630std::ostream& operator<< (std::ostream& s, const VkViewport& value) 2631{ 2632 s << "VkViewport = {\n"; 2633 s << "\tx = " << value.x << '\n'; 2634 s << "\ty = " << value.y << '\n'; 2635 s << "\twidth = " << value.width << '\n'; 2636 s << "\theight = " << value.height << '\n'; 2637 s << "\tminDepth = " << value.minDepth << '\n'; 2638 s << "\tmaxDepth = " << value.maxDepth << '\n'; 2639 s << '}'; 2640 return s; 2641} 2642 2643std::ostream& operator<< (std::ostream& s, const VkOffset2D& value) 2644{ 2645 s << "VkOffset2D = {\n"; 2646 s << "\tx = " << value.x << '\n'; 2647 s << "\ty = " << value.y << '\n'; 2648 s << '}'; 2649 return s; 2650} 2651 2652std::ostream& operator<< (std::ostream& s, const VkExtent2D& value) 2653{ 2654 s << "VkExtent2D = {\n"; 2655 s << "\twidth = " << value.width << '\n'; 2656 s << "\theight = " << value.height << '\n'; 2657 s << '}'; 2658 return s; 2659} 2660 2661std::ostream& operator<< (std::ostream& s, const VkRect2D& value) 2662{ 2663 s << "VkRect2D = {\n"; 2664 s << "\toffset = " << value.offset << '\n'; 2665 s << "\textent = " << value.extent << '\n'; 2666 s << '}'; 2667 return s; 2668} 2669 2670std::ostream& operator<< (std::ostream& s, const VkPipelineViewportStateCreateInfo& value) 2671{ 2672 s << "VkPipelineViewportStateCreateInfo = {\n"; 2673 s << "\tsType = " << value.sType << '\n'; 2674 s << "\tpNext = " << value.pNext << '\n'; 2675 s << "\tflags = " << getPipelineViewportStateCreateFlagsStr(value.flags) << '\n'; 2676 s << "\tviewportCount = " << value.viewportCount << '\n'; 2677 s << "\tpViewports = " << value.pViewports << '\n'; 2678 s << "\tscissorCount = " << value.scissorCount << '\n'; 2679 s << "\tpScissors = " << value.pScissors << '\n'; 2680 s << '}'; 2681 return s; 2682} 2683 2684std::ostream& operator<< (std::ostream& s, const VkPipelineRasterizationStateCreateInfo& value) 2685{ 2686 s << "VkPipelineRasterizationStateCreateInfo = {\n"; 2687 s << "\tsType = " << value.sType << '\n'; 2688 s << "\tpNext = " << value.pNext << '\n'; 2689 s << "\tflags = " << getPipelineRasterizationStateCreateFlagsStr(value.flags) << '\n'; 2690 s << "\tdepthClampEnable = " << value.depthClampEnable << '\n'; 2691 s << "\trasterizerDiscardEnable = " << value.rasterizerDiscardEnable << '\n'; 2692 s << "\tpolygonMode = " << value.polygonMode << '\n'; 2693 s << "\tcullMode = " << getCullModeFlagsStr(value.cullMode) << '\n'; 2694 s << "\tfrontFace = " << value.frontFace << '\n'; 2695 s << "\tdepthBiasEnable = " << value.depthBiasEnable << '\n'; 2696 s << "\tdepthBiasConstantFactor = " << value.depthBiasConstantFactor << '\n'; 2697 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n'; 2698 s << "\tdepthBiasSlopeFactor = " << value.depthBiasSlopeFactor << '\n'; 2699 s << "\tlineWidth = " << value.lineWidth << '\n'; 2700 s << '}'; 2701 return s; 2702} 2703 2704std::ostream& operator<< (std::ostream& s, const VkPipelineMultisampleStateCreateInfo& value) 2705{ 2706 s << "VkPipelineMultisampleStateCreateInfo = {\n"; 2707 s << "\tsType = " << value.sType << '\n'; 2708 s << "\tpNext = " << value.pNext << '\n'; 2709 s << "\tflags = " << getPipelineMultisampleStateCreateFlagsStr(value.flags) << '\n'; 2710 s << "\trasterizationSamples = " << value.rasterizationSamples << '\n'; 2711 s << "\tsampleShadingEnable = " << value.sampleShadingEnable << '\n'; 2712 s << "\tminSampleShading = " << value.minSampleShading << '\n'; 2713 s << "\tpSampleMask = " << value.pSampleMask << '\n'; 2714 s << "\talphaToCoverageEnable = " << value.alphaToCoverageEnable << '\n'; 2715 s << "\talphaToOneEnable = " << value.alphaToOneEnable << '\n'; 2716 s << '}'; 2717 return s; 2718} 2719 2720std::ostream& operator<< (std::ostream& s, const VkStencilOpState& value) 2721{ 2722 s << "VkStencilOpState = {\n"; 2723 s << "\tfailOp = " << value.failOp << '\n'; 2724 s << "\tpassOp = " << value.passOp << '\n'; 2725 s << "\tdepthFailOp = " << value.depthFailOp << '\n'; 2726 s << "\tcompareOp = " << value.compareOp << '\n'; 2727 s << "\tcompareMask = " << value.compareMask << '\n'; 2728 s << "\twriteMask = " << value.writeMask << '\n'; 2729 s << "\treference = " << value.reference << '\n'; 2730 s << '}'; 2731 return s; 2732} 2733 2734std::ostream& operator<< (std::ostream& s, const VkPipelineDepthStencilStateCreateInfo& value) 2735{ 2736 s << "VkPipelineDepthStencilStateCreateInfo = {\n"; 2737 s << "\tsType = " << value.sType << '\n'; 2738 s << "\tpNext = " << value.pNext << '\n'; 2739 s << "\tflags = " << getPipelineDepthStencilStateCreateFlagsStr(value.flags) << '\n'; 2740 s << "\tdepthTestEnable = " << value.depthTestEnable << '\n'; 2741 s << "\tdepthWriteEnable = " << value.depthWriteEnable << '\n'; 2742 s << "\tdepthCompareOp = " << value.depthCompareOp << '\n'; 2743 s << "\tdepthBoundsTestEnable = " << value.depthBoundsTestEnable << '\n'; 2744 s << "\tstencilTestEnable = " << value.stencilTestEnable << '\n'; 2745 s << "\tfront = " << value.front << '\n'; 2746 s << "\tback = " << value.back << '\n'; 2747 s << "\tminDepthBounds = " << value.minDepthBounds << '\n'; 2748 s << "\tmaxDepthBounds = " << value.maxDepthBounds << '\n'; 2749 s << '}'; 2750 return s; 2751} 2752 2753std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendAttachmentState& value) 2754{ 2755 s << "VkPipelineColorBlendAttachmentState = {\n"; 2756 s << "\tblendEnable = " << value.blendEnable << '\n'; 2757 s << "\tsrcColorBlendFactor = " << value.srcColorBlendFactor << '\n'; 2758 s << "\tdstColorBlendFactor = " << value.dstColorBlendFactor << '\n'; 2759 s << "\tcolorBlendOp = " << value.colorBlendOp << '\n'; 2760 s << "\tsrcAlphaBlendFactor = " << value.srcAlphaBlendFactor << '\n'; 2761 s << "\tdstAlphaBlendFactor = " << value.dstAlphaBlendFactor << '\n'; 2762 s << "\talphaBlendOp = " << value.alphaBlendOp << '\n'; 2763 s << "\tcolorWriteMask = " << getColorComponentFlagsStr(value.colorWriteMask) << '\n'; 2764 s << '}'; 2765 return s; 2766} 2767 2768std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendStateCreateInfo& value) 2769{ 2770 s << "VkPipelineColorBlendStateCreateInfo = {\n"; 2771 s << "\tsType = " << value.sType << '\n'; 2772 s << "\tpNext = " << value.pNext << '\n'; 2773 s << "\tflags = " << getPipelineColorBlendStateCreateFlagsStr(value.flags) << '\n'; 2774 s << "\tlogicOpEnable = " << value.logicOpEnable << '\n'; 2775 s << "\tlogicOp = " << value.logicOp << '\n'; 2776 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 2777 s << "\tpAttachments = " << value.pAttachments << '\n'; 2778 s << "\tblendConstants = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.blendConstants), DE_ARRAY_END(value.blendConstants)) << '\n'; 2779 s << '}'; 2780 return s; 2781} 2782 2783std::ostream& operator<< (std::ostream& s, const VkPipelineDynamicStateCreateInfo& value) 2784{ 2785 s << "VkPipelineDynamicStateCreateInfo = {\n"; 2786 s << "\tsType = " << value.sType << '\n'; 2787 s << "\tpNext = " << value.pNext << '\n'; 2788 s << "\tflags = " << getPipelineDynamicStateCreateFlagsStr(value.flags) << '\n'; 2789 s << "\tdynamicStateCount = " << value.dynamicStateCount << '\n'; 2790 s << "\tpDynamicStates = " << value.pDynamicStates << '\n'; 2791 s << '}'; 2792 return s; 2793} 2794 2795std::ostream& operator<< (std::ostream& s, const VkGraphicsPipelineCreateInfo& value) 2796{ 2797 s << "VkGraphicsPipelineCreateInfo = {\n"; 2798 s << "\tsType = " << value.sType << '\n'; 2799 s << "\tpNext = " << value.pNext << '\n'; 2800 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n'; 2801 s << "\tstageCount = " << value.stageCount << '\n'; 2802 s << "\tpStages = " << value.pStages << '\n'; 2803 s << "\tpVertexInputState = " << value.pVertexInputState << '\n'; 2804 s << "\tpInputAssemblyState = " << value.pInputAssemblyState << '\n'; 2805 s << "\tpTessellationState = " << value.pTessellationState << '\n'; 2806 s << "\tpViewportState = " << value.pViewportState << '\n'; 2807 s << "\tpRasterizationState = " << value.pRasterizationState << '\n'; 2808 s << "\tpMultisampleState = " << value.pMultisampleState << '\n'; 2809 s << "\tpDepthStencilState = " << value.pDepthStencilState << '\n'; 2810 s << "\tpColorBlendState = " << value.pColorBlendState << '\n'; 2811 s << "\tpDynamicState = " << value.pDynamicState << '\n'; 2812 s << "\tlayout = " << value.layout << '\n'; 2813 s << "\trenderPass = " << value.renderPass << '\n'; 2814 s << "\tsubpass = " << value.subpass << '\n'; 2815 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n'; 2816 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n'; 2817 s << '}'; 2818 return s; 2819} 2820 2821std::ostream& operator<< (std::ostream& s, const VkComputePipelineCreateInfo& value) 2822{ 2823 s << "VkComputePipelineCreateInfo = {\n"; 2824 s << "\tsType = " << value.sType << '\n'; 2825 s << "\tpNext = " << value.pNext << '\n'; 2826 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n'; 2827 s << "\tstage = " << value.stage << '\n'; 2828 s << "\tlayout = " << value.layout << '\n'; 2829 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n'; 2830 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n'; 2831 s << '}'; 2832 return s; 2833} 2834 2835std::ostream& operator<< (std::ostream& s, const VkPushConstantRange& value) 2836{ 2837 s << "VkPushConstantRange = {\n"; 2838 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n'; 2839 s << "\toffset = " << value.offset << '\n'; 2840 s << "\tsize = " << value.size << '\n'; 2841 s << '}'; 2842 return s; 2843} 2844 2845std::ostream& operator<< (std::ostream& s, const VkPipelineLayoutCreateInfo& value) 2846{ 2847 s << "VkPipelineLayoutCreateInfo = {\n"; 2848 s << "\tsType = " << value.sType << '\n'; 2849 s << "\tpNext = " << value.pNext << '\n'; 2850 s << "\tflags = " << getPipelineLayoutCreateFlagsStr(value.flags) << '\n'; 2851 s << "\tsetLayoutCount = " << value.setLayoutCount << '\n'; 2852 s << "\tpSetLayouts = " << value.pSetLayouts << '\n'; 2853 s << "\tpushConstantRangeCount = " << value.pushConstantRangeCount << '\n'; 2854 s << "\tpPushConstantRanges = " << value.pPushConstantRanges << '\n'; 2855 s << '}'; 2856 return s; 2857} 2858 2859std::ostream& operator<< (std::ostream& s, const VkSamplerCreateInfo& value) 2860{ 2861 s << "VkSamplerCreateInfo = {\n"; 2862 s << "\tsType = " << value.sType << '\n'; 2863 s << "\tpNext = " << value.pNext << '\n'; 2864 s << "\tflags = " << getSamplerCreateFlagsStr(value.flags) << '\n'; 2865 s << "\tmagFilter = " << value.magFilter << '\n'; 2866 s << "\tminFilter = " << value.minFilter << '\n'; 2867 s << "\tmipmapMode = " << value.mipmapMode << '\n'; 2868 s << "\taddressModeU = " << value.addressModeU << '\n'; 2869 s << "\taddressModeV = " << value.addressModeV << '\n'; 2870 s << "\taddressModeW = " << value.addressModeW << '\n'; 2871 s << "\tmipLodBias = " << value.mipLodBias << '\n'; 2872 s << "\tanisotropyEnable = " << value.anisotropyEnable << '\n'; 2873 s << "\tmaxAnisotropy = " << value.maxAnisotropy << '\n'; 2874 s << "\tcompareEnable = " << value.compareEnable << '\n'; 2875 s << "\tcompareOp = " << value.compareOp << '\n'; 2876 s << "\tminLod = " << value.minLod << '\n'; 2877 s << "\tmaxLod = " << value.maxLod << '\n'; 2878 s << "\tborderColor = " << value.borderColor << '\n'; 2879 s << "\tunnormalizedCoordinates = " << value.unnormalizedCoordinates << '\n'; 2880 s << '}'; 2881 return s; 2882} 2883 2884std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutBinding& value) 2885{ 2886 s << "VkDescriptorSetLayoutBinding = {\n"; 2887 s << "\tbinding = " << value.binding << '\n'; 2888 s << "\tdescriptorType = " << value.descriptorType << '\n'; 2889 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 2890 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n'; 2891 s << "\tpImmutableSamplers = " << value.pImmutableSamplers << '\n'; 2892 s << '}'; 2893 return s; 2894} 2895 2896std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutCreateInfo& value) 2897{ 2898 s << "VkDescriptorSetLayoutCreateInfo = {\n"; 2899 s << "\tsType = " << value.sType << '\n'; 2900 s << "\tpNext = " << value.pNext << '\n'; 2901 s << "\tflags = " << getDescriptorSetLayoutCreateFlagsStr(value.flags) << '\n'; 2902 s << "\tbindingCount = " << value.bindingCount << '\n'; 2903 s << "\tpBindings = " << value.pBindings << '\n'; 2904 s << '}'; 2905 return s; 2906} 2907 2908std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolSize& value) 2909{ 2910 s << "VkDescriptorPoolSize = {\n"; 2911 s << "\ttype = " << value.type << '\n'; 2912 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 2913 s << '}'; 2914 return s; 2915} 2916 2917std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolCreateInfo& value) 2918{ 2919 s << "VkDescriptorPoolCreateInfo = {\n"; 2920 s << "\tsType = " << value.sType << '\n'; 2921 s << "\tpNext = " << value.pNext << '\n'; 2922 s << "\tflags = " << getDescriptorPoolCreateFlagsStr(value.flags) << '\n'; 2923 s << "\tmaxSets = " << value.maxSets << '\n'; 2924 s << "\tpoolSizeCount = " << value.poolSizeCount << '\n'; 2925 s << "\tpPoolSizes = " << value.pPoolSizes << '\n'; 2926 s << '}'; 2927 return s; 2928} 2929 2930std::ostream& operator<< (std::ostream& s, const VkDescriptorSetAllocateInfo& value) 2931{ 2932 s << "VkDescriptorSetAllocateInfo = {\n"; 2933 s << "\tsType = " << value.sType << '\n'; 2934 s << "\tpNext = " << value.pNext << '\n'; 2935 s << "\tdescriptorPool = " << value.descriptorPool << '\n'; 2936 s << "\tdescriptorSetCount = " << value.descriptorSetCount << '\n'; 2937 s << "\tpSetLayouts = " << value.pSetLayouts << '\n'; 2938 s << '}'; 2939 return s; 2940} 2941 2942std::ostream& operator<< (std::ostream& s, const VkDescriptorImageInfo& value) 2943{ 2944 s << "VkDescriptorImageInfo = {\n"; 2945 s << "\tsampler = " << value.sampler << '\n'; 2946 s << "\timageView = " << value.imageView << '\n'; 2947 s << "\timageLayout = " << value.imageLayout << '\n'; 2948 s << '}'; 2949 return s; 2950} 2951 2952std::ostream& operator<< (std::ostream& s, const VkDescriptorBufferInfo& value) 2953{ 2954 s << "VkDescriptorBufferInfo = {\n"; 2955 s << "\tbuffer = " << value.buffer << '\n'; 2956 s << "\toffset = " << value.offset << '\n'; 2957 s << "\trange = " << value.range << '\n'; 2958 s << '}'; 2959 return s; 2960} 2961 2962std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSet& value) 2963{ 2964 s << "VkWriteDescriptorSet = {\n"; 2965 s << "\tsType = " << value.sType << '\n'; 2966 s << "\tpNext = " << value.pNext << '\n'; 2967 s << "\tdstSet = " << value.dstSet << '\n'; 2968 s << "\tdstBinding = " << value.dstBinding << '\n'; 2969 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 2970 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 2971 s << "\tdescriptorType = " << value.descriptorType << '\n'; 2972 s << "\tpImageInfo = " << value.pImageInfo << '\n'; 2973 s << "\tpBufferInfo = " << value.pBufferInfo << '\n'; 2974 s << "\tpTexelBufferView = " << value.pTexelBufferView << '\n'; 2975 s << '}'; 2976 return s; 2977} 2978 2979std::ostream& operator<< (std::ostream& s, const VkCopyDescriptorSet& value) 2980{ 2981 s << "VkCopyDescriptorSet = {\n"; 2982 s << "\tsType = " << value.sType << '\n'; 2983 s << "\tpNext = " << value.pNext << '\n'; 2984 s << "\tsrcSet = " << value.srcSet << '\n'; 2985 s << "\tsrcBinding = " << value.srcBinding << '\n'; 2986 s << "\tsrcArrayElement = " << value.srcArrayElement << '\n'; 2987 s << "\tdstSet = " << value.dstSet << '\n'; 2988 s << "\tdstBinding = " << value.dstBinding << '\n'; 2989 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 2990 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 2991 s << '}'; 2992 return s; 2993} 2994 2995std::ostream& operator<< (std::ostream& s, const VkFramebufferCreateInfo& value) 2996{ 2997 s << "VkFramebufferCreateInfo = {\n"; 2998 s << "\tsType = " << value.sType << '\n'; 2999 s << "\tpNext = " << value.pNext << '\n'; 3000 s << "\tflags = " << getFramebufferCreateFlagsStr(value.flags) << '\n'; 3001 s << "\trenderPass = " << value.renderPass << '\n'; 3002 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 3003 s << "\tpAttachments = " << value.pAttachments << '\n'; 3004 s << "\twidth = " << value.width << '\n'; 3005 s << "\theight = " << value.height << '\n'; 3006 s << "\tlayers = " << value.layers << '\n'; 3007 s << '}'; 3008 return s; 3009} 3010 3011std::ostream& operator<< (std::ostream& s, const VkAttachmentDescription& value) 3012{ 3013 s << "VkAttachmentDescription = {\n"; 3014 s << "\tflags = " << getAttachmentDescriptionFlagsStr(value.flags) << '\n'; 3015 s << "\tformat = " << value.format << '\n'; 3016 s << "\tsamples = " << value.samples << '\n'; 3017 s << "\tloadOp = " << value.loadOp << '\n'; 3018 s << "\tstoreOp = " << value.storeOp << '\n'; 3019 s << "\tstencilLoadOp = " << value.stencilLoadOp << '\n'; 3020 s << "\tstencilStoreOp = " << value.stencilStoreOp << '\n'; 3021 s << "\tinitialLayout = " << value.initialLayout << '\n'; 3022 s << "\tfinalLayout = " << value.finalLayout << '\n'; 3023 s << '}'; 3024 return s; 3025} 3026 3027std::ostream& operator<< (std::ostream& s, const VkAttachmentReference& value) 3028{ 3029 s << "VkAttachmentReference = {\n"; 3030 s << "\tattachment = " << value.attachment << '\n'; 3031 s << "\tlayout = " << value.layout << '\n'; 3032 s << '}'; 3033 return s; 3034} 3035 3036std::ostream& operator<< (std::ostream& s, const VkSubpassDescription& value) 3037{ 3038 s << "VkSubpassDescription = {\n"; 3039 s << "\tflags = " << getSubpassDescriptionFlagsStr(value.flags) << '\n'; 3040 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 3041 s << "\tinputAttachmentCount = " << value.inputAttachmentCount << '\n'; 3042 s << "\tpInputAttachments = " << value.pInputAttachments << '\n'; 3043 s << "\tcolorAttachmentCount = " << value.colorAttachmentCount << '\n'; 3044 s << "\tpColorAttachments = " << value.pColorAttachments << '\n'; 3045 s << "\tpResolveAttachments = " << value.pResolveAttachments << '\n'; 3046 s << "\tpDepthStencilAttachment = " << value.pDepthStencilAttachment << '\n'; 3047 s << "\tpreserveAttachmentCount = " << value.preserveAttachmentCount << '\n'; 3048 s << "\tpPreserveAttachments = " << value.pPreserveAttachments << '\n'; 3049 s << '}'; 3050 return s; 3051} 3052 3053std::ostream& operator<< (std::ostream& s, const VkSubpassDependency& value) 3054{ 3055 s << "VkSubpassDependency = {\n"; 3056 s << "\tsrcSubpass = " << value.srcSubpass << '\n'; 3057 s << "\tdstSubpass = " << value.dstSubpass << '\n'; 3058 s << "\tsrcStageMask = " << getPipelineStageFlagsStr(value.srcStageMask) << '\n'; 3059 s << "\tdstStageMask = " << getPipelineStageFlagsStr(value.dstStageMask) << '\n'; 3060 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3061 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3062 s << "\tdependencyFlags = " << getDependencyFlagsStr(value.dependencyFlags) << '\n'; 3063 s << '}'; 3064 return s; 3065} 3066 3067std::ostream& operator<< (std::ostream& s, const VkRenderPassCreateInfo& value) 3068{ 3069 s << "VkRenderPassCreateInfo = {\n"; 3070 s << "\tsType = " << value.sType << '\n'; 3071 s << "\tpNext = " << value.pNext << '\n'; 3072 s << "\tflags = " << getRenderPassCreateFlagsStr(value.flags) << '\n'; 3073 s << "\tattachmentCount = " << value.attachmentCount << '\n'; 3074 s << "\tpAttachments = " << value.pAttachments << '\n'; 3075 s << "\tsubpassCount = " << value.subpassCount << '\n'; 3076 s << "\tpSubpasses = " << value.pSubpasses << '\n'; 3077 s << "\tdependencyCount = " << value.dependencyCount << '\n'; 3078 s << "\tpDependencies = " << value.pDependencies << '\n'; 3079 s << '}'; 3080 return s; 3081} 3082 3083std::ostream& operator<< (std::ostream& s, const VkCommandPoolCreateInfo& value) 3084{ 3085 s << "VkCommandPoolCreateInfo = {\n"; 3086 s << "\tsType = " << value.sType << '\n'; 3087 s << "\tpNext = " << value.pNext << '\n'; 3088 s << "\tflags = " << getCommandPoolCreateFlagsStr(value.flags) << '\n'; 3089 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n'; 3090 s << '}'; 3091 return s; 3092} 3093 3094std::ostream& operator<< (std::ostream& s, const VkCommandBufferAllocateInfo& value) 3095{ 3096 s << "VkCommandBufferAllocateInfo = {\n"; 3097 s << "\tsType = " << value.sType << '\n'; 3098 s << "\tpNext = " << value.pNext << '\n'; 3099 s << "\tcommandPool = " << value.commandPool << '\n'; 3100 s << "\tlevel = " << value.level << '\n'; 3101 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n'; 3102 s << '}'; 3103 return s; 3104} 3105 3106std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceInfo& value) 3107{ 3108 s << "VkCommandBufferInheritanceInfo = {\n"; 3109 s << "\tsType = " << value.sType << '\n'; 3110 s << "\tpNext = " << value.pNext << '\n'; 3111 s << "\trenderPass = " << value.renderPass << '\n'; 3112 s << "\tsubpass = " << value.subpass << '\n'; 3113 s << "\tframebuffer = " << value.framebuffer << '\n'; 3114 s << "\tocclusionQueryEnable = " << value.occlusionQueryEnable << '\n'; 3115 s << "\tqueryFlags = " << getQueryControlFlagsStr(value.queryFlags) << '\n'; 3116 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n'; 3117 s << '}'; 3118 return s; 3119} 3120 3121std::ostream& operator<< (std::ostream& s, const VkCommandBufferBeginInfo& value) 3122{ 3123 s << "VkCommandBufferBeginInfo = {\n"; 3124 s << "\tsType = " << value.sType << '\n'; 3125 s << "\tpNext = " << value.pNext << '\n'; 3126 s << "\tflags = " << getCommandBufferUsageFlagsStr(value.flags) << '\n'; 3127 s << "\tpInheritanceInfo = " << value.pInheritanceInfo << '\n'; 3128 s << '}'; 3129 return s; 3130} 3131 3132std::ostream& operator<< (std::ostream& s, const VkBufferCopy& value) 3133{ 3134 s << "VkBufferCopy = {\n"; 3135 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3136 s << "\tdstOffset = " << value.dstOffset << '\n'; 3137 s << "\tsize = " << value.size << '\n'; 3138 s << '}'; 3139 return s; 3140} 3141 3142std::ostream& operator<< (std::ostream& s, const VkImageSubresourceLayers& value) 3143{ 3144 s << "VkImageSubresourceLayers = {\n"; 3145 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3146 s << "\tmipLevel = " << value.mipLevel << '\n'; 3147 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 3148 s << "\tlayerCount = " << value.layerCount << '\n'; 3149 s << '}'; 3150 return s; 3151} 3152 3153std::ostream& operator<< (std::ostream& s, const VkImageCopy& value) 3154{ 3155 s << "VkImageCopy = {\n"; 3156 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3157 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3158 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3159 s << "\tdstOffset = " << value.dstOffset << '\n'; 3160 s << "\textent = " << value.extent << '\n'; 3161 s << '}'; 3162 return s; 3163} 3164 3165std::ostream& operator<< (std::ostream& s, const VkImageBlit& value) 3166{ 3167 s << "VkImageBlit = {\n"; 3168 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3169 s << "\tsrcOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.srcOffsets), DE_ARRAY_END(value.srcOffsets)) << '\n'; 3170 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3171 s << "\tdstOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.dstOffsets), DE_ARRAY_END(value.dstOffsets)) << '\n'; 3172 s << '}'; 3173 return s; 3174} 3175 3176std::ostream& operator<< (std::ostream& s, const VkBufferImageCopy& value) 3177{ 3178 s << "VkBufferImageCopy = {\n"; 3179 s << "\tbufferOffset = " << value.bufferOffset << '\n'; 3180 s << "\tbufferRowLength = " << value.bufferRowLength << '\n'; 3181 s << "\tbufferImageHeight = " << value.bufferImageHeight << '\n'; 3182 s << "\timageSubresource = " << value.imageSubresource << '\n'; 3183 s << "\timageOffset = " << value.imageOffset << '\n'; 3184 s << "\timageExtent = " << value.imageExtent << '\n'; 3185 s << '}'; 3186 return s; 3187} 3188 3189std::ostream& operator<< (std::ostream& s, const VkClearColorValue& value) 3190{ 3191 s << "VkClearColorValue = {\n"; 3192 s << "\tfloat32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.float32), DE_ARRAY_END(value.float32)) << '\n'; 3193 s << "\tint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.int32), DE_ARRAY_END(value.int32)) << '\n'; 3194 s << "\tuint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.uint32), DE_ARRAY_END(value.uint32)) << '\n'; 3195 s << '}'; 3196 return s; 3197} 3198 3199std::ostream& operator<< (std::ostream& s, const VkClearDepthStencilValue& value) 3200{ 3201 s << "VkClearDepthStencilValue = {\n"; 3202 s << "\tdepth = " << value.depth << '\n'; 3203 s << "\tstencil = " << value.stencil << '\n'; 3204 s << '}'; 3205 return s; 3206} 3207 3208std::ostream& operator<< (std::ostream& s, const VkClearValue& value) 3209{ 3210 s << "VkClearValue = {\n"; 3211 s << "\tcolor = " << value.color << '\n'; 3212 s << "\tdepthStencil = " << value.depthStencil << '\n'; 3213 s << '}'; 3214 return s; 3215} 3216 3217std::ostream& operator<< (std::ostream& s, const VkClearAttachment& value) 3218{ 3219 s << "VkClearAttachment = {\n"; 3220 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3221 s << "\tcolorAttachment = " << value.colorAttachment << '\n'; 3222 s << "\tclearValue = " << value.clearValue << '\n'; 3223 s << '}'; 3224 return s; 3225} 3226 3227std::ostream& operator<< (std::ostream& s, const VkClearRect& value) 3228{ 3229 s << "VkClearRect = {\n"; 3230 s << "\trect = " << value.rect << '\n'; 3231 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n'; 3232 s << "\tlayerCount = " << value.layerCount << '\n'; 3233 s << '}'; 3234 return s; 3235} 3236 3237std::ostream& operator<< (std::ostream& s, const VkImageResolve& value) 3238{ 3239 s << "VkImageResolve = {\n"; 3240 s << "\tsrcSubresource = " << value.srcSubresource << '\n'; 3241 s << "\tsrcOffset = " << value.srcOffset << '\n'; 3242 s << "\tdstSubresource = " << value.dstSubresource << '\n'; 3243 s << "\tdstOffset = " << value.dstOffset << '\n'; 3244 s << "\textent = " << value.extent << '\n'; 3245 s << '}'; 3246 return s; 3247} 3248 3249std::ostream& operator<< (std::ostream& s, const VkMemoryBarrier& value) 3250{ 3251 s << "VkMemoryBarrier = {\n"; 3252 s << "\tsType = " << value.sType << '\n'; 3253 s << "\tpNext = " << value.pNext << '\n'; 3254 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3255 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3256 s << '}'; 3257 return s; 3258} 3259 3260std::ostream& operator<< (std::ostream& s, const VkBufferMemoryBarrier& value) 3261{ 3262 s << "VkBufferMemoryBarrier = {\n"; 3263 s << "\tsType = " << value.sType << '\n'; 3264 s << "\tpNext = " << value.pNext << '\n'; 3265 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3266 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3267 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n'; 3268 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n'; 3269 s << "\tbuffer = " << value.buffer << '\n'; 3270 s << "\toffset = " << value.offset << '\n'; 3271 s << "\tsize = " << value.size << '\n'; 3272 s << '}'; 3273 return s; 3274} 3275 3276std::ostream& operator<< (std::ostream& s, const VkImageMemoryBarrier& value) 3277{ 3278 s << "VkImageMemoryBarrier = {\n"; 3279 s << "\tsType = " << value.sType << '\n'; 3280 s << "\tpNext = " << value.pNext << '\n'; 3281 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n'; 3282 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n'; 3283 s << "\toldLayout = " << value.oldLayout << '\n'; 3284 s << "\tnewLayout = " << value.newLayout << '\n'; 3285 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n'; 3286 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n'; 3287 s << "\timage = " << value.image << '\n'; 3288 s << "\tsubresourceRange = " << value.subresourceRange << '\n'; 3289 s << '}'; 3290 return s; 3291} 3292 3293std::ostream& operator<< (std::ostream& s, const VkRenderPassBeginInfo& value) 3294{ 3295 s << "VkRenderPassBeginInfo = {\n"; 3296 s << "\tsType = " << value.sType << '\n'; 3297 s << "\tpNext = " << value.pNext << '\n'; 3298 s << "\trenderPass = " << value.renderPass << '\n'; 3299 s << "\tframebuffer = " << value.framebuffer << '\n'; 3300 s << "\trenderArea = " << value.renderArea << '\n'; 3301 s << "\tclearValueCount = " << value.clearValueCount << '\n'; 3302 s << "\tpClearValues = " << value.pClearValues << '\n'; 3303 s << '}'; 3304 return s; 3305} 3306 3307std::ostream& operator<< (std::ostream& s, const VkDispatchIndirectCommand& value) 3308{ 3309 s << "VkDispatchIndirectCommand = {\n"; 3310 s << "\tx = " << value.x << '\n'; 3311 s << "\ty = " << value.y << '\n'; 3312 s << "\tz = " << value.z << '\n'; 3313 s << '}'; 3314 return s; 3315} 3316 3317std::ostream& operator<< (std::ostream& s, const VkDrawIndexedIndirectCommand& value) 3318{ 3319 s << "VkDrawIndexedIndirectCommand = {\n"; 3320 s << "\tindexCount = " << value.indexCount << '\n'; 3321 s << "\tinstanceCount = " << value.instanceCount << '\n'; 3322 s << "\tfirstIndex = " << value.firstIndex << '\n'; 3323 s << "\tvertexOffset = " << value.vertexOffset << '\n'; 3324 s << "\tfirstInstance = " << value.firstInstance << '\n'; 3325 s << '}'; 3326 return s; 3327} 3328 3329std::ostream& operator<< (std::ostream& s, const VkDrawIndirectCommand& value) 3330{ 3331 s << "VkDrawIndirectCommand = {\n"; 3332 s << "\tvertexCount = " << value.vertexCount << '\n'; 3333 s << "\tinstanceCount = " << value.instanceCount << '\n'; 3334 s << "\tfirstVertex = " << value.firstVertex << '\n'; 3335 s << "\tfirstInstance = " << value.firstInstance << '\n'; 3336 s << '}'; 3337 return s; 3338} 3339 3340std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesKHR& value) 3341{ 3342 s << "VkSurfaceCapabilitiesKHR = {\n"; 3343 s << "\tminImageCount = " << value.minImageCount << '\n'; 3344 s << "\tmaxImageCount = " << value.maxImageCount << '\n'; 3345 s << "\tcurrentExtent = " << value.currentExtent << '\n'; 3346 s << "\tminImageExtent = " << value.minImageExtent << '\n'; 3347 s << "\tmaxImageExtent = " << value.maxImageExtent << '\n'; 3348 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n'; 3349 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n'; 3350 s << "\tcurrentTransform = " << value.currentTransform << '\n'; 3351 s << "\tsupportedCompositeAlpha = " << getCompositeAlphaFlagsKHRStr(value.supportedCompositeAlpha) << '\n'; 3352 s << "\tsupportedUsageFlags = " << getImageUsageFlagsStr(value.supportedUsageFlags) << '\n'; 3353 s << '}'; 3354 return s; 3355} 3356 3357std::ostream& operator<< (std::ostream& s, const VkSurfaceFormatKHR& value) 3358{ 3359 s << "VkSurfaceFormatKHR = {\n"; 3360 s << "\tformat = " << value.format << '\n'; 3361 s << "\tcolorSpace = " << value.colorSpace << '\n'; 3362 s << '}'; 3363 return s; 3364} 3365 3366std::ostream& operator<< (std::ostream& s, const VkSwapchainCreateInfoKHR& value) 3367{ 3368 s << "VkSwapchainCreateInfoKHR = {\n"; 3369 s << "\tsType = " << value.sType << '\n'; 3370 s << "\tpNext = " << value.pNext << '\n'; 3371 s << "\tflags = " << getSwapchainCreateFlagsKHRStr(value.flags) << '\n'; 3372 s << "\tsurface = " << value.surface << '\n'; 3373 s << "\tminImageCount = " << value.minImageCount << '\n'; 3374 s << "\timageFormat = " << value.imageFormat << '\n'; 3375 s << "\timageColorSpace = " << value.imageColorSpace << '\n'; 3376 s << "\timageExtent = " << value.imageExtent << '\n'; 3377 s << "\timageArrayLayers = " << value.imageArrayLayers << '\n'; 3378 s << "\timageUsage = " << getImageUsageFlagsStr(value.imageUsage) << '\n'; 3379 s << "\timageSharingMode = " << value.imageSharingMode << '\n'; 3380 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n'; 3381 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n'; 3382 s << "\tpreTransform = " << value.preTransform << '\n'; 3383 s << "\tcompositeAlpha = " << value.compositeAlpha << '\n'; 3384 s << "\tpresentMode = " << value.presentMode << '\n'; 3385 s << "\tclipped = " << value.clipped << '\n'; 3386 s << "\toldSwapchain = " << value.oldSwapchain << '\n'; 3387 s << '}'; 3388 return s; 3389} 3390 3391std::ostream& operator<< (std::ostream& s, const VkPresentInfoKHR& value) 3392{ 3393 s << "VkPresentInfoKHR = {\n"; 3394 s << "\tsType = " << value.sType << '\n'; 3395 s << "\tpNext = " << value.pNext << '\n'; 3396 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n'; 3397 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n'; 3398 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 3399 s << "\tpSwapchains = " << value.pSwapchains << '\n'; 3400 s << "\tpImageIndices = " << value.pImageIndices << '\n'; 3401 s << "\tpResults = " << value.pResults << '\n'; 3402 s << '}'; 3403 return s; 3404} 3405 3406std::ostream& operator<< (std::ostream& s, const VkDisplayPropertiesKHR& value) 3407{ 3408 s << "VkDisplayPropertiesKHR = {\n"; 3409 s << "\tdisplay = " << value.display << '\n'; 3410 s << "\tdisplayName = " << getCharPtrStr(value.displayName) << '\n'; 3411 s << "\tphysicalDimensions = " << value.physicalDimensions << '\n'; 3412 s << "\tphysicalResolution = " << value.physicalResolution << '\n'; 3413 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n'; 3414 s << "\tplaneReorderPossible = " << value.planeReorderPossible << '\n'; 3415 s << "\tpersistentContent = " << value.persistentContent << '\n'; 3416 s << '}'; 3417 return s; 3418} 3419 3420std::ostream& operator<< (std::ostream& s, const VkDisplayModeParametersKHR& value) 3421{ 3422 s << "VkDisplayModeParametersKHR = {\n"; 3423 s << "\tvisibleRegion = " << value.visibleRegion << '\n'; 3424 s << "\trefreshRate = " << value.refreshRate << '\n'; 3425 s << '}'; 3426 return s; 3427} 3428 3429std::ostream& operator<< (std::ostream& s, const VkDisplayModePropertiesKHR& value) 3430{ 3431 s << "VkDisplayModePropertiesKHR = {\n"; 3432 s << "\tdisplayMode = " << value.displayMode << '\n'; 3433 s << "\tparameters = " << value.parameters << '\n'; 3434 s << '}'; 3435 return s; 3436} 3437 3438std::ostream& operator<< (std::ostream& s, const VkDisplayModeCreateInfoKHR& value) 3439{ 3440 s << "VkDisplayModeCreateInfoKHR = {\n"; 3441 s << "\tsType = " << value.sType << '\n'; 3442 s << "\tpNext = " << value.pNext << '\n'; 3443 s << "\tflags = " << getDisplayModeCreateFlagsKHRStr(value.flags) << '\n'; 3444 s << "\tparameters = " << value.parameters << '\n'; 3445 s << '}'; 3446 return s; 3447} 3448 3449std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneCapabilitiesKHR& value) 3450{ 3451 s << "VkDisplayPlaneCapabilitiesKHR = {\n"; 3452 s << "\tsupportedAlpha = " << getDisplayPlaneAlphaFlagsKHRStr(value.supportedAlpha) << '\n'; 3453 s << "\tminSrcPosition = " << value.minSrcPosition << '\n'; 3454 s << "\tmaxSrcPosition = " << value.maxSrcPosition << '\n'; 3455 s << "\tminSrcExtent = " << value.minSrcExtent << '\n'; 3456 s << "\tmaxSrcExtent = " << value.maxSrcExtent << '\n'; 3457 s << "\tminDstPosition = " << value.minDstPosition << '\n'; 3458 s << "\tmaxDstPosition = " << value.maxDstPosition << '\n'; 3459 s << "\tminDstExtent = " << value.minDstExtent << '\n'; 3460 s << "\tmaxDstExtent = " << value.maxDstExtent << '\n'; 3461 s << '}'; 3462 return s; 3463} 3464 3465std::ostream& operator<< (std::ostream& s, const VkDisplayPlanePropertiesKHR& value) 3466{ 3467 s << "VkDisplayPlanePropertiesKHR = {\n"; 3468 s << "\tcurrentDisplay = " << value.currentDisplay << '\n'; 3469 s << "\tcurrentStackIndex = " << value.currentStackIndex << '\n'; 3470 s << '}'; 3471 return s; 3472} 3473 3474std::ostream& operator<< (std::ostream& s, const VkDisplaySurfaceCreateInfoKHR& value) 3475{ 3476 s << "VkDisplaySurfaceCreateInfoKHR = {\n"; 3477 s << "\tsType = " << value.sType << '\n'; 3478 s << "\tpNext = " << value.pNext << '\n'; 3479 s << "\tflags = " << getDisplaySurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3480 s << "\tdisplayMode = " << value.displayMode << '\n'; 3481 s << "\tplaneIndex = " << value.planeIndex << '\n'; 3482 s << "\tplaneStackIndex = " << value.planeStackIndex << '\n'; 3483 s << "\ttransform = " << value.transform << '\n'; 3484 s << "\tglobalAlpha = " << value.globalAlpha << '\n'; 3485 s << "\talphaMode = " << value.alphaMode << '\n'; 3486 s << "\timageExtent = " << value.imageExtent << '\n'; 3487 s << '}'; 3488 return s; 3489} 3490 3491std::ostream& operator<< (std::ostream& s, const VkDisplayPresentInfoKHR& value) 3492{ 3493 s << "VkDisplayPresentInfoKHR = {\n"; 3494 s << "\tsType = " << value.sType << '\n'; 3495 s << "\tpNext = " << value.pNext << '\n'; 3496 s << "\tsrcRect = " << value.srcRect << '\n'; 3497 s << "\tdstRect = " << value.dstRect << '\n'; 3498 s << "\tpersistent = " << value.persistent << '\n'; 3499 s << '}'; 3500 return s; 3501} 3502 3503std::ostream& operator<< (std::ostream& s, const VkXlibSurfaceCreateInfoKHR& value) 3504{ 3505 s << "VkXlibSurfaceCreateInfoKHR = {\n"; 3506 s << "\tsType = " << value.sType << '\n'; 3507 s << "\tpNext = " << value.pNext << '\n'; 3508 s << "\tflags = " << getXlibSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3509 s << "\tdpy = " << value.dpy << '\n'; 3510 s << "\twindow = " << value.window << '\n'; 3511 s << '}'; 3512 return s; 3513} 3514 3515std::ostream& operator<< (std::ostream& s, const VkXcbSurfaceCreateInfoKHR& value) 3516{ 3517 s << "VkXcbSurfaceCreateInfoKHR = {\n"; 3518 s << "\tsType = " << value.sType << '\n'; 3519 s << "\tpNext = " << value.pNext << '\n'; 3520 s << "\tflags = " << getXcbSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3521 s << "\tconnection = " << value.connection << '\n'; 3522 s << "\twindow = " << value.window << '\n'; 3523 s << '}'; 3524 return s; 3525} 3526 3527std::ostream& operator<< (std::ostream& s, const VkWaylandSurfaceCreateInfoKHR& value) 3528{ 3529 s << "VkWaylandSurfaceCreateInfoKHR = {\n"; 3530 s << "\tsType = " << value.sType << '\n'; 3531 s << "\tpNext = " << value.pNext << '\n'; 3532 s << "\tflags = " << getWaylandSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3533 s << "\tdisplay = " << value.display << '\n'; 3534 s << "\tsurface = " << value.surface << '\n'; 3535 s << '}'; 3536 return s; 3537} 3538 3539std::ostream& operator<< (std::ostream& s, const VkMirSurfaceCreateInfoKHR& value) 3540{ 3541 s << "VkMirSurfaceCreateInfoKHR = {\n"; 3542 s << "\tsType = " << value.sType << '\n'; 3543 s << "\tpNext = " << value.pNext << '\n'; 3544 s << "\tflags = " << getMirSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3545 s << "\tconnection = " << value.connection << '\n'; 3546 s << "\tmirSurface = " << value.mirSurface << '\n'; 3547 s << '}'; 3548 return s; 3549} 3550 3551std::ostream& operator<< (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value) 3552{ 3553 s << "VkAndroidSurfaceCreateInfoKHR = {\n"; 3554 s << "\tsType = " << value.sType << '\n'; 3555 s << "\tpNext = " << value.pNext << '\n'; 3556 s << "\tflags = " << getAndroidSurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3557 s << "\twindow = " << value.window << '\n'; 3558 s << '}'; 3559 return s; 3560} 3561 3562std::ostream& operator<< (std::ostream& s, const VkWin32SurfaceCreateInfoKHR& value) 3563{ 3564 s << "VkWin32SurfaceCreateInfoKHR = {\n"; 3565 s << "\tsType = " << value.sType << '\n'; 3566 s << "\tpNext = " << value.pNext << '\n'; 3567 s << "\tflags = " << getWin32SurfaceCreateFlagsKHRStr(value.flags) << '\n'; 3568 s << "\thinstance = " << value.hinstance << '\n'; 3569 s << "\thwnd = " << value.hwnd << '\n'; 3570 s << '}'; 3571 return s; 3572} 3573 3574std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures2KHR& value) 3575{ 3576 s << "VkPhysicalDeviceFeatures2KHR = {\n"; 3577 s << "\tsType = " << value.sType << '\n'; 3578 s << "\tpNext = " << value.pNext << '\n'; 3579 s << "\tfeatures = " << value.features << '\n'; 3580 s << '}'; 3581 return s; 3582} 3583 3584std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties2KHR& value) 3585{ 3586 s << "VkPhysicalDeviceProperties2KHR = {\n"; 3587 s << "\tsType = " << value.sType << '\n'; 3588 s << "\tpNext = " << value.pNext << '\n'; 3589 s << "\tproperties = " << value.properties << '\n'; 3590 s << '}'; 3591 return s; 3592} 3593 3594std::ostream& operator<< (std::ostream& s, const VkFormatProperties2KHR& value) 3595{ 3596 s << "VkFormatProperties2KHR = {\n"; 3597 s << "\tsType = " << value.sType << '\n'; 3598 s << "\tpNext = " << value.pNext << '\n'; 3599 s << "\tformatProperties = " << value.formatProperties << '\n'; 3600 s << '}'; 3601 return s; 3602} 3603 3604std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties2KHR& value) 3605{ 3606 s << "VkImageFormatProperties2KHR = {\n"; 3607 s << "\tsType = " << value.sType << '\n'; 3608 s << "\tpNext = " << value.pNext << '\n'; 3609 s << "\timageFormatProperties = " << value.imageFormatProperties << '\n'; 3610 s << '}'; 3611 return s; 3612} 3613 3614std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageFormatInfo2KHR& value) 3615{ 3616 s << "VkPhysicalDeviceImageFormatInfo2KHR = {\n"; 3617 s << "\tsType = " << value.sType << '\n'; 3618 s << "\tpNext = " << value.pNext << '\n'; 3619 s << "\tformat = " << value.format << '\n'; 3620 s << "\ttype = " << value.type << '\n'; 3621 s << "\ttiling = " << value.tiling << '\n'; 3622 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 3623 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n'; 3624 s << '}'; 3625 return s; 3626} 3627 3628std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties2KHR& value) 3629{ 3630 s << "VkQueueFamilyProperties2KHR = {\n"; 3631 s << "\tsType = " << value.sType << '\n'; 3632 s << "\tpNext = " << value.pNext << '\n'; 3633 s << "\tqueueFamilyProperties = " << value.queueFamilyProperties << '\n'; 3634 s << '}'; 3635 return s; 3636} 3637 3638std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties2KHR& value) 3639{ 3640 s << "VkPhysicalDeviceMemoryProperties2KHR = {\n"; 3641 s << "\tsType = " << value.sType << '\n'; 3642 s << "\tpNext = " << value.pNext << '\n'; 3643 s << "\tmemoryProperties = " << value.memoryProperties << '\n'; 3644 s << '}'; 3645 return s; 3646} 3647 3648std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties2KHR& value) 3649{ 3650 s << "VkSparseImageFormatProperties2KHR = {\n"; 3651 s << "\tsType = " << value.sType << '\n'; 3652 s << "\tpNext = " << value.pNext << '\n'; 3653 s << "\tproperties = " << value.properties << '\n'; 3654 s << '}'; 3655 return s; 3656} 3657 3658std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseImageFormatInfo2KHR& value) 3659{ 3660 s << "VkPhysicalDeviceSparseImageFormatInfo2KHR = {\n"; 3661 s << "\tsType = " << value.sType << '\n'; 3662 s << "\tpNext = " << value.pNext << '\n'; 3663 s << "\tformat = " << value.format << '\n'; 3664 s << "\ttype = " << value.type << '\n'; 3665 s << "\tsamples = " << value.samples << '\n'; 3666 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 3667 s << "\ttiling = " << value.tiling << '\n'; 3668 s << '}'; 3669 return s; 3670} 3671 3672std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value) 3673{ 3674 s << "VkPhysicalDevicePushDescriptorPropertiesKHR = {\n"; 3675 s << "\tsType = " << value.sType << '\n'; 3676 s << "\tpNext = " << value.pNext << '\n'; 3677 s << "\tmaxPushDescriptors = " << value.maxPushDescriptors << '\n'; 3678 s << '}'; 3679 return s; 3680} 3681 3682std::ostream& operator<< (std::ostream& s, const VkPhysicalDevice16BitStorageFeaturesKHR& value) 3683{ 3684 s << "VkPhysicalDevice16BitStorageFeaturesKHR = {\n"; 3685 s << "\tsType = " << value.sType << '\n'; 3686 s << "\tpNext = " << value.pNext << '\n'; 3687 s << "\tstorageBuffer16BitAccess = " << value.storageBuffer16BitAccess << '\n'; 3688 s << "\tuniformAndStorageBuffer16BitAccess = " << value.uniformAndStorageBuffer16BitAccess << '\n'; 3689 s << "\tstoragePushConstant16 = " << value.storagePushConstant16 << '\n'; 3690 s << "\tstorageInputOutput16 = " << value.storageInputOutput16 << '\n'; 3691 s << '}'; 3692 return s; 3693} 3694 3695std::ostream& operator<< (std::ostream& s, const VkRectLayerKHR& value) 3696{ 3697 s << "VkRectLayerKHR = {\n"; 3698 s << "\toffset = " << value.offset << '\n'; 3699 s << "\textent = " << value.extent << '\n'; 3700 s << "\tlayer = " << value.layer << '\n'; 3701 s << '}'; 3702 return s; 3703} 3704 3705std::ostream& operator<< (std::ostream& s, const VkPresentRegionKHR& value) 3706{ 3707 s << "VkPresentRegionKHR = {\n"; 3708 s << "\trectangleCount = " << value.rectangleCount << '\n'; 3709 s << "\tpRectangles = " << value.pRectangles << '\n'; 3710 s << '}'; 3711 return s; 3712} 3713 3714std::ostream& operator<< (std::ostream& s, const VkPresentRegionsKHR& value) 3715{ 3716 s << "VkPresentRegionsKHR = {\n"; 3717 s << "\tsType = " << value.sType << '\n'; 3718 s << "\tpNext = " << value.pNext << '\n'; 3719 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 3720 s << "\tpRegions = " << value.pRegions << '\n'; 3721 s << '}'; 3722 return s; 3723} 3724 3725std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value) 3726{ 3727 s << "VkDescriptorUpdateTemplateEntryKHR = {\n"; 3728 s << "\tdstBinding = " << value.dstBinding << '\n'; 3729 s << "\tdstArrayElement = " << value.dstArrayElement << '\n'; 3730 s << "\tdescriptorCount = " << value.descriptorCount << '\n'; 3731 s << "\tdescriptorType = " << value.descriptorType << '\n'; 3732 s << "\toffset = " << value.offset << '\n'; 3733 s << "\tstride = " << value.stride << '\n'; 3734 s << '}'; 3735 return s; 3736} 3737 3738std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value) 3739{ 3740 s << "VkDescriptorUpdateTemplateCreateInfoKHR = {\n"; 3741 s << "\tsType = " << value.sType << '\n'; 3742 s << "\tpNext = " << value.pNext << '\n'; 3743 s << "\tflags = " << getDescriptorUpdateTemplateCreateFlagsKHRStr(value.flags) << '\n'; 3744 s << "\tdescriptorUpdateEntryCount = " << value.descriptorUpdateEntryCount << '\n'; 3745 s << "\tpDescriptorUpdateEntries = " << value.pDescriptorUpdateEntries << '\n'; 3746 s << "\ttemplateType = " << value.templateType << '\n'; 3747 s << "\tdescriptorSetLayout = " << value.descriptorSetLayout << '\n'; 3748 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n'; 3749 s << "\tpipelineLayout = " << value.pipelineLayout << '\n'; 3750 s << "\tset = " << value.set << '\n'; 3751 s << '}'; 3752 return s; 3753} 3754 3755std::ostream& operator<< (std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value) 3756{ 3757 s << "VkSharedPresentSurfaceCapabilitiesKHR = {\n"; 3758 s << "\tsType = " << value.sType << '\n'; 3759 s << "\tpNext = " << value.pNext << '\n'; 3760 s << "\tsharedPresentSupportedUsageFlags = " << getImageUsageFlagsStr(value.sharedPresentSupportedUsageFlags) << '\n'; 3761 s << '}'; 3762 return s; 3763} 3764 3765std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePointClippingPropertiesKHR& value) 3766{ 3767 s << "VkPhysicalDevicePointClippingPropertiesKHR = {\n"; 3768 s << "\tsType = " << value.sType << '\n'; 3769 s << "\tpNext = " << value.pNext << '\n'; 3770 s << "\tpointClippingBehavior = " << value.pointClippingBehavior << '\n'; 3771 s << '}'; 3772 return s; 3773} 3774 3775std::ostream& operator<< (std::ostream& s, const VkInputAttachmentAspectReferenceKHR& value) 3776{ 3777 s << "VkInputAttachmentAspectReferenceKHR = {\n"; 3778 s << "\tsubpass = " << value.subpass << '\n'; 3779 s << "\tinputAttachmentIndex = " << value.inputAttachmentIndex << '\n'; 3780 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n'; 3781 s << '}'; 3782 return s; 3783} 3784 3785std::ostream& operator<< (std::ostream& s, const VkRenderPassInputAttachmentAspectCreateInfoKHR& value) 3786{ 3787 s << "VkRenderPassInputAttachmentAspectCreateInfoKHR = {\n"; 3788 s << "\tsType = " << value.sType << '\n'; 3789 s << "\tpNext = " << value.pNext << '\n'; 3790 s << "\taspectReferenceCount = " << value.aspectReferenceCount << '\n'; 3791 s << "\tpAspectReferences = " << value.pAspectReferences << '\n'; 3792 s << '}'; 3793 return s; 3794} 3795 3796std::ostream& operator<< (std::ostream& s, const VkImageViewUsageCreateInfoKHR& value) 3797{ 3798 s << "VkImageViewUsageCreateInfoKHR = {\n"; 3799 s << "\tsType = " << value.sType << '\n'; 3800 s << "\tpNext = " << value.pNext << '\n'; 3801 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n'; 3802 s << '}'; 3803 return s; 3804} 3805 3806std::ostream& operator<< (std::ostream& s, const VkPipelineTessellationDomainOriginStateCreateInfoKHR& value) 3807{ 3808 s << "VkPipelineTessellationDomainOriginStateCreateInfoKHR = {\n"; 3809 s << "\tsType = " << value.sType << '\n'; 3810 s << "\tpNext = " << value.pNext << '\n'; 3811 s << "\tdomainOrigin = " << value.domainOrigin << '\n'; 3812 s << '}'; 3813 return s; 3814} 3815 3816std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value) 3817{ 3818 s << "VkPhysicalDeviceSurfaceInfo2KHR = {\n"; 3819 s << "\tsType = " << value.sType << '\n'; 3820 s << "\tpNext = " << value.pNext << '\n'; 3821 s << "\tsurface = " << value.surface << '\n'; 3822 s << '}'; 3823 return s; 3824} 3825 3826std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2KHR& value) 3827{ 3828 s << "VkSurfaceCapabilities2KHR = {\n"; 3829 s << "\tsType = " << value.sType << '\n'; 3830 s << "\tpNext = " << value.pNext << '\n'; 3831 s << "\tsurfaceCapabilities = " << value.surfaceCapabilities << '\n'; 3832 s << '}'; 3833 return s; 3834} 3835 3836std::ostream& operator<< (std::ostream& s, const VkSurfaceFormat2KHR& value) 3837{ 3838 s << "VkSurfaceFormat2KHR = {\n"; 3839 s << "\tsType = " << value.sType << '\n'; 3840 s << "\tpNext = " << value.pNext << '\n'; 3841 s << "\tsurfaceFormat = " << value.surfaceFormat << '\n'; 3842 s << '}'; 3843 return s; 3844} 3845 3846std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalFenceInfoKHR& value) 3847{ 3848 s << "VkPhysicalDeviceExternalFenceInfoKHR = {\n"; 3849 s << "\tsType = " << value.sType << '\n'; 3850 s << "\tpNext = " << value.pNext << '\n'; 3851 s << "\thandleType = " << value.handleType << '\n'; 3852 s << '}'; 3853 return s; 3854} 3855 3856std::ostream& operator<< (std::ostream& s, const VkExternalFencePropertiesKHR& value) 3857{ 3858 s << "VkExternalFencePropertiesKHR = {\n"; 3859 s << "\tsType = " << value.sType << '\n'; 3860 s << "\tpNext = " << value.pNext << '\n'; 3861 s << "\texportFromImportedHandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n'; 3862 s << "\tcompatibleHandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n'; 3863 s << "\texternalFenceFeatures = " << getExternalFenceFeatureFlagsKHRStr(value.externalFenceFeatures) << '\n'; 3864 s << '}'; 3865 return s; 3866} 3867 3868std::ostream& operator<< (std::ostream& s, const VkExportFenceCreateInfoKHR& value) 3869{ 3870 s << "VkExportFenceCreateInfoKHR = {\n"; 3871 s << "\tsType = " << value.sType << '\n'; 3872 s << "\tpNext = " << value.pNext << '\n'; 3873 s << "\thandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.handleTypes) << '\n'; 3874 s << '}'; 3875 return s; 3876} 3877 3878std::ostream& operator<< (std::ostream& s, const VkImportFenceWin32HandleInfoKHR& value) 3879{ 3880 s << "VkImportFenceWin32HandleInfoKHR = {\n"; 3881 s << "\tsType = " << value.sType << '\n'; 3882 s << "\tpNext = " << value.pNext << '\n'; 3883 s << "\tfence = " << value.fence << '\n'; 3884 s << "\tflags = " << getFenceImportFlagsKHRStr(value.flags) << '\n'; 3885 s << "\thandleType = " << value.handleType << '\n'; 3886 s << "\thandle = " << value.handle << '\n'; 3887 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 3888 s << '}'; 3889 return s; 3890} 3891 3892std::ostream& operator<< (std::ostream& s, const VkExportFenceWin32HandleInfoKHR& value) 3893{ 3894 s << "VkExportFenceWin32HandleInfoKHR = {\n"; 3895 s << "\tsType = " << value.sType << '\n'; 3896 s << "\tpNext = " << value.pNext << '\n'; 3897 s << "\tpAttributes = " << value.pAttributes << '\n'; 3898 s << "\tdwAccess = " << value.dwAccess << '\n'; 3899 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 3900 s << '}'; 3901 return s; 3902} 3903 3904std::ostream& operator<< (std::ostream& s, const VkFenceGetWin32HandleInfoKHR& value) 3905{ 3906 s << "VkFenceGetWin32HandleInfoKHR = {\n"; 3907 s << "\tsType = " << value.sType << '\n'; 3908 s << "\tpNext = " << value.pNext << '\n'; 3909 s << "\tfence = " << value.fence << '\n'; 3910 s << "\thandleType = " << value.handleType << '\n'; 3911 s << '}'; 3912 return s; 3913} 3914 3915std::ostream& operator<< (std::ostream& s, const VkImportFenceFdInfoKHR& value) 3916{ 3917 s << "VkImportFenceFdInfoKHR = {\n"; 3918 s << "\tsType = " << value.sType << '\n'; 3919 s << "\tpNext = " << value.pNext << '\n'; 3920 s << "\tfence = " << value.fence << '\n'; 3921 s << "\tflags = " << getFenceImportFlagsKHRStr(value.flags) << '\n'; 3922 s << "\thandleType = " << value.handleType << '\n'; 3923 s << "\tfd = " << value.fd << '\n'; 3924 s << '}'; 3925 return s; 3926} 3927 3928std::ostream& operator<< (std::ostream& s, const VkFenceGetFdInfoKHR& value) 3929{ 3930 s << "VkFenceGetFdInfoKHR = {\n"; 3931 s << "\tsType = " << value.sType << '\n'; 3932 s << "\tpNext = " << value.pNext << '\n'; 3933 s << "\tfence = " << value.fence << '\n'; 3934 s << "\thandleType = " << value.handleType << '\n'; 3935 s << '}'; 3936 return s; 3937} 3938 3939std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedRequirementsKHR& value) 3940{ 3941 s << "VkMemoryDedicatedRequirementsKHR = {\n"; 3942 s << "\tsType = " << value.sType << '\n'; 3943 s << "\tpNext = " << value.pNext << '\n'; 3944 s << "\tprefersDedicatedAllocation = " << value.prefersDedicatedAllocation << '\n'; 3945 s << "\trequiresDedicatedAllocation = " << value.requiresDedicatedAllocation << '\n'; 3946 s << '}'; 3947 return s; 3948} 3949 3950std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedAllocateInfoKHR& value) 3951{ 3952 s << "VkMemoryDedicatedAllocateInfoKHR = {\n"; 3953 s << "\tsType = " << value.sType << '\n'; 3954 s << "\tpNext = " << value.pNext << '\n'; 3955 s << "\timage = " << value.image << '\n'; 3956 s << "\tbuffer = " << value.buffer << '\n'; 3957 s << '}'; 3958 return s; 3959} 3960 3961std::ostream& operator<< (std::ostream& s, const VkBufferMemoryRequirementsInfo2KHR& value) 3962{ 3963 s << "VkBufferMemoryRequirementsInfo2KHR = {\n"; 3964 s << "\tsType = " << value.sType << '\n'; 3965 s << "\tpNext = " << value.pNext << '\n'; 3966 s << "\tbuffer = " << value.buffer << '\n'; 3967 s << '}'; 3968 return s; 3969} 3970 3971std::ostream& operator<< (std::ostream& s, const VkImageMemoryRequirementsInfo2KHR& value) 3972{ 3973 s << "VkImageMemoryRequirementsInfo2KHR = {\n"; 3974 s << "\tsType = " << value.sType << '\n'; 3975 s << "\tpNext = " << value.pNext << '\n'; 3976 s << "\timage = " << value.image << '\n'; 3977 s << '}'; 3978 return s; 3979} 3980 3981std::ostream& operator<< (std::ostream& s, const VkImageSparseMemoryRequirementsInfo2KHR& value) 3982{ 3983 s << "VkImageSparseMemoryRequirementsInfo2KHR = {\n"; 3984 s << "\tsType = " << value.sType << '\n'; 3985 s << "\tpNext = " << value.pNext << '\n'; 3986 s << "\timage = " << value.image << '\n'; 3987 s << '}'; 3988 return s; 3989} 3990 3991std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements2KHR& value) 3992{ 3993 s << "VkMemoryRequirements2KHR = {\n"; 3994 s << "\tsType = " << value.sType << '\n'; 3995 s << "\tpNext = " << value.pNext << '\n'; 3996 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n'; 3997 s << '}'; 3998 return s; 3999} 4000 4001std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements2KHR& value) 4002{ 4003 s << "VkSparseImageMemoryRequirements2KHR = {\n"; 4004 s << "\tsType = " << value.sType << '\n'; 4005 s << "\tpNext = " << value.pNext << '\n'; 4006 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n'; 4007 s << '}'; 4008 return s; 4009} 4010 4011std::ostream& operator<< (std::ostream& s, const VkImageFormatListCreateInfoKHR& value) 4012{ 4013 s << "VkImageFormatListCreateInfoKHR = {\n"; 4014 s << "\tsType = " << value.sType << '\n'; 4015 s << "\tpNext = " << value.pNext << '\n'; 4016 s << "\tviewFormatCount = " << value.viewFormatCount << '\n'; 4017 s << "\tpViewFormats = " << value.pViewFormats << '\n'; 4018 s << '}'; 4019 return s; 4020} 4021 4022std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionCreateInfoKHR& value) 4023{ 4024 s << "VkSamplerYcbcrConversionCreateInfoKHR = {\n"; 4025 s << "\tsType = " << value.sType << '\n'; 4026 s << "\tpNext = " << value.pNext << '\n'; 4027 s << "\tformat = " << value.format << '\n'; 4028 s << "\tYcbcrModel = " << value.YcbcrModel << '\n'; 4029 s << "\tYcbcrRange = " << value.YcbcrRange << '\n'; 4030 s << "\tcomponents = " << value.components << '\n'; 4031 s << "\txChromaOffset = " << value.xChromaOffset << '\n'; 4032 s << "\tyChromaOffset = " << value.yChromaOffset << '\n'; 4033 s << "\tchromaFilter = " << value.chromaFilter << '\n'; 4034 s << "\tforceExplicitReconstruction = " << value.forceExplicitReconstruction << '\n'; 4035 s << '}'; 4036 return s; 4037} 4038 4039std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionInfoKHR& value) 4040{ 4041 s << "VkSamplerYcbcrConversionInfoKHR = {\n"; 4042 s << "\tsType = " << value.sType << '\n'; 4043 s << "\tpNext = " << value.pNext << '\n'; 4044 s << "\tconversion = " << value.conversion << '\n'; 4045 s << '}'; 4046 return s; 4047} 4048 4049std::ostream& operator<< (std::ostream& s, const VkBindImagePlaneMemoryInfoKHR& value) 4050{ 4051 s << "VkBindImagePlaneMemoryInfoKHR = {\n"; 4052 s << "\tsType = " << value.sType << '\n'; 4053 s << "\tpNext = " << value.pNext << '\n'; 4054 s << "\tplaneAspect = " << value.planeAspect << '\n'; 4055 s << '}'; 4056 return s; 4057} 4058 4059std::ostream& operator<< (std::ostream& s, const VkImagePlaneMemoryRequirementsInfoKHR& value) 4060{ 4061 s << "VkImagePlaneMemoryRequirementsInfoKHR = {\n"; 4062 s << "\tsType = " << value.sType << '\n'; 4063 s << "\tpNext = " << value.pNext << '\n'; 4064 s << "\tplaneAspect = " << value.planeAspect << '\n'; 4065 s << '}'; 4066 return s; 4067} 4068 4069std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR& value) 4070{ 4071 s << "VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR = {\n"; 4072 s << "\tsType = " << value.sType << '\n'; 4073 s << "\tpNext = " << value.pNext << '\n'; 4074 s << "\tsamplerYcbcrConversion = " << value.samplerYcbcrConversion << '\n'; 4075 s << '}'; 4076 return s; 4077} 4078 4079std::ostream& operator<< (std::ostream& s, const VkSamplerYcbcrConversionImageFormatPropertiesKHR& value) 4080{ 4081 s << "VkSamplerYcbcrConversionImageFormatPropertiesKHR = {\n"; 4082 s << "\tsType = " << value.sType << '\n'; 4083 s << "\tpNext = " << value.pNext << '\n'; 4084 s << "\tcombinedImageSamplerDescriptorCount = " << value.combinedImageSamplerDescriptorCount << '\n'; 4085 s << '}'; 4086 return s; 4087} 4088 4089std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value) 4090{ 4091 s << "VkDebugReportCallbackCreateInfoEXT = {\n"; 4092 s << "\tsType = " << value.sType << '\n'; 4093 s << "\tpNext = " << value.pNext << '\n'; 4094 s << "\tflags = " << getDebugReportFlagsEXTStr(value.flags) << '\n'; 4095 s << "\tpfnCallback = " << value.pfnCallback << '\n'; 4096 s << "\tpUserData = " << value.pUserData << '\n'; 4097 s << '}'; 4098 return s; 4099} 4100 4101std::ostream& operator<< (std::ostream& s, const VkRenderPassMultiviewCreateInfoKHX& value) 4102{ 4103 s << "VkRenderPassMultiviewCreateInfoKHX = {\n"; 4104 s << "\tsType = " << value.sType << '\n'; 4105 s << "\tpNext = " << value.pNext << '\n'; 4106 s << "\tsubpassCount = " << value.subpassCount << '\n'; 4107 s << "\tpViewMasks = " << value.pViewMasks << '\n'; 4108 s << "\tdependencyCount = " << value.dependencyCount << '\n'; 4109 s << "\tpViewOffsets = " << value.pViewOffsets << '\n'; 4110 s << "\tcorrelationMaskCount = " << value.correlationMaskCount << '\n'; 4111 s << "\tpCorrelationMasks = " << value.pCorrelationMasks << '\n'; 4112 s << '}'; 4113 return s; 4114} 4115 4116std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewFeaturesKHX& value) 4117{ 4118 s << "VkPhysicalDeviceMultiviewFeaturesKHX = {\n"; 4119 s << "\tsType = " << value.sType << '\n'; 4120 s << "\tpNext = " << value.pNext << '\n'; 4121 s << "\tmultiview = " << value.multiview << '\n'; 4122 s << "\tmultiviewGeometryShader = " << value.multiviewGeometryShader << '\n'; 4123 s << "\tmultiviewTessellationShader = " << value.multiviewTessellationShader << '\n'; 4124 s << '}'; 4125 return s; 4126} 4127 4128std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewPropertiesKHX& value) 4129{ 4130 s << "VkPhysicalDeviceMultiviewPropertiesKHX = {\n"; 4131 s << "\tsType = " << value.sType << '\n'; 4132 s << "\tpNext = " << value.pNext << '\n'; 4133 s << "\tmaxMultiviewViewCount = " << value.maxMultiviewViewCount << '\n'; 4134 s << "\tmaxMultiviewInstanceIndex = " << value.maxMultiviewInstanceIndex << '\n'; 4135 s << '}'; 4136 return s; 4137} 4138 4139std::ostream& operator<< (std::ostream& s, const VkExternalMemoryPropertiesKHR& value) 4140{ 4141 s << "VkExternalMemoryPropertiesKHR = {\n"; 4142 s << "\texternalMemoryFeatures = " << getExternalMemoryFeatureFlagsKHRStr(value.externalMemoryFeatures) << '\n'; 4143 s << "\texportFromImportedHandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n'; 4144 s << "\tcompatibleHandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n'; 4145 s << '}'; 4146 return s; 4147} 4148 4149std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalImageFormatInfoKHR& value) 4150{ 4151 s << "VkPhysicalDeviceExternalImageFormatInfoKHR = {\n"; 4152 s << "\tsType = " << value.sType << '\n'; 4153 s << "\tpNext = " << value.pNext << '\n'; 4154 s << "\thandleType = " << value.handleType << '\n'; 4155 s << '}'; 4156 return s; 4157} 4158 4159std::ostream& operator<< (std::ostream& s, const VkExternalImageFormatPropertiesKHR& value) 4160{ 4161 s << "VkExternalImageFormatPropertiesKHR = {\n"; 4162 s << "\tsType = " << value.sType << '\n'; 4163 s << "\tpNext = " << value.pNext << '\n'; 4164 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n'; 4165 s << '}'; 4166 return s; 4167} 4168 4169std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalBufferInfoKHR& value) 4170{ 4171 s << "VkPhysicalDeviceExternalBufferInfoKHR = {\n"; 4172 s << "\tsType = " << value.sType << '\n'; 4173 s << "\tpNext = " << value.pNext << '\n'; 4174 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n'; 4175 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n'; 4176 s << "\thandleType = " << value.handleType << '\n'; 4177 s << '}'; 4178 return s; 4179} 4180 4181std::ostream& operator<< (std::ostream& s, const VkExternalBufferPropertiesKHR& value) 4182{ 4183 s << "VkExternalBufferPropertiesKHR = {\n"; 4184 s << "\tsType = " << value.sType << '\n'; 4185 s << "\tpNext = " << value.pNext << '\n'; 4186 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n'; 4187 s << '}'; 4188 return s; 4189} 4190 4191std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceIDPropertiesKHR& value) 4192{ 4193 s << "VkPhysicalDeviceIDPropertiesKHR = {\n"; 4194 s << "\tsType = " << value.sType << '\n'; 4195 s << "\tpNext = " << value.pNext << '\n'; 4196 s << "\tdeviceUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceUUID))) << '\n'; 4197 s << "\tdriverUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.driverUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.driverUUID))) << '\n'; 4198 s << "\tdeviceLUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceLUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceLUID))) << '\n'; 4199 s << "\tdeviceNodeMask = " << value.deviceNodeMask << '\n'; 4200 s << "\tdeviceLUIDValid = " << value.deviceLUIDValid << '\n'; 4201 s << '}'; 4202 return s; 4203} 4204 4205std::ostream& operator<< (std::ostream& s, const VkExternalMemoryImageCreateInfoKHR& value) 4206{ 4207 s << "VkExternalMemoryImageCreateInfoKHR = {\n"; 4208 s << "\tsType = " << value.sType << '\n'; 4209 s << "\tpNext = " << value.pNext << '\n'; 4210 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n'; 4211 s << '}'; 4212 return s; 4213} 4214 4215std::ostream& operator<< (std::ostream& s, const VkExternalMemoryBufferCreateInfoKHR& value) 4216{ 4217 s << "VkExternalMemoryBufferCreateInfoKHR = {\n"; 4218 s << "\tsType = " << value.sType << '\n'; 4219 s << "\tpNext = " << value.pNext << '\n'; 4220 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n'; 4221 s << '}'; 4222 return s; 4223} 4224 4225std::ostream& operator<< (std::ostream& s, const VkExportMemoryAllocateInfoKHR& value) 4226{ 4227 s << "VkExportMemoryAllocateInfoKHR = {\n"; 4228 s << "\tsType = " << value.sType << '\n'; 4229 s << "\tpNext = " << value.pNext << '\n'; 4230 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n'; 4231 s << '}'; 4232 return s; 4233} 4234 4235std::ostream& operator<< (std::ostream& s, const VkImportMemoryWin32HandleInfoKHR& value) 4236{ 4237 s << "VkImportMemoryWin32HandleInfoKHR = {\n"; 4238 s << "\tsType = " << value.sType << '\n'; 4239 s << "\tpNext = " << value.pNext << '\n'; 4240 s << "\thandleType = " << value.handleType << '\n'; 4241 s << "\thandle = " << value.handle << '\n'; 4242 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4243 s << '}'; 4244 return s; 4245} 4246 4247std::ostream& operator<< (std::ostream& s, const VkExportMemoryWin32HandleInfoKHR& value) 4248{ 4249 s << "VkExportMemoryWin32HandleInfoKHR = {\n"; 4250 s << "\tsType = " << value.sType << '\n'; 4251 s << "\tpNext = " << value.pNext << '\n'; 4252 s << "\tpAttributes = " << value.pAttributes << '\n'; 4253 s << "\tdwAccess = " << value.dwAccess << '\n'; 4254 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4255 s << '}'; 4256 return s; 4257} 4258 4259std::ostream& operator<< (std::ostream& s, const VkMemoryWin32HandlePropertiesKHR& value) 4260{ 4261 s << "VkMemoryWin32HandlePropertiesKHR = {\n"; 4262 s << "\tsType = " << value.sType << '\n'; 4263 s << "\tpNext = " << value.pNext << '\n'; 4264 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 4265 s << '}'; 4266 return s; 4267} 4268 4269std::ostream& operator<< (std::ostream& s, const VkMemoryGetWin32HandleInfoKHR& value) 4270{ 4271 s << "VkMemoryGetWin32HandleInfoKHR = {\n"; 4272 s << "\tsType = " << value.sType << '\n'; 4273 s << "\tpNext = " << value.pNext << '\n'; 4274 s << "\tmemory = " << value.memory << '\n'; 4275 s << "\thandleType = " << value.handleType << '\n'; 4276 s << '}'; 4277 return s; 4278} 4279 4280std::ostream& operator<< (std::ostream& s, const VkImportMemoryFdInfoKHR& value) 4281{ 4282 s << "VkImportMemoryFdInfoKHR = {\n"; 4283 s << "\tsType = " << value.sType << '\n'; 4284 s << "\tpNext = " << value.pNext << '\n'; 4285 s << "\thandleType = " << value.handleType << '\n'; 4286 s << "\tfd = " << value.fd << '\n'; 4287 s << '}'; 4288 return s; 4289} 4290 4291std::ostream& operator<< (std::ostream& s, const VkMemoryFdPropertiesKHR& value) 4292{ 4293 s << "VkMemoryFdPropertiesKHR = {\n"; 4294 s << "\tsType = " << value.sType << '\n'; 4295 s << "\tpNext = " << value.pNext << '\n'; 4296 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n'; 4297 s << '}'; 4298 return s; 4299} 4300 4301std::ostream& operator<< (std::ostream& s, const VkMemoryGetFdInfoKHR& value) 4302{ 4303 s << "VkMemoryGetFdInfoKHR = {\n"; 4304 s << "\tsType = " << value.sType << '\n'; 4305 s << "\tpNext = " << value.pNext << '\n'; 4306 s << "\tmemory = " << value.memory << '\n'; 4307 s << "\thandleType = " << value.handleType << '\n'; 4308 s << '}'; 4309 return s; 4310} 4311 4312std::ostream& operator<< (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoKHR& value) 4313{ 4314 s << "VkWin32KeyedMutexAcquireReleaseInfoKHR = {\n"; 4315 s << "\tsType = " << value.sType << '\n'; 4316 s << "\tpNext = " << value.pNext << '\n'; 4317 s << "\tacquireCount = " << value.acquireCount << '\n'; 4318 s << "\tpAcquireSyncs = " << value.pAcquireSyncs << '\n'; 4319 s << "\tpAcquireKeys = " << value.pAcquireKeys << '\n'; 4320 s << "\tpAcquireTimeouts = " << value.pAcquireTimeouts << '\n'; 4321 s << "\treleaseCount = " << value.releaseCount << '\n'; 4322 s << "\tpReleaseSyncs = " << value.pReleaseSyncs << '\n'; 4323 s << "\tpReleaseKeys = " << value.pReleaseKeys << '\n'; 4324 s << '}'; 4325 return s; 4326} 4327 4328std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalSemaphoreInfoKHR& value) 4329{ 4330 s << "VkPhysicalDeviceExternalSemaphoreInfoKHR = {\n"; 4331 s << "\tsType = " << value.sType << '\n'; 4332 s << "\tpNext = " << value.pNext << '\n'; 4333 s << "\thandleType = " << value.handleType << '\n'; 4334 s << '}'; 4335 return s; 4336} 4337 4338std::ostream& operator<< (std::ostream& s, const VkExternalSemaphorePropertiesKHR& value) 4339{ 4340 s << "VkExternalSemaphorePropertiesKHR = {\n"; 4341 s << "\tsType = " << value.sType << '\n'; 4342 s << "\tpNext = " << value.pNext << '\n'; 4343 s << "\texportFromImportedHandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n'; 4344 s << "\tcompatibleHandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n'; 4345 s << "\texternalSemaphoreFeatures = " << getExternalSemaphoreFeatureFlagsKHRStr(value.externalSemaphoreFeatures) << '\n'; 4346 s << '}'; 4347 return s; 4348} 4349 4350std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreCreateInfoKHR& value) 4351{ 4352 s << "VkExportSemaphoreCreateInfoKHR = {\n"; 4353 s << "\tsType = " << value.sType << '\n'; 4354 s << "\tpNext = " << value.pNext << '\n'; 4355 s << "\thandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.handleTypes) << '\n'; 4356 s << '}'; 4357 return s; 4358} 4359 4360std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreWin32HandleInfoKHR& value) 4361{ 4362 s << "VkImportSemaphoreWin32HandleInfoKHR = {\n"; 4363 s << "\tsType = " << value.sType << '\n'; 4364 s << "\tpNext = " << value.pNext << '\n'; 4365 s << "\tsemaphore = " << value.semaphore << '\n'; 4366 s << "\tflags = " << getSemaphoreImportFlagsKHRStr(value.flags) << '\n'; 4367 s << "\thandleType = " << value.handleType << '\n'; 4368 s << "\thandle = " << value.handle << '\n'; 4369 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4370 s << '}'; 4371 return s; 4372} 4373 4374std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreWin32HandleInfoKHR& value) 4375{ 4376 s << "VkExportSemaphoreWin32HandleInfoKHR = {\n"; 4377 s << "\tsType = " << value.sType << '\n'; 4378 s << "\tpNext = " << value.pNext << '\n'; 4379 s << "\tpAttributes = " << value.pAttributes << '\n'; 4380 s << "\tdwAccess = " << value.dwAccess << '\n'; 4381 s << "\tname = " << getCharPtrStr(value.name) << '\n'; 4382 s << '}'; 4383 return s; 4384} 4385 4386std::ostream& operator<< (std::ostream& s, const VkD3D12FenceSubmitInfoKHR& value) 4387{ 4388 s << "VkD3D12FenceSubmitInfoKHR = {\n"; 4389 s << "\tsType = " << value.sType << '\n'; 4390 s << "\tpNext = " << value.pNext << '\n'; 4391 s << "\twaitSemaphoreValuesCount = " << value.waitSemaphoreValuesCount << '\n'; 4392 s << "\tpWaitSemaphoreValues = " << value.pWaitSemaphoreValues << '\n'; 4393 s << "\tsignalSemaphoreValuesCount = " << value.signalSemaphoreValuesCount << '\n'; 4394 s << "\tpSignalSemaphoreValues = " << value.pSignalSemaphoreValues << '\n'; 4395 s << '}'; 4396 return s; 4397} 4398 4399std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetWin32HandleInfoKHR& value) 4400{ 4401 s << "VkSemaphoreGetWin32HandleInfoKHR = {\n"; 4402 s << "\tsType = " << value.sType << '\n'; 4403 s << "\tpNext = " << value.pNext << '\n'; 4404 s << "\tsemaphore = " << value.semaphore << '\n'; 4405 s << "\thandleType = " << value.handleType << '\n'; 4406 s << '}'; 4407 return s; 4408} 4409 4410std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreFdInfoKHR& value) 4411{ 4412 s << "VkImportSemaphoreFdInfoKHR = {\n"; 4413 s << "\tsType = " << value.sType << '\n'; 4414 s << "\tpNext = " << value.pNext << '\n'; 4415 s << "\tsemaphore = " << value.semaphore << '\n'; 4416 s << "\tflags = " << getSemaphoreImportFlagsKHRStr(value.flags) << '\n'; 4417 s << "\thandleType = " << value.handleType << '\n'; 4418 s << "\tfd = " << value.fd << '\n'; 4419 s << '}'; 4420 return s; 4421} 4422 4423std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetFdInfoKHR& value) 4424{ 4425 s << "VkSemaphoreGetFdInfoKHR = {\n"; 4426 s << "\tsType = " << value.sType << '\n'; 4427 s << "\tpNext = " << value.pNext << '\n'; 4428 s << "\tsemaphore = " << value.semaphore << '\n'; 4429 s << "\thandleType = " << value.handleType << '\n'; 4430 s << '}'; 4431 return s; 4432} 4433 4434std::ostream& operator<< (std::ostream& s, const VkRefreshCycleDurationGOOGLE& value) 4435{ 4436 s << "VkRefreshCycleDurationGOOGLE = {\n"; 4437 s << "\trefreshDuration = " << value.refreshDuration << '\n'; 4438 s << '}'; 4439 return s; 4440} 4441 4442std::ostream& operator<< (std::ostream& s, const VkPastPresentationTimingGOOGLE& value) 4443{ 4444 s << "VkPastPresentationTimingGOOGLE = {\n"; 4445 s << "\tpresentID = " << value.presentID << '\n'; 4446 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n'; 4447 s << "\tactualPresentTime = " << value.actualPresentTime << '\n'; 4448 s << "\tearliestPresentTime = " << value.earliestPresentTime << '\n'; 4449 s << "\tpresentMargin = " << value.presentMargin << '\n'; 4450 s << '}'; 4451 return s; 4452} 4453 4454std::ostream& operator<< (std::ostream& s, const VkPresentTimeGOOGLE& value) 4455{ 4456 s << "VkPresentTimeGOOGLE = {\n"; 4457 s << "\tpresentID = " << value.presentID << '\n'; 4458 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n'; 4459 s << '}'; 4460 return s; 4461} 4462 4463std::ostream& operator<< (std::ostream& s, const VkPresentTimesInfoGOOGLE& value) 4464{ 4465 s << "VkPresentTimesInfoGOOGLE = {\n"; 4466 s << "\tsType = " << value.sType << '\n'; 4467 s << "\tpNext = " << value.pNext << '\n'; 4468 s << "\tswapchainCount = " << value.swapchainCount << '\n'; 4469 s << "\tpTimes = " << value.pTimes << '\n'; 4470 s << '}'; 4471 return s; 4472} 4473 4474std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVariablePointerFeaturesKHR& value) 4475{ 4476 s << "VkPhysicalDeviceVariablePointerFeaturesKHR = {\n"; 4477 s << "\tsType = " << value.sType << '\n'; 4478 s << "\tpNext = " << value.pNext << '\n'; 4479 s << "\tvariablePointersStorageBuffer = " << value.variablePointersStorageBuffer << '\n'; 4480 s << "\tvariablePointers = " << value.variablePointers << '\n'; 4481 s << '}'; 4482 return s; 4483} 4484 4485std::ostream& operator<< (std::ostream& s, const VkBindBufferMemoryInfoKHR& value) 4486{ 4487 s << "VkBindBufferMemoryInfoKHR = {\n"; 4488 s << "\tsType = " << value.sType << '\n'; 4489 s << "\tpNext = " << value.pNext << '\n'; 4490 s << "\tbuffer = " << value.buffer << '\n'; 4491 s << "\tmemory = " << value.memory << '\n'; 4492 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 4493 s << '}'; 4494 return s; 4495} 4496 4497std::ostream& operator<< (std::ostream& s, const VkBindImageMemoryInfoKHR& value) 4498{ 4499 s << "VkBindImageMemoryInfoKHR = {\n"; 4500 s << "\tsType = " << value.sType << '\n'; 4501 s << "\tpNext = " << value.pNext << '\n'; 4502 s << "\timage = " << value.image << '\n'; 4503 s << "\tmemory = " << value.memory << '\n'; 4504 s << "\tmemoryOffset = " << value.memoryOffset << '\n'; 4505 s << '}'; 4506 return s; 4507} 4508