1 /* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
4 template<> const char* getTypeName<VkInstance> (void) { return "VkInstance"; }
5 template<> const char* getTypeName<VkPhysicalDevice> (void) { return "VkPhysicalDevice"; }
6 template<> const char* getTypeName<VkDevice> (void) { return "VkDevice"; }
7 template<> const char* getTypeName<VkQueue> (void) { return "VkQueue"; }
8 template<> const char* getTypeName<VkSemaphore> (void) { return "VkSemaphore"; }
9 template<> const char* getTypeName<VkCommandBuffer> (void) { return "VkCommandBuffer"; }
10 template<> const char* getTypeName<VkFence> (void) { return "VkFence"; }
11 template<> const char* getTypeName<VkDeviceMemory> (void) { return "VkDeviceMemory"; }
12 template<> const char* getTypeName<VkBuffer> (void) { return "VkBuffer"; }
13 template<> const char* getTypeName<VkImage> (void) { return "VkImage"; }
14 template<> const char* getTypeName<VkEvent> (void) { return "VkEvent"; }
15 template<> const char* getTypeName<VkQueryPool> (void) { return "VkQueryPool"; }
16 template<> const char* getTypeName<VkBufferView> (void) { return "VkBufferView"; }
17 template<> const char* getTypeName<VkImageView> (void) { return "VkImageView"; }
18 template<> const char* getTypeName<VkShaderModule> (void) { return "VkShaderModule"; }
19 template<> const char* getTypeName<VkPipelineCache> (void) { return "VkPipelineCache"; }
20 template<> const char* getTypeName<VkPipelineLayout> (void) { return "VkPipelineLayout"; }
21 template<> const char* getTypeName<VkRenderPass> (void) { return "VkRenderPass"; }
22 template<> const char* getTypeName<VkPipeline> (void) { return "VkPipeline"; }
23 template<> const char* getTypeName<VkDescriptorSetLayout> (void) { return "VkDescriptorSetLayout"; }
24 template<> const char* getTypeName<VkSampler> (void) { return "VkSampler"; }
25 template<> const char* getTypeName<VkDescriptorPool> (void) { return "VkDescriptorPool"; }
26 template<> const char* getTypeName<VkDescriptorSet> (void) { return "VkDescriptorSet"; }
27 template<> const char* getTypeName<VkFramebuffer> (void) { return "VkFramebuffer"; }
28 template<> const char* getTypeName<VkCommandPool> (void) { return "VkCommandPool"; }
29 template<> const char* getTypeName<VkSurfaceKHR> (void) { return "VkSurfaceKHR"; }
30 template<> const char* getTypeName<VkSwapchainKHR> (void) { return "VkSwapchainKHR"; }
31 template<> const char* getTypeName<VkDisplayKHR> (void) { return "VkDisplayKHR"; }
32 template<> const char* getTypeName<VkDisplayModeKHR> (void) { return "VkDisplayModeKHR"; }
33 template<> const char* getTypeName<VkDescriptorUpdateTemplateKHR> (void) { return "VkDescriptorUpdateTemplateKHR"; }
34 template<> const char* getTypeName<VkDebugReportCallbackEXT> (void) { return "VkDebugReportCallbackEXT"; }
38 std::ostream& operator<< (std::ostream& s, XlibDisplayPtr v) { return s << tcu::toHex(v.internal); }
39 std::ostream& operator<< (std::ostream& s, XlibWindow v) { return s << tcu::toHex(v.internal); }
40 std::ostream& operator<< (std::ostream& s, XlibVisualID v) { return s << tcu::toHex(v.internal); }
41 std::ostream& operator<< (std::ostream& s, XcbConnectionPtr v) { return s << tcu::toHex(v.internal); }
42 std::ostream& operator<< (std::ostream& s, XcbWindow v) { return s << tcu::toHex(v.internal); }
43 std::ostream& operator<< (std::ostream& s, XcbVisualid v) { return s << tcu::toHex(v.internal); }
44 std::ostream& operator<< (std::ostream& s, WaylandDisplayPtr v) { return s << tcu::toHex(v.internal); }
45 std::ostream& operator<< (std::ostream& s, WaylandSurfacePtr v) { return s << tcu::toHex(v.internal); }
46 std::ostream& operator<< (std::ostream& s, MirConnectionPtr v) { return s << tcu::toHex(v.internal); }
47 std::ostream& operator<< (std::ostream& s, MirSurfacePtr v) { return s << tcu::toHex(v.internal); }
48 std::ostream& operator<< (std::ostream& s, AndroidNativeWindowPtr v) { return s << tcu::toHex(v.internal); }
49 std::ostream& operator<< (std::ostream& s, Win32InstanceHandle v) { return s << tcu::toHex(v.internal); }
50 std::ostream& operator<< (std::ostream& s, Win32WindowHandle v) { return s << tcu::toHex(v.internal); }
51 std::ostream& operator<< (std::ostream& s, Win32Handle v) { return s << tcu::toHex(v.internal); }
52 std::ostream& operator<< (std::ostream& s, Win32SecurityAttributesPtr v) { return s << tcu::toHex(v.internal); }
55 const char* getPipelineCacheHeaderVersionName (VkPipelineCacheHeaderVersion value)
59 case VK_PIPELINE_CACHE_HEADER_VERSION_ONE: return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
60 default: return DE_NULL;
64 const char* getResultName (VkResult value)
68 case VK_SUCCESS: return "VK_SUCCESS";
69 case VK_NOT_READY: return "VK_NOT_READY";
70 case VK_TIMEOUT: return "VK_TIMEOUT";
71 case VK_EVENT_SET: return "VK_EVENT_SET";
72 case VK_EVENT_RESET: return "VK_EVENT_RESET";
73 case VK_INCOMPLETE: return "VK_INCOMPLETE";
74 case VK_ERROR_OUT_OF_HOST_MEMORY: return "VK_ERROR_OUT_OF_HOST_MEMORY";
75 case VK_ERROR_OUT_OF_DEVICE_MEMORY: return "VK_ERROR_OUT_OF_DEVICE_MEMORY";
76 case VK_ERROR_INITIALIZATION_FAILED: return "VK_ERROR_INITIALIZATION_FAILED";
77 case VK_ERROR_DEVICE_LOST: return "VK_ERROR_DEVICE_LOST";
78 case VK_ERROR_MEMORY_MAP_FAILED: return "VK_ERROR_MEMORY_MAP_FAILED";
79 case VK_ERROR_LAYER_NOT_PRESENT: return "VK_ERROR_LAYER_NOT_PRESENT";
80 case VK_ERROR_EXTENSION_NOT_PRESENT: return "VK_ERROR_EXTENSION_NOT_PRESENT";
81 case VK_ERROR_FEATURE_NOT_PRESENT: return "VK_ERROR_FEATURE_NOT_PRESENT";
82 case VK_ERROR_INCOMPATIBLE_DRIVER: return "VK_ERROR_INCOMPATIBLE_DRIVER";
83 case VK_ERROR_TOO_MANY_OBJECTS: return "VK_ERROR_TOO_MANY_OBJECTS";
84 case VK_ERROR_FORMAT_NOT_SUPPORTED: return "VK_ERROR_FORMAT_NOT_SUPPORTED";
85 case VK_ERROR_FRAGMENTED_POOL: return "VK_ERROR_FRAGMENTED_POOL";
86 case VK_ERROR_SURFACE_LOST_KHR: return "VK_ERROR_SURFACE_LOST_KHR";
87 case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR: return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR";
88 case VK_SUBOPTIMAL_KHR: return "VK_SUBOPTIMAL_KHR";
89 case VK_ERROR_OUT_OF_DATE_KHR: return "VK_ERROR_OUT_OF_DATE_KHR";
90 case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR: return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
91 case VK_ERROR_VALIDATION_FAILED_EXT: return "VK_ERROR_VALIDATION_FAILED_EXT";
92 case VK_ERROR_INVALID_SHADER_NV: return "VK_ERROR_INVALID_SHADER_NV";
93 case VK_ERROR_OUT_OF_POOL_MEMORY_KHR: return "VK_ERROR_OUT_OF_POOL_MEMORY_KHR";
94 case VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR: return "VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR";
95 default: return DE_NULL;
99 const char* getStructureTypeName (VkStructureType value)
103 case VK_STRUCTURE_TYPE_APPLICATION_INFO: return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
104 case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
105 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
106 case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
107 case VK_STRUCTURE_TYPE_SUBMIT_INFO: return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
108 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
109 case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE: return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
110 case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO: return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
111 case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
112 case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
113 case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO: return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
114 case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
115 case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
116 case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
117 case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
118 case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
119 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
120 case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
121 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
122 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
123 case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
124 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
125 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
126 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
127 case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
128 case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
129 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
130 case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
131 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
132 case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
133 case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
134 case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO: return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
135 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
136 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
137 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
138 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
139 case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET: return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
140 case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO: return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
141 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
142 case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
143 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
144 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
145 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO: return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
146 case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO: return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
147 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
148 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
149 case VK_STRUCTURE_TYPE_MEMORY_BARRIER: return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
150 case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
151 case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO: return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
152 case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
153 case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
154 case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
155 case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
156 case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
157 case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
158 case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
159 case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
160 case VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR";
161 case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
162 case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
163 case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
164 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX: return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHX";
165 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHX";
166 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHX";
167 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR";
168 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR";
169 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR";
170 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR";
171 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR";
172 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR";
173 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR";
174 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR";
175 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR";
176 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR";
177 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR";
178 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR";
179 case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR";
180 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR";
181 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR";
182 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR";
183 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR";
184 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
185 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
186 case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
187 case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR";
188 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR";
189 case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR";
190 case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR";
191 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR";
192 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR";
193 case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR";
194 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR";
195 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
196 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
197 case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR";
198 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR";
199 case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR";
200 case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR";
201 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
202 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR";
203 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
204 case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR";
205 case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
206 case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
207 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR";
208 case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR";
209 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR";
210 case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR";
211 case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR";
212 case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR";
213 case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR";
214 case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR: return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR";
215 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
216 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
217 case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR: return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
218 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR";
219 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR: return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR";
220 case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR";
221 case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR";
222 case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR: return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR";
223 case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR: return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR";
224 case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR: return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR";
225 default: return DE_NULL;
229 const char* getSystemAllocationScopeName (VkSystemAllocationScope value)
233 case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND: return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND";
234 case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT: return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT";
235 case VK_SYSTEM_ALLOCATION_SCOPE_CACHE: return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE";
236 case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE: return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE";
237 case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE: return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE";
238 default: return DE_NULL;
242 const char* getInternalAllocationTypeName (VkInternalAllocationType value)
246 case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE: return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE";
247 default: return DE_NULL;
251 const char* getFormatName (VkFormat value)
255 case VK_FORMAT_UNDEFINED: return "VK_FORMAT_UNDEFINED";
256 case VK_FORMAT_R4G4_UNORM_PACK8: return "VK_FORMAT_R4G4_UNORM_PACK8";
257 case VK_FORMAT_R4G4B4A4_UNORM_PACK16: return "VK_FORMAT_R4G4B4A4_UNORM_PACK16";
258 case VK_FORMAT_B4G4R4A4_UNORM_PACK16: return "VK_FORMAT_B4G4R4A4_UNORM_PACK16";
259 case VK_FORMAT_R5G6B5_UNORM_PACK16: return "VK_FORMAT_R5G6B5_UNORM_PACK16";
260 case VK_FORMAT_B5G6R5_UNORM_PACK16: return "VK_FORMAT_B5G6R5_UNORM_PACK16";
261 case VK_FORMAT_R5G5B5A1_UNORM_PACK16: return "VK_FORMAT_R5G5B5A1_UNORM_PACK16";
262 case VK_FORMAT_B5G5R5A1_UNORM_PACK16: return "VK_FORMAT_B5G5R5A1_UNORM_PACK16";
263 case VK_FORMAT_A1R5G5B5_UNORM_PACK16: return "VK_FORMAT_A1R5G5B5_UNORM_PACK16";
264 case VK_FORMAT_R8_UNORM: return "VK_FORMAT_R8_UNORM";
265 case VK_FORMAT_R8_SNORM: return "VK_FORMAT_R8_SNORM";
266 case VK_FORMAT_R8_USCALED: return "VK_FORMAT_R8_USCALED";
267 case VK_FORMAT_R8_SSCALED: return "VK_FORMAT_R8_SSCALED";
268 case VK_FORMAT_R8_UINT: return "VK_FORMAT_R8_UINT";
269 case VK_FORMAT_R8_SINT: return "VK_FORMAT_R8_SINT";
270 case VK_FORMAT_R8_SRGB: return "VK_FORMAT_R8_SRGB";
271 case VK_FORMAT_R8G8_UNORM: return "VK_FORMAT_R8G8_UNORM";
272 case VK_FORMAT_R8G8_SNORM: return "VK_FORMAT_R8G8_SNORM";
273 case VK_FORMAT_R8G8_USCALED: return "VK_FORMAT_R8G8_USCALED";
274 case VK_FORMAT_R8G8_SSCALED: return "VK_FORMAT_R8G8_SSCALED";
275 case VK_FORMAT_R8G8_UINT: return "VK_FORMAT_R8G8_UINT";
276 case VK_FORMAT_R8G8_SINT: return "VK_FORMAT_R8G8_SINT";
277 case VK_FORMAT_R8G8_SRGB: return "VK_FORMAT_R8G8_SRGB";
278 case VK_FORMAT_R8G8B8_UNORM: return "VK_FORMAT_R8G8B8_UNORM";
279 case VK_FORMAT_R8G8B8_SNORM: return "VK_FORMAT_R8G8B8_SNORM";
280 case VK_FORMAT_R8G8B8_USCALED: return "VK_FORMAT_R8G8B8_USCALED";
281 case VK_FORMAT_R8G8B8_SSCALED: return "VK_FORMAT_R8G8B8_SSCALED";
282 case VK_FORMAT_R8G8B8_UINT: return "VK_FORMAT_R8G8B8_UINT";
283 case VK_FORMAT_R8G8B8_SINT: return "VK_FORMAT_R8G8B8_SINT";
284 case VK_FORMAT_R8G8B8_SRGB: return "VK_FORMAT_R8G8B8_SRGB";
285 case VK_FORMAT_B8G8R8_UNORM: return "VK_FORMAT_B8G8R8_UNORM";
286 case VK_FORMAT_B8G8R8_SNORM: return "VK_FORMAT_B8G8R8_SNORM";
287 case VK_FORMAT_B8G8R8_USCALED: return "VK_FORMAT_B8G8R8_USCALED";
288 case VK_FORMAT_B8G8R8_SSCALED: return "VK_FORMAT_B8G8R8_SSCALED";
289 case VK_FORMAT_B8G8R8_UINT: return "VK_FORMAT_B8G8R8_UINT";
290 case VK_FORMAT_B8G8R8_SINT: return "VK_FORMAT_B8G8R8_SINT";
291 case VK_FORMAT_B8G8R8_SRGB: return "VK_FORMAT_B8G8R8_SRGB";
292 case VK_FORMAT_R8G8B8A8_UNORM: return "VK_FORMAT_R8G8B8A8_UNORM";
293 case VK_FORMAT_R8G8B8A8_SNORM: return "VK_FORMAT_R8G8B8A8_SNORM";
294 case VK_FORMAT_R8G8B8A8_USCALED: return "VK_FORMAT_R8G8B8A8_USCALED";
295 case VK_FORMAT_R8G8B8A8_SSCALED: return "VK_FORMAT_R8G8B8A8_SSCALED";
296 case VK_FORMAT_R8G8B8A8_UINT: return "VK_FORMAT_R8G8B8A8_UINT";
297 case VK_FORMAT_R8G8B8A8_SINT: return "VK_FORMAT_R8G8B8A8_SINT";
298 case VK_FORMAT_R8G8B8A8_SRGB: return "VK_FORMAT_R8G8B8A8_SRGB";
299 case VK_FORMAT_B8G8R8A8_UNORM: return "VK_FORMAT_B8G8R8A8_UNORM";
300 case VK_FORMAT_B8G8R8A8_SNORM: return "VK_FORMAT_B8G8R8A8_SNORM";
301 case VK_FORMAT_B8G8R8A8_USCALED: return "VK_FORMAT_B8G8R8A8_USCALED";
302 case VK_FORMAT_B8G8R8A8_SSCALED: return "VK_FORMAT_B8G8R8A8_SSCALED";
303 case VK_FORMAT_B8G8R8A8_UINT: return "VK_FORMAT_B8G8R8A8_UINT";
304 case VK_FORMAT_B8G8R8A8_SINT: return "VK_FORMAT_B8G8R8A8_SINT";
305 case VK_FORMAT_B8G8R8A8_SRGB: return "VK_FORMAT_B8G8R8A8_SRGB";
306 case VK_FORMAT_A8B8G8R8_UNORM_PACK32: return "VK_FORMAT_A8B8G8R8_UNORM_PACK32";
307 case VK_FORMAT_A8B8G8R8_SNORM_PACK32: return "VK_FORMAT_A8B8G8R8_SNORM_PACK32";
308 case VK_FORMAT_A8B8G8R8_USCALED_PACK32: return "VK_FORMAT_A8B8G8R8_USCALED_PACK32";
309 case VK_FORMAT_A8B8G8R8_SSCALED_PACK32: return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32";
310 case VK_FORMAT_A8B8G8R8_UINT_PACK32: return "VK_FORMAT_A8B8G8R8_UINT_PACK32";
311 case VK_FORMAT_A8B8G8R8_SINT_PACK32: return "VK_FORMAT_A8B8G8R8_SINT_PACK32";
312 case VK_FORMAT_A8B8G8R8_SRGB_PACK32: return "VK_FORMAT_A8B8G8R8_SRGB_PACK32";
313 case VK_FORMAT_A2R10G10B10_UNORM_PACK32: return "VK_FORMAT_A2R10G10B10_UNORM_PACK32";
314 case VK_FORMAT_A2R10G10B10_SNORM_PACK32: return "VK_FORMAT_A2R10G10B10_SNORM_PACK32";
315 case VK_FORMAT_A2R10G10B10_USCALED_PACK32: return "VK_FORMAT_A2R10G10B10_USCALED_PACK32";
316 case VK_FORMAT_A2R10G10B10_SSCALED_PACK32: return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32";
317 case VK_FORMAT_A2R10G10B10_UINT_PACK32: return "VK_FORMAT_A2R10G10B10_UINT_PACK32";
318 case VK_FORMAT_A2R10G10B10_SINT_PACK32: return "VK_FORMAT_A2R10G10B10_SINT_PACK32";
319 case VK_FORMAT_A2B10G10R10_UNORM_PACK32: return "VK_FORMAT_A2B10G10R10_UNORM_PACK32";
320 case VK_FORMAT_A2B10G10R10_SNORM_PACK32: return "VK_FORMAT_A2B10G10R10_SNORM_PACK32";
321 case VK_FORMAT_A2B10G10R10_USCALED_PACK32: return "VK_FORMAT_A2B10G10R10_USCALED_PACK32";
322 case VK_FORMAT_A2B10G10R10_SSCALED_PACK32: return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32";
323 case VK_FORMAT_A2B10G10R10_UINT_PACK32: return "VK_FORMAT_A2B10G10R10_UINT_PACK32";
324 case VK_FORMAT_A2B10G10R10_SINT_PACK32: return "VK_FORMAT_A2B10G10R10_SINT_PACK32";
325 case VK_FORMAT_R16_UNORM: return "VK_FORMAT_R16_UNORM";
326 case VK_FORMAT_R16_SNORM: return "VK_FORMAT_R16_SNORM";
327 case VK_FORMAT_R16_USCALED: return "VK_FORMAT_R16_USCALED";
328 case VK_FORMAT_R16_SSCALED: return "VK_FORMAT_R16_SSCALED";
329 case VK_FORMAT_R16_UINT: return "VK_FORMAT_R16_UINT";
330 case VK_FORMAT_R16_SINT: return "VK_FORMAT_R16_SINT";
331 case VK_FORMAT_R16_SFLOAT: return "VK_FORMAT_R16_SFLOAT";
332 case VK_FORMAT_R16G16_UNORM: return "VK_FORMAT_R16G16_UNORM";
333 case VK_FORMAT_R16G16_SNORM: return "VK_FORMAT_R16G16_SNORM";
334 case VK_FORMAT_R16G16_USCALED: return "VK_FORMAT_R16G16_USCALED";
335 case VK_FORMAT_R16G16_SSCALED: return "VK_FORMAT_R16G16_SSCALED";
336 case VK_FORMAT_R16G16_UINT: return "VK_FORMAT_R16G16_UINT";
337 case VK_FORMAT_R16G16_SINT: return "VK_FORMAT_R16G16_SINT";
338 case VK_FORMAT_R16G16_SFLOAT: return "VK_FORMAT_R16G16_SFLOAT";
339 case VK_FORMAT_R16G16B16_UNORM: return "VK_FORMAT_R16G16B16_UNORM";
340 case VK_FORMAT_R16G16B16_SNORM: return "VK_FORMAT_R16G16B16_SNORM";
341 case VK_FORMAT_R16G16B16_USCALED: return "VK_FORMAT_R16G16B16_USCALED";
342 case VK_FORMAT_R16G16B16_SSCALED: return "VK_FORMAT_R16G16B16_SSCALED";
343 case VK_FORMAT_R16G16B16_UINT: return "VK_FORMAT_R16G16B16_UINT";
344 case VK_FORMAT_R16G16B16_SINT: return "VK_FORMAT_R16G16B16_SINT";
345 case VK_FORMAT_R16G16B16_SFLOAT: return "VK_FORMAT_R16G16B16_SFLOAT";
346 case VK_FORMAT_R16G16B16A16_UNORM: return "VK_FORMAT_R16G16B16A16_UNORM";
347 case VK_FORMAT_R16G16B16A16_SNORM: return "VK_FORMAT_R16G16B16A16_SNORM";
348 case VK_FORMAT_R16G16B16A16_USCALED: return "VK_FORMAT_R16G16B16A16_USCALED";
349 case VK_FORMAT_R16G16B16A16_SSCALED: return "VK_FORMAT_R16G16B16A16_SSCALED";
350 case VK_FORMAT_R16G16B16A16_UINT: return "VK_FORMAT_R16G16B16A16_UINT";
351 case VK_FORMAT_R16G16B16A16_SINT: return "VK_FORMAT_R16G16B16A16_SINT";
352 case VK_FORMAT_R16G16B16A16_SFLOAT: return "VK_FORMAT_R16G16B16A16_SFLOAT";
353 case VK_FORMAT_R32_UINT: return "VK_FORMAT_R32_UINT";
354 case VK_FORMAT_R32_SINT: return "VK_FORMAT_R32_SINT";
355 case VK_FORMAT_R32_SFLOAT: return "VK_FORMAT_R32_SFLOAT";
356 case VK_FORMAT_R32G32_UINT: return "VK_FORMAT_R32G32_UINT";
357 case VK_FORMAT_R32G32_SINT: return "VK_FORMAT_R32G32_SINT";
358 case VK_FORMAT_R32G32_SFLOAT: return "VK_FORMAT_R32G32_SFLOAT";
359 case VK_FORMAT_R32G32B32_UINT: return "VK_FORMAT_R32G32B32_UINT";
360 case VK_FORMAT_R32G32B32_SINT: return "VK_FORMAT_R32G32B32_SINT";
361 case VK_FORMAT_R32G32B32_SFLOAT: return "VK_FORMAT_R32G32B32_SFLOAT";
362 case VK_FORMAT_R32G32B32A32_UINT: return "VK_FORMAT_R32G32B32A32_UINT";
363 case VK_FORMAT_R32G32B32A32_SINT: return "VK_FORMAT_R32G32B32A32_SINT";
364 case VK_FORMAT_R32G32B32A32_SFLOAT: return "VK_FORMAT_R32G32B32A32_SFLOAT";
365 case VK_FORMAT_R64_UINT: return "VK_FORMAT_R64_UINT";
366 case VK_FORMAT_R64_SINT: return "VK_FORMAT_R64_SINT";
367 case VK_FORMAT_R64_SFLOAT: return "VK_FORMAT_R64_SFLOAT";
368 case VK_FORMAT_R64G64_UINT: return "VK_FORMAT_R64G64_UINT";
369 case VK_FORMAT_R64G64_SINT: return "VK_FORMAT_R64G64_SINT";
370 case VK_FORMAT_R64G64_SFLOAT: return "VK_FORMAT_R64G64_SFLOAT";
371 case VK_FORMAT_R64G64B64_UINT: return "VK_FORMAT_R64G64B64_UINT";
372 case VK_FORMAT_R64G64B64_SINT: return "VK_FORMAT_R64G64B64_SINT";
373 case VK_FORMAT_R64G64B64_SFLOAT: return "VK_FORMAT_R64G64B64_SFLOAT";
374 case VK_FORMAT_R64G64B64A64_UINT: return "VK_FORMAT_R64G64B64A64_UINT";
375 case VK_FORMAT_R64G64B64A64_SINT: return "VK_FORMAT_R64G64B64A64_SINT";
376 case VK_FORMAT_R64G64B64A64_SFLOAT: return "VK_FORMAT_R64G64B64A64_SFLOAT";
377 case VK_FORMAT_B10G11R11_UFLOAT_PACK32: return "VK_FORMAT_B10G11R11_UFLOAT_PACK32";
378 case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32: return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32";
379 case VK_FORMAT_D16_UNORM: return "VK_FORMAT_D16_UNORM";
380 case VK_FORMAT_X8_D24_UNORM_PACK32: return "VK_FORMAT_X8_D24_UNORM_PACK32";
381 case VK_FORMAT_D32_SFLOAT: return "VK_FORMAT_D32_SFLOAT";
382 case VK_FORMAT_S8_UINT: return "VK_FORMAT_S8_UINT";
383 case VK_FORMAT_D16_UNORM_S8_UINT: return "VK_FORMAT_D16_UNORM_S8_UINT";
384 case VK_FORMAT_D24_UNORM_S8_UINT: return "VK_FORMAT_D24_UNORM_S8_UINT";
385 case VK_FORMAT_D32_SFLOAT_S8_UINT: return "VK_FORMAT_D32_SFLOAT_S8_UINT";
386 case VK_FORMAT_BC1_RGB_UNORM_BLOCK: return "VK_FORMAT_BC1_RGB_UNORM_BLOCK";
387 case VK_FORMAT_BC1_RGB_SRGB_BLOCK: return "VK_FORMAT_BC1_RGB_SRGB_BLOCK";
388 case VK_FORMAT_BC1_RGBA_UNORM_BLOCK: return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK";
389 case VK_FORMAT_BC1_RGBA_SRGB_BLOCK: return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK";
390 case VK_FORMAT_BC2_UNORM_BLOCK: return "VK_FORMAT_BC2_UNORM_BLOCK";
391 case VK_FORMAT_BC2_SRGB_BLOCK: return "VK_FORMAT_BC2_SRGB_BLOCK";
392 case VK_FORMAT_BC3_UNORM_BLOCK: return "VK_FORMAT_BC3_UNORM_BLOCK";
393 case VK_FORMAT_BC3_SRGB_BLOCK: return "VK_FORMAT_BC3_SRGB_BLOCK";
394 case VK_FORMAT_BC4_UNORM_BLOCK: return "VK_FORMAT_BC4_UNORM_BLOCK";
395 case VK_FORMAT_BC4_SNORM_BLOCK: return "VK_FORMAT_BC4_SNORM_BLOCK";
396 case VK_FORMAT_BC5_UNORM_BLOCK: return "VK_FORMAT_BC5_UNORM_BLOCK";
397 case VK_FORMAT_BC5_SNORM_BLOCK: return "VK_FORMAT_BC5_SNORM_BLOCK";
398 case VK_FORMAT_BC6H_UFLOAT_BLOCK: return "VK_FORMAT_BC6H_UFLOAT_BLOCK";
399 case VK_FORMAT_BC6H_SFLOAT_BLOCK: return "VK_FORMAT_BC6H_SFLOAT_BLOCK";
400 case VK_FORMAT_BC7_UNORM_BLOCK: return "VK_FORMAT_BC7_UNORM_BLOCK";
401 case VK_FORMAT_BC7_SRGB_BLOCK: return "VK_FORMAT_BC7_SRGB_BLOCK";
402 case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK";
403 case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK";
404 case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK";
405 case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK";
406 case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK";
407 case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK: return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK";
408 case VK_FORMAT_EAC_R11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11_UNORM_BLOCK";
409 case VK_FORMAT_EAC_R11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11_SNORM_BLOCK";
410 case VK_FORMAT_EAC_R11G11_UNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK";
411 case VK_FORMAT_EAC_R11G11_SNORM_BLOCK: return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK";
412 case VK_FORMAT_ASTC_4x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK";
413 case VK_FORMAT_ASTC_4x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK";
414 case VK_FORMAT_ASTC_5x4_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK";
415 case VK_FORMAT_ASTC_5x4_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK";
416 case VK_FORMAT_ASTC_5x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK";
417 case VK_FORMAT_ASTC_5x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK";
418 case VK_FORMAT_ASTC_6x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK";
419 case VK_FORMAT_ASTC_6x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK";
420 case VK_FORMAT_ASTC_6x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK";
421 case VK_FORMAT_ASTC_6x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK";
422 case VK_FORMAT_ASTC_8x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK";
423 case VK_FORMAT_ASTC_8x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK";
424 case VK_FORMAT_ASTC_8x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK";
425 case VK_FORMAT_ASTC_8x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK";
426 case VK_FORMAT_ASTC_8x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK";
427 case VK_FORMAT_ASTC_8x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK";
428 case VK_FORMAT_ASTC_10x5_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK";
429 case VK_FORMAT_ASTC_10x5_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK";
430 case VK_FORMAT_ASTC_10x6_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK";
431 case VK_FORMAT_ASTC_10x6_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK";
432 case VK_FORMAT_ASTC_10x8_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK";
433 case VK_FORMAT_ASTC_10x8_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK";
434 case VK_FORMAT_ASTC_10x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK";
435 case VK_FORMAT_ASTC_10x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK";
436 case VK_FORMAT_ASTC_12x10_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK";
437 case VK_FORMAT_ASTC_12x10_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK";
438 case VK_FORMAT_ASTC_12x12_UNORM_BLOCK: return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK";
439 case VK_FORMAT_ASTC_12x12_SRGB_BLOCK: return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK";
440 default: return DE_NULL;
444 const char* getImageTypeName (VkImageType value)
448 case VK_IMAGE_TYPE_1D: return "VK_IMAGE_TYPE_1D";
449 case VK_IMAGE_TYPE_2D: return "VK_IMAGE_TYPE_2D";
450 case VK_IMAGE_TYPE_3D: return "VK_IMAGE_TYPE_3D";
451 default: return DE_NULL;
455 const char* getImageTilingName (VkImageTiling value)
459 case VK_IMAGE_TILING_OPTIMAL: return "VK_IMAGE_TILING_OPTIMAL";
460 case VK_IMAGE_TILING_LINEAR: return "VK_IMAGE_TILING_LINEAR";
461 default: return DE_NULL;
465 const char* getPhysicalDeviceTypeName (VkPhysicalDeviceType value)
469 case VK_PHYSICAL_DEVICE_TYPE_OTHER: return "VK_PHYSICAL_DEVICE_TYPE_OTHER";
470 case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU: return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU";
471 case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU: return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU";
472 case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU: return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU";
473 case VK_PHYSICAL_DEVICE_TYPE_CPU: return "VK_PHYSICAL_DEVICE_TYPE_CPU";
474 default: return DE_NULL;
478 const char* getQueryTypeName (VkQueryType value)
482 case VK_QUERY_TYPE_OCCLUSION: return "VK_QUERY_TYPE_OCCLUSION";
483 case VK_QUERY_TYPE_PIPELINE_STATISTICS: return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
484 case VK_QUERY_TYPE_TIMESTAMP: return "VK_QUERY_TYPE_TIMESTAMP";
485 default: return DE_NULL;
489 const char* getSharingModeName (VkSharingMode value)
493 case VK_SHARING_MODE_EXCLUSIVE: return "VK_SHARING_MODE_EXCLUSIVE";
494 case VK_SHARING_MODE_CONCURRENT: return "VK_SHARING_MODE_CONCURRENT";
495 default: return DE_NULL;
499 const char* getImageLayoutName (VkImageLayout value)
503 case VK_IMAGE_LAYOUT_UNDEFINED: return "VK_IMAGE_LAYOUT_UNDEFINED";
504 case VK_IMAGE_LAYOUT_GENERAL: return "VK_IMAGE_LAYOUT_GENERAL";
505 case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL";
506 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL";
507 case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL";
508 case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL: return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL";
509 case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL";
510 case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL: return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL";
511 case VK_IMAGE_LAYOUT_PREINITIALIZED: return "VK_IMAGE_LAYOUT_PREINITIALIZED";
512 case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR: return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR";
513 case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR: return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR";
514 default: return DE_NULL;
518 const char* getImageViewTypeName (VkImageViewType value)
522 case VK_IMAGE_VIEW_TYPE_1D: return "VK_IMAGE_VIEW_TYPE_1D";
523 case VK_IMAGE_VIEW_TYPE_2D: return "VK_IMAGE_VIEW_TYPE_2D";
524 case VK_IMAGE_VIEW_TYPE_3D: return "VK_IMAGE_VIEW_TYPE_3D";
525 case VK_IMAGE_VIEW_TYPE_CUBE: return "VK_IMAGE_VIEW_TYPE_CUBE";
526 case VK_IMAGE_VIEW_TYPE_1D_ARRAY: return "VK_IMAGE_VIEW_TYPE_1D_ARRAY";
527 case VK_IMAGE_VIEW_TYPE_2D_ARRAY: return "VK_IMAGE_VIEW_TYPE_2D_ARRAY";
528 case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY: return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY";
529 default: return DE_NULL;
533 const char* getComponentSwizzleName (VkComponentSwizzle value)
537 case VK_COMPONENT_SWIZZLE_IDENTITY: return "VK_COMPONENT_SWIZZLE_IDENTITY";
538 case VK_COMPONENT_SWIZZLE_ZERO: return "VK_COMPONENT_SWIZZLE_ZERO";
539 case VK_COMPONENT_SWIZZLE_ONE: return "VK_COMPONENT_SWIZZLE_ONE";
540 case VK_COMPONENT_SWIZZLE_R: return "VK_COMPONENT_SWIZZLE_R";
541 case VK_COMPONENT_SWIZZLE_G: return "VK_COMPONENT_SWIZZLE_G";
542 case VK_COMPONENT_SWIZZLE_B: return "VK_COMPONENT_SWIZZLE_B";
543 case VK_COMPONENT_SWIZZLE_A: return "VK_COMPONENT_SWIZZLE_A";
544 default: return DE_NULL;
548 const char* getVertexInputRateName (VkVertexInputRate value)
552 case VK_VERTEX_INPUT_RATE_VERTEX: return "VK_VERTEX_INPUT_RATE_VERTEX";
553 case VK_VERTEX_INPUT_RATE_INSTANCE: return "VK_VERTEX_INPUT_RATE_INSTANCE";
554 default: return DE_NULL;
558 const char* getPrimitiveTopologyName (VkPrimitiveTopology value)
562 case VK_PRIMITIVE_TOPOLOGY_POINT_LIST: return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST";
563 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST";
564 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP";
565 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST";
566 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP";
567 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN";
568 case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY";
569 case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY";
570 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY";
571 case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY: return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY";
572 case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST: return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST";
573 default: return DE_NULL;
577 const char* getPolygonModeName (VkPolygonMode value)
581 case VK_POLYGON_MODE_FILL: return "VK_POLYGON_MODE_FILL";
582 case VK_POLYGON_MODE_LINE: return "VK_POLYGON_MODE_LINE";
583 case VK_POLYGON_MODE_POINT: return "VK_POLYGON_MODE_POINT";
584 default: return DE_NULL;
588 const char* getFrontFaceName (VkFrontFace value)
592 case VK_FRONT_FACE_COUNTER_CLOCKWISE: return "VK_FRONT_FACE_COUNTER_CLOCKWISE";
593 case VK_FRONT_FACE_CLOCKWISE: return "VK_FRONT_FACE_CLOCKWISE";
594 default: return DE_NULL;
598 const char* getCompareOpName (VkCompareOp value)
602 case VK_COMPARE_OP_NEVER: return "VK_COMPARE_OP_NEVER";
603 case VK_COMPARE_OP_LESS: return "VK_COMPARE_OP_LESS";
604 case VK_COMPARE_OP_EQUAL: return "VK_COMPARE_OP_EQUAL";
605 case VK_COMPARE_OP_LESS_OR_EQUAL: return "VK_COMPARE_OP_LESS_OR_EQUAL";
606 case VK_COMPARE_OP_GREATER: return "VK_COMPARE_OP_GREATER";
607 case VK_COMPARE_OP_NOT_EQUAL: return "VK_COMPARE_OP_NOT_EQUAL";
608 case VK_COMPARE_OP_GREATER_OR_EQUAL: return "VK_COMPARE_OP_GREATER_OR_EQUAL";
609 case VK_COMPARE_OP_ALWAYS: return "VK_COMPARE_OP_ALWAYS";
610 default: return DE_NULL;
614 const char* getStencilOpName (VkStencilOp value)
618 case VK_STENCIL_OP_KEEP: return "VK_STENCIL_OP_KEEP";
619 case VK_STENCIL_OP_ZERO: return "VK_STENCIL_OP_ZERO";
620 case VK_STENCIL_OP_REPLACE: return "VK_STENCIL_OP_REPLACE";
621 case VK_STENCIL_OP_INCREMENT_AND_CLAMP: return "VK_STENCIL_OP_INCREMENT_AND_CLAMP";
622 case VK_STENCIL_OP_DECREMENT_AND_CLAMP: return "VK_STENCIL_OP_DECREMENT_AND_CLAMP";
623 case VK_STENCIL_OP_INVERT: return "VK_STENCIL_OP_INVERT";
624 case VK_STENCIL_OP_INCREMENT_AND_WRAP: return "VK_STENCIL_OP_INCREMENT_AND_WRAP";
625 case VK_STENCIL_OP_DECREMENT_AND_WRAP: return "VK_STENCIL_OP_DECREMENT_AND_WRAP";
626 default: return DE_NULL;
630 const char* getLogicOpName (VkLogicOp value)
634 case VK_LOGIC_OP_CLEAR: return "VK_LOGIC_OP_CLEAR";
635 case VK_LOGIC_OP_AND: return "VK_LOGIC_OP_AND";
636 case VK_LOGIC_OP_AND_REVERSE: return "VK_LOGIC_OP_AND_REVERSE";
637 case VK_LOGIC_OP_COPY: return "VK_LOGIC_OP_COPY";
638 case VK_LOGIC_OP_AND_INVERTED: return "VK_LOGIC_OP_AND_INVERTED";
639 case VK_LOGIC_OP_NO_OP: return "VK_LOGIC_OP_NO_OP";
640 case VK_LOGIC_OP_XOR: return "VK_LOGIC_OP_XOR";
641 case VK_LOGIC_OP_OR: return "VK_LOGIC_OP_OR";
642 case VK_LOGIC_OP_NOR: return "VK_LOGIC_OP_NOR";
643 case VK_LOGIC_OP_EQUIVALENT: return "VK_LOGIC_OP_EQUIVALENT";
644 case VK_LOGIC_OP_INVERT: return "VK_LOGIC_OP_INVERT";
645 case VK_LOGIC_OP_OR_REVERSE: return "VK_LOGIC_OP_OR_REVERSE";
646 case VK_LOGIC_OP_COPY_INVERTED: return "VK_LOGIC_OP_COPY_INVERTED";
647 case VK_LOGIC_OP_OR_INVERTED: return "VK_LOGIC_OP_OR_INVERTED";
648 case VK_LOGIC_OP_NAND: return "VK_LOGIC_OP_NAND";
649 case VK_LOGIC_OP_SET: return "VK_LOGIC_OP_SET";
650 default: return DE_NULL;
654 const char* getBlendFactorName (VkBlendFactor value)
658 case VK_BLEND_FACTOR_ZERO: return "VK_BLEND_FACTOR_ZERO";
659 case VK_BLEND_FACTOR_ONE: return "VK_BLEND_FACTOR_ONE";
660 case VK_BLEND_FACTOR_SRC_COLOR: return "VK_BLEND_FACTOR_SRC_COLOR";
661 case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR";
662 case VK_BLEND_FACTOR_DST_COLOR: return "VK_BLEND_FACTOR_DST_COLOR";
663 case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR";
664 case VK_BLEND_FACTOR_SRC_ALPHA: return "VK_BLEND_FACTOR_SRC_ALPHA";
665 case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA";
666 case VK_BLEND_FACTOR_DST_ALPHA: return "VK_BLEND_FACTOR_DST_ALPHA";
667 case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA";
668 case VK_BLEND_FACTOR_CONSTANT_COLOR: return "VK_BLEND_FACTOR_CONSTANT_COLOR";
669 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR";
670 case VK_BLEND_FACTOR_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_CONSTANT_ALPHA";
671 case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA";
672 case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE: return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE";
673 case VK_BLEND_FACTOR_SRC1_COLOR: return "VK_BLEND_FACTOR_SRC1_COLOR";
674 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR";
675 case VK_BLEND_FACTOR_SRC1_ALPHA: return "VK_BLEND_FACTOR_SRC1_ALPHA";
676 case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA: return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA";
677 default: return DE_NULL;
681 const char* getBlendOpName (VkBlendOp value)
685 case VK_BLEND_OP_ADD: return "VK_BLEND_OP_ADD";
686 case VK_BLEND_OP_SUBTRACT: return "VK_BLEND_OP_SUBTRACT";
687 case VK_BLEND_OP_REVERSE_SUBTRACT: return "VK_BLEND_OP_REVERSE_SUBTRACT";
688 case VK_BLEND_OP_MIN: return "VK_BLEND_OP_MIN";
689 case VK_BLEND_OP_MAX: return "VK_BLEND_OP_MAX";
690 default: return DE_NULL;
694 const char* getDynamicStateName (VkDynamicState value)
698 case VK_DYNAMIC_STATE_VIEWPORT: return "VK_DYNAMIC_STATE_VIEWPORT";
699 case VK_DYNAMIC_STATE_SCISSOR: return "VK_DYNAMIC_STATE_SCISSOR";
700 case VK_DYNAMIC_STATE_LINE_WIDTH: return "VK_DYNAMIC_STATE_LINE_WIDTH";
701 case VK_DYNAMIC_STATE_DEPTH_BIAS: return "VK_DYNAMIC_STATE_DEPTH_BIAS";
702 case VK_DYNAMIC_STATE_BLEND_CONSTANTS: return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
703 case VK_DYNAMIC_STATE_DEPTH_BOUNDS: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
704 case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK: return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
705 case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK: return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
706 case VK_DYNAMIC_STATE_STENCIL_REFERENCE: return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
707 default: return DE_NULL;
711 const char* getFilterName (VkFilter value)
715 case VK_FILTER_NEAREST: return "VK_FILTER_NEAREST";
716 case VK_FILTER_LINEAR: return "VK_FILTER_LINEAR";
717 default: return DE_NULL;
721 const char* getSamplerMipmapModeName (VkSamplerMipmapMode value)
725 case VK_SAMPLER_MIPMAP_MODE_NEAREST: return "VK_SAMPLER_MIPMAP_MODE_NEAREST";
726 case VK_SAMPLER_MIPMAP_MODE_LINEAR: return "VK_SAMPLER_MIPMAP_MODE_LINEAR";
727 default: return DE_NULL;
731 const char* getSamplerAddressModeName (VkSamplerAddressMode value)
735 case VK_SAMPLER_ADDRESS_MODE_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_REPEAT";
736 case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT: return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT";
737 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE";
738 case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER: return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER";
739 case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE: return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE";
740 default: return DE_NULL;
744 const char* getBorderColorName (VkBorderColor value)
748 case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK";
749 case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK: return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK";
750 case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK: return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK";
751 case VK_BORDER_COLOR_INT_OPAQUE_BLACK: return "VK_BORDER_COLOR_INT_OPAQUE_BLACK";
752 case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE: return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE";
753 case VK_BORDER_COLOR_INT_OPAQUE_WHITE: return "VK_BORDER_COLOR_INT_OPAQUE_WHITE";
754 default: return DE_NULL;
758 const char* getDescriptorTypeName (VkDescriptorType value)
762 case VK_DESCRIPTOR_TYPE_SAMPLER: return "VK_DESCRIPTOR_TYPE_SAMPLER";
763 case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER: return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER";
764 case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE: return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE";
765 case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE: return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE";
766 case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER";
767 case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER";
768 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER";
769 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER";
770 case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC";
771 case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC: return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC";
772 case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT: return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
773 default: return DE_NULL;
777 const char* getAttachmentLoadOpName (VkAttachmentLoadOp value)
781 case VK_ATTACHMENT_LOAD_OP_LOAD: return "VK_ATTACHMENT_LOAD_OP_LOAD";
782 case VK_ATTACHMENT_LOAD_OP_CLEAR: return "VK_ATTACHMENT_LOAD_OP_CLEAR";
783 case VK_ATTACHMENT_LOAD_OP_DONT_CARE: return "VK_ATTACHMENT_LOAD_OP_DONT_CARE";
784 default: return DE_NULL;
788 const char* getAttachmentStoreOpName (VkAttachmentStoreOp value)
792 case VK_ATTACHMENT_STORE_OP_STORE: return "VK_ATTACHMENT_STORE_OP_STORE";
793 case VK_ATTACHMENT_STORE_OP_DONT_CARE: return "VK_ATTACHMENT_STORE_OP_DONT_CARE";
794 default: return DE_NULL;
798 const char* getPipelineBindPointName (VkPipelineBindPoint value)
802 case VK_PIPELINE_BIND_POINT_GRAPHICS: return "VK_PIPELINE_BIND_POINT_GRAPHICS";
803 case VK_PIPELINE_BIND_POINT_COMPUTE: return "VK_PIPELINE_BIND_POINT_COMPUTE";
804 default: return DE_NULL;
808 const char* getCommandBufferLevelName (VkCommandBufferLevel value)
812 case VK_COMMAND_BUFFER_LEVEL_PRIMARY: return "VK_COMMAND_BUFFER_LEVEL_PRIMARY";
813 case VK_COMMAND_BUFFER_LEVEL_SECONDARY: return "VK_COMMAND_BUFFER_LEVEL_SECONDARY";
814 default: return DE_NULL;
818 const char* getIndexTypeName (VkIndexType value)
822 case VK_INDEX_TYPE_UINT16: return "VK_INDEX_TYPE_UINT16";
823 case VK_INDEX_TYPE_UINT32: return "VK_INDEX_TYPE_UINT32";
824 default: return DE_NULL;
828 const char* getSubpassContentsName (VkSubpassContents value)
832 case VK_SUBPASS_CONTENTS_INLINE: return "VK_SUBPASS_CONTENTS_INLINE";
833 case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS: return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS";
834 default: return DE_NULL;
838 const char* getObjectTypeName (VkObjectType value)
842 case VK_OBJECT_TYPE_UNKNOWN: return "VK_OBJECT_TYPE_UNKNOWN";
843 case VK_OBJECT_TYPE_INSTANCE: return "VK_OBJECT_TYPE_INSTANCE";
844 case VK_OBJECT_TYPE_PHYSICAL_DEVICE: return "VK_OBJECT_TYPE_PHYSICAL_DEVICE";
845 case VK_OBJECT_TYPE_DEVICE: return "VK_OBJECT_TYPE_DEVICE";
846 case VK_OBJECT_TYPE_QUEUE: return "VK_OBJECT_TYPE_QUEUE";
847 case VK_OBJECT_TYPE_SEMAPHORE: return "VK_OBJECT_TYPE_SEMAPHORE";
848 case VK_OBJECT_TYPE_COMMAND_BUFFER: return "VK_OBJECT_TYPE_COMMAND_BUFFER";
849 case VK_OBJECT_TYPE_FENCE: return "VK_OBJECT_TYPE_FENCE";
850 case VK_OBJECT_TYPE_DEVICE_MEMORY: return "VK_OBJECT_TYPE_DEVICE_MEMORY";
851 case VK_OBJECT_TYPE_BUFFER: return "VK_OBJECT_TYPE_BUFFER";
852 case VK_OBJECT_TYPE_IMAGE: return "VK_OBJECT_TYPE_IMAGE";
853 case VK_OBJECT_TYPE_EVENT: return "VK_OBJECT_TYPE_EVENT";
854 case VK_OBJECT_TYPE_QUERY_POOL: return "VK_OBJECT_TYPE_QUERY_POOL";
855 case VK_OBJECT_TYPE_BUFFER_VIEW: return "VK_OBJECT_TYPE_BUFFER_VIEW";
856 case VK_OBJECT_TYPE_IMAGE_VIEW: return "VK_OBJECT_TYPE_IMAGE_VIEW";
857 case VK_OBJECT_TYPE_SHADER_MODULE: return "VK_OBJECT_TYPE_SHADER_MODULE";
858 case VK_OBJECT_TYPE_PIPELINE_CACHE: return "VK_OBJECT_TYPE_PIPELINE_CACHE";
859 case VK_OBJECT_TYPE_PIPELINE_LAYOUT: return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
860 case VK_OBJECT_TYPE_RENDER_PASS: return "VK_OBJECT_TYPE_RENDER_PASS";
861 case VK_OBJECT_TYPE_PIPELINE: return "VK_OBJECT_TYPE_PIPELINE";
862 case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT: return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT";
863 case VK_OBJECT_TYPE_SAMPLER: return "VK_OBJECT_TYPE_SAMPLER";
864 case VK_OBJECT_TYPE_DESCRIPTOR_POOL: return "VK_OBJECT_TYPE_DESCRIPTOR_POOL";
865 case VK_OBJECT_TYPE_DESCRIPTOR_SET: return "VK_OBJECT_TYPE_DESCRIPTOR_SET";
866 case VK_OBJECT_TYPE_FRAMEBUFFER: return "VK_OBJECT_TYPE_FRAMEBUFFER";
867 case VK_OBJECT_TYPE_COMMAND_POOL: return "VK_OBJECT_TYPE_COMMAND_POOL";
868 case VK_OBJECT_TYPE_SURFACE_KHR: return "VK_OBJECT_TYPE_SURFACE_KHR";
869 case VK_OBJECT_TYPE_SWAPCHAIN_KHR: return "VK_OBJECT_TYPE_SWAPCHAIN_KHR";
870 case VK_OBJECT_TYPE_DISPLAY_KHR: return "VK_OBJECT_TYPE_DISPLAY_KHR";
871 case VK_OBJECT_TYPE_DISPLAY_MODE_KHR: return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR";
872 case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT: return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
873 case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR: return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR";
874 case VK_OBJECT_TYPE_OBJECT_TABLE_NVX: return "VK_OBJECT_TYPE_OBJECT_TABLE_NVX";
875 case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX: return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX";
876 default: return DE_NULL;
880 const char* getColorSpaceKHRName (VkColorSpaceKHR value)
884 case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR: return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR";
885 case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT";
886 case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT: return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT";
887 case VK_COLOR_SPACE_DCI_P3_LINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_LINEAR_EXT";
888 case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT: return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT";
889 case VK_COLOR_SPACE_BT709_LINEAR_EXT: return "VK_COLOR_SPACE_BT709_LINEAR_EXT";
890 case VK_COLOR_SPACE_BT709_NONLINEAR_EXT: return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT";
891 case VK_COLOR_SPACE_BT2020_LINEAR_EXT: return "VK_COLOR_SPACE_BT2020_LINEAR_EXT";
892 case VK_COLOR_SPACE_HDR10_ST2084_EXT: return "VK_COLOR_SPACE_HDR10_ST2084_EXT";
893 case VK_COLOR_SPACE_DOLBYVISION_EXT: return "VK_COLOR_SPACE_DOLBYVISION_EXT";
894 case VK_COLOR_SPACE_HDR10_HLG_EXT: return "VK_COLOR_SPACE_HDR10_HLG_EXT";
895 case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT";
896 case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT: return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT";
897 case VK_COLOR_SPACE_PASS_THROUGH_EXT: return "VK_COLOR_SPACE_PASS_THROUGH_EXT";
898 default: return DE_NULL;
902 const char* getPresentModeKHRName (VkPresentModeKHR value)
906 case VK_PRESENT_MODE_IMMEDIATE_KHR: return "VK_PRESENT_MODE_IMMEDIATE_KHR";
907 case VK_PRESENT_MODE_MAILBOX_KHR: return "VK_PRESENT_MODE_MAILBOX_KHR";
908 case VK_PRESENT_MODE_FIFO_KHR: return "VK_PRESENT_MODE_FIFO_KHR";
909 case VK_PRESENT_MODE_FIFO_RELAXED_KHR: return "VK_PRESENT_MODE_FIFO_RELAXED_KHR";
910 case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR";
911 case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR: return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR";
912 default: return DE_NULL;
916 const char* getDescriptorUpdateTemplateTypeKHRName (VkDescriptorUpdateTemplateTypeKHR value)
920 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR";
921 case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR: return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
922 default: return DE_NULL;
926 const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value)
930 case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
931 case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
932 case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
933 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
934 case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
935 case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
936 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
937 case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
938 case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
939 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
940 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
941 case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
942 case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
943 case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
944 case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
945 case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
946 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
947 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
948 case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
949 case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
950 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
951 case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
952 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
953 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
954 case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
955 case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
956 case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
957 case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
958 case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT";
959 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT";
960 case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT";
961 case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT: return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT";
962 default: return DE_NULL;
966 const char* getDebugReportErrorEXTName (VkDebugReportErrorEXT value)
970 case VK_DEBUG_REPORT_ERROR_NONE_EXT: return "VK_DEBUG_REPORT_ERROR_NONE_EXT";
971 case VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT: return "VK_DEBUG_REPORT_ERROR_CALLBACK_REF_EXT";
972 default: return DE_NULL;
976 tcu::Format::Bitfield<32> getFormatFeatureFlagsStr (VkFormatFeatureFlags value)
978 static const tcu::Format::BitDesc s_desc[] =
980 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
981 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
982 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
983 tcu::Format::BitDesc(VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
984 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
985 tcu::Format::BitDesc(VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
986 tcu::Format::BitDesc(VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
987 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
988 tcu::Format::BitDesc(VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
989 tcu::Format::BitDesc(VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
990 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_SRC_BIT, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
991 tcu::Format::BitDesc(VK_FORMAT_FEATURE_BLIT_DST_BIT, "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
992 tcu::Format::BitDesc(VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
993 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR"),
994 tcu::Format::BitDesc(VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR"),
996 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
999 tcu::Format::Bitfield<32> getImageUsageFlagsStr (VkImageUsageFlags value)
1001 static const tcu::Format::BitDesc s_desc[] =
1003 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_SRC_BIT, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"),
1004 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSFER_DST_BIT, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"),
1005 tcu::Format::BitDesc(VK_IMAGE_USAGE_SAMPLED_BIT, "VK_IMAGE_USAGE_SAMPLED_BIT"),
1006 tcu::Format::BitDesc(VK_IMAGE_USAGE_STORAGE_BIT, "VK_IMAGE_USAGE_STORAGE_BIT"),
1007 tcu::Format::BitDesc(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"),
1008 tcu::Format::BitDesc(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"),
1009 tcu::Format::BitDesc(VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"),
1010 tcu::Format::BitDesc(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"),
1012 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1015 tcu::Format::Bitfield<32> getImageCreateFlagsStr (VkImageCreateFlags value)
1017 static const tcu::Format::BitDesc s_desc[] =
1019 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_BINDING_BIT, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
1020 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
1021 tcu::Format::BitDesc(VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
1022 tcu::Format::BitDesc(VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
1023 tcu::Format::BitDesc(VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
1024 tcu::Format::BitDesc(VK_IMAGE_CREATE_BIND_SFR_BIT_KHX, "VK_IMAGE_CREATE_BIND_SFR_BIT_KHX"),
1025 tcu::Format::BitDesc(VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR"),
1027 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1030 tcu::Format::Bitfield<32> getSampleCountFlagsStr (VkSampleCountFlags value)
1032 static const tcu::Format::BitDesc s_desc[] =
1034 tcu::Format::BitDesc(VK_SAMPLE_COUNT_1_BIT, "VK_SAMPLE_COUNT_1_BIT"),
1035 tcu::Format::BitDesc(VK_SAMPLE_COUNT_2_BIT, "VK_SAMPLE_COUNT_2_BIT"),
1036 tcu::Format::BitDesc(VK_SAMPLE_COUNT_4_BIT, "VK_SAMPLE_COUNT_4_BIT"),
1037 tcu::Format::BitDesc(VK_SAMPLE_COUNT_8_BIT, "VK_SAMPLE_COUNT_8_BIT"),
1038 tcu::Format::BitDesc(VK_SAMPLE_COUNT_16_BIT, "VK_SAMPLE_COUNT_16_BIT"),
1039 tcu::Format::BitDesc(VK_SAMPLE_COUNT_32_BIT, "VK_SAMPLE_COUNT_32_BIT"),
1040 tcu::Format::BitDesc(VK_SAMPLE_COUNT_64_BIT, "VK_SAMPLE_COUNT_64_BIT"),
1042 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1045 tcu::Format::Bitfield<32> getQueueFlagsStr (VkQueueFlags value)
1047 static const tcu::Format::BitDesc s_desc[] =
1049 tcu::Format::BitDesc(VK_QUEUE_GRAPHICS_BIT, "VK_QUEUE_GRAPHICS_BIT"),
1050 tcu::Format::BitDesc(VK_QUEUE_COMPUTE_BIT, "VK_QUEUE_COMPUTE_BIT"),
1051 tcu::Format::BitDesc(VK_QUEUE_TRANSFER_BIT, "VK_QUEUE_TRANSFER_BIT"),
1052 tcu::Format::BitDesc(VK_QUEUE_SPARSE_BINDING_BIT, "VK_QUEUE_SPARSE_BINDING_BIT"),
1054 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1057 tcu::Format::Bitfield<32> getMemoryPropertyFlagsStr (VkMemoryPropertyFlags value)
1059 static const tcu::Format::BitDesc s_desc[] =
1061 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"),
1062 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"),
1063 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"),
1064 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_HOST_CACHED_BIT, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"),
1065 tcu::Format::BitDesc(VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"),
1067 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1070 tcu::Format::Bitfield<32> getMemoryHeapFlagsStr (VkMemoryHeapFlags value)
1072 static const tcu::Format::BitDesc s_desc[] =
1074 tcu::Format::BitDesc(VK_MEMORY_HEAP_DEVICE_LOCAL_BIT, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"),
1075 tcu::Format::BitDesc(VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHX"),
1077 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1080 tcu::Format::Bitfield<32> getPipelineStageFlagsStr (VkPipelineStageFlags value)
1082 static const tcu::Format::BitDesc s_desc[] =
1084 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
1085 tcu::Format::BitDesc(VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
1086 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
1087 tcu::Format::BitDesc(VK_PIPELINE_STAGE_VERTEX_SHADER_BIT, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
1088 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
1089 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
1090 tcu::Format::BitDesc(VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
1091 tcu::Format::BitDesc(VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
1092 tcu::Format::BitDesc(VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
1093 tcu::Format::BitDesc(VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
1094 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
1095 tcu::Format::BitDesc(VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
1096 tcu::Format::BitDesc(VK_PIPELINE_STAGE_TRANSFER_BIT, "VK_PIPELINE_STAGE_TRANSFER_BIT"),
1097 tcu::Format::BitDesc(VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
1098 tcu::Format::BitDesc(VK_PIPELINE_STAGE_HOST_BIT, "VK_PIPELINE_STAGE_HOST_BIT"),
1099 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"),
1100 tcu::Format::BitDesc(VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"),
1102 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1105 tcu::Format::Bitfield<32> getImageAspectFlagsStr (VkImageAspectFlags value)
1107 static const tcu::Format::BitDesc s_desc[] =
1109 tcu::Format::BitDesc(VK_IMAGE_ASPECT_COLOR_BIT, "VK_IMAGE_ASPECT_COLOR_BIT"),
1110 tcu::Format::BitDesc(VK_IMAGE_ASPECT_DEPTH_BIT, "VK_IMAGE_ASPECT_DEPTH_BIT"),
1111 tcu::Format::BitDesc(VK_IMAGE_ASPECT_STENCIL_BIT, "VK_IMAGE_ASPECT_STENCIL_BIT"),
1112 tcu::Format::BitDesc(VK_IMAGE_ASPECT_METADATA_BIT, "VK_IMAGE_ASPECT_METADATA_BIT"),
1114 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1117 tcu::Format::Bitfield<32> getSparseImageFormatFlagsStr (VkSparseImageFormatFlags value)
1119 static const tcu::Format::BitDesc s_desc[] =
1121 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT"),
1122 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT"),
1123 tcu::Format::BitDesc(VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT, "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT"),
1125 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1128 tcu::Format::Bitfield<32> getSparseMemoryBindFlagsStr (VkSparseMemoryBindFlags value)
1130 static const tcu::Format::BitDesc s_desc[] =
1132 tcu::Format::BitDesc(VK_SPARSE_MEMORY_BIND_METADATA_BIT, "VK_SPARSE_MEMORY_BIND_METADATA_BIT"),
1134 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1137 tcu::Format::Bitfield<32> getFenceCreateFlagsStr (VkFenceCreateFlags value)
1139 static const tcu::Format::BitDesc s_desc[] =
1141 tcu::Format::BitDesc(VK_FENCE_CREATE_SIGNALED_BIT, "VK_FENCE_CREATE_SIGNALED_BIT"),
1143 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1146 tcu::Format::Bitfield<32> getQueryPipelineStatisticFlagsStr (VkQueryPipelineStatisticFlags value)
1148 static const tcu::Format::BitDesc s_desc[] =
1150 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"),
1151 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"),
1152 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"),
1153 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"),
1154 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"),
1155 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"),
1156 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"),
1157 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"),
1158 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"),
1159 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"),
1160 tcu::Format::BitDesc(VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"),
1162 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1165 tcu::Format::Bitfield<32> getQueryResultFlagsStr (VkQueryResultFlags value)
1167 static const tcu::Format::BitDesc s_desc[] =
1169 tcu::Format::BitDesc(VK_QUERY_RESULT_64_BIT, "VK_QUERY_RESULT_64_BIT"),
1170 tcu::Format::BitDesc(VK_QUERY_RESULT_WAIT_BIT, "VK_QUERY_RESULT_WAIT_BIT"),
1171 tcu::Format::BitDesc(VK_QUERY_RESULT_WITH_AVAILABILITY_BIT, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"),
1172 tcu::Format::BitDesc(VK_QUERY_RESULT_PARTIAL_BIT, "VK_QUERY_RESULT_PARTIAL_BIT"),
1174 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1177 tcu::Format::Bitfield<32> getBufferCreateFlagsStr (VkBufferCreateFlags value)
1179 static const tcu::Format::BitDesc s_desc[] =
1181 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_BINDING_BIT, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"),
1182 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"),
1183 tcu::Format::BitDesc(VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"),
1185 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1188 tcu::Format::Bitfield<32> getBufferUsageFlagsStr (VkBufferUsageFlags value)
1190 static const tcu::Format::BitDesc s_desc[] =
1192 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_SRC_BIT, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"),
1193 tcu::Format::BitDesc(VK_BUFFER_USAGE_TRANSFER_DST_BIT, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"),
1194 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"),
1195 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"),
1196 tcu::Format::BitDesc(VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"),
1197 tcu::Format::BitDesc(VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"),
1198 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDEX_BUFFER_BIT, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"),
1199 tcu::Format::BitDesc(VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"),
1200 tcu::Format::BitDesc(VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"),
1202 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1205 tcu::Format::Bitfield<32> getPipelineCreateFlagsStr (VkPipelineCreateFlags value)
1207 static const tcu::Format::BitDesc s_desc[] =
1209 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
1210 tcu::Format::BitDesc(VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT, "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT"),
1211 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DERIVATIVE_BIT, "VK_PIPELINE_CREATE_DERIVATIVE_BIT"),
1212 tcu::Format::BitDesc(VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHX"),
1213 tcu::Format::BitDesc(VK_PIPELINE_CREATE_DISPATCH_BASE_KHX, "VK_PIPELINE_CREATE_DISPATCH_BASE_KHX"),
1215 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1218 tcu::Format::Bitfield<32> getShaderStageFlagsStr (VkShaderStageFlags value)
1220 static const tcu::Format::BitDesc s_desc[] =
1222 tcu::Format::BitDesc(VK_SHADER_STAGE_VERTEX_BIT, "VK_SHADER_STAGE_VERTEX_BIT"),
1223 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"),
1224 tcu::Format::BitDesc(VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"),
1225 tcu::Format::BitDesc(VK_SHADER_STAGE_GEOMETRY_BIT, "VK_SHADER_STAGE_GEOMETRY_BIT"),
1226 tcu::Format::BitDesc(VK_SHADER_STAGE_FRAGMENT_BIT, "VK_SHADER_STAGE_FRAGMENT_BIT"),
1227 tcu::Format::BitDesc(VK_SHADER_STAGE_COMPUTE_BIT, "VK_SHADER_STAGE_COMPUTE_BIT"),
1228 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL_GRAPHICS, "VK_SHADER_STAGE_ALL_GRAPHICS"),
1229 tcu::Format::BitDesc(VK_SHADER_STAGE_ALL, "VK_SHADER_STAGE_ALL"),
1231 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1234 tcu::Format::Bitfield<32> getCullModeFlagsStr (VkCullModeFlags value)
1236 static const tcu::Format::BitDesc s_desc[] =
1238 tcu::Format::BitDesc(VK_CULL_MODE_NONE, "VK_CULL_MODE_NONE"),
1239 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_BIT, "VK_CULL_MODE_FRONT_BIT"),
1240 tcu::Format::BitDesc(VK_CULL_MODE_BACK_BIT, "VK_CULL_MODE_BACK_BIT"),
1241 tcu::Format::BitDesc(VK_CULL_MODE_FRONT_AND_BACK, "VK_CULL_MODE_FRONT_AND_BACK"),
1243 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1246 tcu::Format::Bitfield<32> getColorComponentFlagsStr (VkColorComponentFlags value)
1248 static const tcu::Format::BitDesc s_desc[] =
1250 tcu::Format::BitDesc(VK_COLOR_COMPONENT_R_BIT, "VK_COLOR_COMPONENT_R_BIT"),
1251 tcu::Format::BitDesc(VK_COLOR_COMPONENT_G_BIT, "VK_COLOR_COMPONENT_G_BIT"),
1252 tcu::Format::BitDesc(VK_COLOR_COMPONENT_B_BIT, "VK_COLOR_COMPONENT_B_BIT"),
1253 tcu::Format::BitDesc(VK_COLOR_COMPONENT_A_BIT, "VK_COLOR_COMPONENT_A_BIT"),
1255 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1258 tcu::Format::Bitfield<32> getDescriptorSetLayoutCreateFlagsStr (VkDescriptorSetLayoutCreateFlags value)
1260 static const tcu::Format::BitDesc s_desc[] =
1262 tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"),
1264 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1267 tcu::Format::Bitfield<32> getDescriptorPoolCreateFlagsStr (VkDescriptorPoolCreateFlags value)
1269 static const tcu::Format::BitDesc s_desc[] =
1271 tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"),
1273 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1276 tcu::Format::Bitfield<32> getAttachmentDescriptionFlagsStr (VkAttachmentDescriptionFlags value)
1278 static const tcu::Format::BitDesc s_desc[] =
1280 tcu::Format::BitDesc(VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"),
1282 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1285 tcu::Format::Bitfield<32> getSubpassDescriptionFlagsStr (VkSubpassDescriptionFlags value)
1287 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1290 tcu::Format::Bitfield<32> getAccessFlagsStr (VkAccessFlags value)
1292 static const tcu::Format::BitDesc s_desc[] =
1294 tcu::Format::BitDesc(VK_ACCESS_INDIRECT_COMMAND_READ_BIT, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"),
1295 tcu::Format::BitDesc(VK_ACCESS_INDEX_READ_BIT, "VK_ACCESS_INDEX_READ_BIT"),
1296 tcu::Format::BitDesc(VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"),
1297 tcu::Format::BitDesc(VK_ACCESS_UNIFORM_READ_BIT, "VK_ACCESS_UNIFORM_READ_BIT"),
1298 tcu::Format::BitDesc(VK_ACCESS_INPUT_ATTACHMENT_READ_BIT, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"),
1299 tcu::Format::BitDesc(VK_ACCESS_SHADER_READ_BIT, "VK_ACCESS_SHADER_READ_BIT"),
1300 tcu::Format::BitDesc(VK_ACCESS_SHADER_WRITE_BIT, "VK_ACCESS_SHADER_WRITE_BIT"),
1301 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_READ_BIT, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"),
1302 tcu::Format::BitDesc(VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"),
1303 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"),
1304 tcu::Format::BitDesc(VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"),
1305 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_READ_BIT, "VK_ACCESS_TRANSFER_READ_BIT"),
1306 tcu::Format::BitDesc(VK_ACCESS_TRANSFER_WRITE_BIT, "VK_ACCESS_TRANSFER_WRITE_BIT"),
1307 tcu::Format::BitDesc(VK_ACCESS_HOST_READ_BIT, "VK_ACCESS_HOST_READ_BIT"),
1308 tcu::Format::BitDesc(VK_ACCESS_HOST_WRITE_BIT, "VK_ACCESS_HOST_WRITE_BIT"),
1309 tcu::Format::BitDesc(VK_ACCESS_MEMORY_READ_BIT, "VK_ACCESS_MEMORY_READ_BIT"),
1310 tcu::Format::BitDesc(VK_ACCESS_MEMORY_WRITE_BIT, "VK_ACCESS_MEMORY_WRITE_BIT"),
1312 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1315 tcu::Format::Bitfield<32> getDependencyFlagsStr (VkDependencyFlags value)
1317 static const tcu::Format::BitDesc s_desc[] =
1319 tcu::Format::BitDesc(VK_DEPENDENCY_BY_REGION_BIT, "VK_DEPENDENCY_BY_REGION_BIT"),
1320 tcu::Format::BitDesc(VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX, "VK_DEPENDENCY_VIEW_LOCAL_BIT_KHX"),
1321 tcu::Format::BitDesc(VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX, "VK_DEPENDENCY_DEVICE_GROUP_BIT_KHX"),
1323 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1326 tcu::Format::Bitfield<32> getCommandPoolCreateFlagsStr (VkCommandPoolCreateFlags value)
1328 static const tcu::Format::BitDesc s_desc[] =
1330 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"),
1331 tcu::Format::BitDesc(VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"),
1333 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1336 tcu::Format::Bitfield<32> getCommandPoolResetFlagsStr (VkCommandPoolResetFlags value)
1338 static const tcu::Format::BitDesc s_desc[] =
1340 tcu::Format::BitDesc(VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT"),
1342 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1345 tcu::Format::Bitfield<32> getCommandBufferUsageFlagsStr (VkCommandBufferUsageFlags value)
1347 static const tcu::Format::BitDesc s_desc[] =
1349 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"),
1350 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"),
1351 tcu::Format::BitDesc(VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"),
1353 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1356 tcu::Format::Bitfield<32> getQueryControlFlagsStr (VkQueryControlFlags value)
1358 static const tcu::Format::BitDesc s_desc[] =
1360 tcu::Format::BitDesc(VK_QUERY_CONTROL_PRECISE_BIT, "VK_QUERY_CONTROL_PRECISE_BIT"),
1362 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1365 tcu::Format::Bitfield<32> getCommandBufferResetFlagsStr (VkCommandBufferResetFlags value)
1367 static const tcu::Format::BitDesc s_desc[] =
1369 tcu::Format::BitDesc(VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"),
1371 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1374 tcu::Format::Bitfield<32> getStencilFaceFlagsStr (VkStencilFaceFlags value)
1376 static const tcu::Format::BitDesc s_desc[] =
1378 tcu::Format::BitDesc(VK_STENCIL_FACE_FRONT_BIT, "VK_STENCIL_FACE_FRONT_BIT"),
1379 tcu::Format::BitDesc(VK_STENCIL_FACE_BACK_BIT, "VK_STENCIL_FACE_BACK_BIT"),
1380 tcu::Format::BitDesc(VK_STENCIL_FRONT_AND_BACK, "VK_STENCIL_FRONT_AND_BACK"),
1382 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1385 tcu::Format::Bitfield<32> getSurfaceTransformFlagsKHRStr (VkSurfaceTransformFlagsKHR value)
1387 static const tcu::Format::BitDesc s_desc[] =
1389 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR, "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR"),
1390 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR"),
1391 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR"),
1392 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR"),
1393 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR"),
1394 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR"),
1395 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR"),
1396 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"),
1397 tcu::Format::BitDesc(VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR, "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"),
1399 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1402 tcu::Format::Bitfield<32> getCompositeAlphaFlagsKHRStr (VkCompositeAlphaFlagsKHR value)
1404 static const tcu::Format::BitDesc s_desc[] =
1406 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR"),
1407 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR"),
1408 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR, "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR"),
1409 tcu::Format::BitDesc(VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR, "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR"),
1411 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1414 tcu::Format::Bitfield<32> getSwapchainCreateFlagsKHRStr (VkSwapchainCreateFlagsKHR value)
1416 static const tcu::Format::BitDesc s_desc[] =
1418 tcu::Format::BitDesc(VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX, "VK_SWAPCHAIN_CREATE_BIND_SFR_BIT_KHX"),
1420 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1423 tcu::Format::Bitfield<32> getDisplayPlaneAlphaFlagsKHRStr (VkDisplayPlaneAlphaFlagsKHR value)
1425 static const tcu::Format::BitDesc s_desc[] =
1427 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR"),
1428 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR"),
1429 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR"),
1430 tcu::Format::BitDesc(VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR"),
1432 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1435 tcu::Format::Bitfield<32> getExternalFenceHandleTypeFlagsKHRStr (VkExternalFenceHandleTypeFlagsKHR value)
1437 static const tcu::Format::BitDesc s_desc[] =
1439 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"),
1440 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"),
1441 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"),
1442 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR"),
1444 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1447 tcu::Format::Bitfield<32> getExternalFenceFeatureFlagsKHRStr (VkExternalFenceFeatureFlagsKHR value)
1449 static const tcu::Format::BitDesc s_desc[] =
1451 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR"),
1452 tcu::Format::BitDesc(VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR"),
1454 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1457 tcu::Format::Bitfield<32> getFenceImportFlagsKHRStr (VkFenceImportFlagsKHR value)
1459 static const tcu::Format::BitDesc s_desc[] =
1461 tcu::Format::BitDesc(VK_FENCE_IMPORT_TEMPORARY_BIT_KHR, "VK_FENCE_IMPORT_TEMPORARY_BIT_KHR"),
1463 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1466 tcu::Format::Bitfield<32> getDebugReportFlagsEXTStr (VkDebugReportFlagsEXT value)
1468 static const tcu::Format::BitDesc s_desc[] =
1470 tcu::Format::BitDesc(VK_DEBUG_REPORT_INFORMATION_BIT_EXT, "VK_DEBUG_REPORT_INFORMATION_BIT_EXT"),
1471 tcu::Format::BitDesc(VK_DEBUG_REPORT_WARNING_BIT_EXT, "VK_DEBUG_REPORT_WARNING_BIT_EXT"),
1472 tcu::Format::BitDesc(VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT, "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT"),
1473 tcu::Format::BitDesc(VK_DEBUG_REPORT_ERROR_BIT_EXT, "VK_DEBUG_REPORT_ERROR_BIT_EXT"),
1474 tcu::Format::BitDesc(VK_DEBUG_REPORT_DEBUG_BIT_EXT, "VK_DEBUG_REPORT_DEBUG_BIT_EXT"),
1476 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1479 tcu::Format::Bitfield<32> getExternalMemoryHandleTypeFlagsKHRStr (VkExternalMemoryHandleTypeFlagsKHR value)
1481 static const tcu::Format::BitDesc s_desc[] =
1483 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"),
1484 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"),
1485 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"),
1486 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR"),
1487 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR"),
1488 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR"),
1489 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR"),
1491 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1494 tcu::Format::Bitfield<32> getExternalMemoryFeatureFlagsKHRStr (VkExternalMemoryFeatureFlagsKHR value)
1496 static const tcu::Format::BitDesc s_desc[] =
1498 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR"),
1499 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR"),
1500 tcu::Format::BitDesc(VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR"),
1502 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1505 tcu::Format::Bitfield<32> getExternalSemaphoreHandleTypeFlagsKHRStr (VkExternalSemaphoreHandleTypeFlagsKHR value)
1507 static const tcu::Format::BitDesc s_desc[] =
1509 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR"),
1510 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR"),
1511 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR"),
1512 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR"),
1513 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR"),
1515 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1518 tcu::Format::Bitfield<32> getExternalSemaphoreFeatureFlagsKHRStr (VkExternalSemaphoreFeatureFlagsKHR value)
1520 static const tcu::Format::BitDesc s_desc[] =
1522 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR"),
1523 tcu::Format::BitDesc(VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR, "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR"),
1525 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1528 tcu::Format::Bitfield<32> getSemaphoreImportFlagsKHRStr (VkSemaphoreImportFlagsKHR value)
1530 static const tcu::Format::BitDesc s_desc[] =
1532 tcu::Format::BitDesc(VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR, "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR"),
1534 return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
1537 tcu::Format::Bitfield<32> getInstanceCreateFlagsStr (VkInstanceCreateFlags value)
1539 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1542 tcu::Format::Bitfield<32> getDeviceCreateFlagsStr (VkDeviceCreateFlags value)
1544 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1547 tcu::Format::Bitfield<32> getDeviceQueueCreateFlagsStr (VkDeviceQueueCreateFlags value)
1549 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1552 tcu::Format::Bitfield<32> getMemoryMapFlagsStr (VkMemoryMapFlags value)
1554 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1557 tcu::Format::Bitfield<32> getSemaphoreCreateFlagsStr (VkSemaphoreCreateFlags value)
1559 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1562 tcu::Format::Bitfield<32> getEventCreateFlagsStr (VkEventCreateFlags value)
1564 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1567 tcu::Format::Bitfield<32> getQueryPoolCreateFlagsStr (VkQueryPoolCreateFlags value)
1569 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1572 tcu::Format::Bitfield<32> getBufferViewCreateFlagsStr (VkBufferViewCreateFlags value)
1574 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1577 tcu::Format::Bitfield<32> getImageViewCreateFlagsStr (VkImageViewCreateFlags value)
1579 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1582 tcu::Format::Bitfield<32> getShaderModuleCreateFlagsStr (VkShaderModuleCreateFlags value)
1584 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1587 tcu::Format::Bitfield<32> getPipelineCacheCreateFlagsStr (VkPipelineCacheCreateFlags value)
1589 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1592 tcu::Format::Bitfield<32> getPipelineShaderStageCreateFlagsStr (VkPipelineShaderStageCreateFlags value)
1594 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1597 tcu::Format::Bitfield<32> getPipelineVertexInputStateCreateFlagsStr (VkPipelineVertexInputStateCreateFlags value)
1599 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1602 tcu::Format::Bitfield<32> getPipelineInputAssemblyStateCreateFlagsStr (VkPipelineInputAssemblyStateCreateFlags value)
1604 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1607 tcu::Format::Bitfield<32> getPipelineTessellationStateCreateFlagsStr (VkPipelineTessellationStateCreateFlags value)
1609 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1612 tcu::Format::Bitfield<32> getPipelineViewportStateCreateFlagsStr (VkPipelineViewportStateCreateFlags value)
1614 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1617 tcu::Format::Bitfield<32> getPipelineRasterizationStateCreateFlagsStr (VkPipelineRasterizationStateCreateFlags value)
1619 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1622 tcu::Format::Bitfield<32> getPipelineMultisampleStateCreateFlagsStr (VkPipelineMultisampleStateCreateFlags value)
1624 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1627 tcu::Format::Bitfield<32> getPipelineDepthStencilStateCreateFlagsStr (VkPipelineDepthStencilStateCreateFlags value)
1629 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1632 tcu::Format::Bitfield<32> getPipelineColorBlendStateCreateFlagsStr (VkPipelineColorBlendStateCreateFlags value)
1634 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1637 tcu::Format::Bitfield<32> getPipelineDynamicStateCreateFlagsStr (VkPipelineDynamicStateCreateFlags value)
1639 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1642 tcu::Format::Bitfield<32> getPipelineLayoutCreateFlagsStr (VkPipelineLayoutCreateFlags value)
1644 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1647 tcu::Format::Bitfield<32> getSamplerCreateFlagsStr (VkSamplerCreateFlags value)
1649 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1652 tcu::Format::Bitfield<32> getDescriptorPoolResetFlagsStr (VkDescriptorPoolResetFlags value)
1654 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1657 tcu::Format::Bitfield<32> getFramebufferCreateFlagsStr (VkFramebufferCreateFlags value)
1659 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1662 tcu::Format::Bitfield<32> getRenderPassCreateFlagsStr (VkRenderPassCreateFlags value)
1664 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1667 tcu::Format::Bitfield<32> getDisplayModeCreateFlagsKHRStr (VkDisplayModeCreateFlagsKHR value)
1669 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1672 tcu::Format::Bitfield<32> getDisplaySurfaceCreateFlagsKHRStr (VkDisplaySurfaceCreateFlagsKHR value)
1674 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1677 tcu::Format::Bitfield<32> getXlibSurfaceCreateFlagsKHRStr (VkXlibSurfaceCreateFlagsKHR value)
1679 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1682 tcu::Format::Bitfield<32> getXcbSurfaceCreateFlagsKHRStr (VkXcbSurfaceCreateFlagsKHR value)
1684 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1687 tcu::Format::Bitfield<32> getWaylandSurfaceCreateFlagsKHRStr (VkWaylandSurfaceCreateFlagsKHR value)
1689 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1692 tcu::Format::Bitfield<32> getMirSurfaceCreateFlagsKHRStr (VkMirSurfaceCreateFlagsKHR value)
1694 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1697 tcu::Format::Bitfield<32> getAndroidSurfaceCreateFlagsKHRStr (VkAndroidSurfaceCreateFlagsKHR value)
1699 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1702 tcu::Format::Bitfield<32> getWin32SurfaceCreateFlagsKHRStr (VkWin32SurfaceCreateFlagsKHR value)
1704 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1707 tcu::Format::Bitfield<32> getCommandPoolTrimFlagsKHRStr (VkCommandPoolTrimFlagsKHR value)
1709 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1712 tcu::Format::Bitfield<32> getDescriptorUpdateTemplateCreateFlagsKHRStr (VkDescriptorUpdateTemplateCreateFlagsKHR value)
1714 return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
1717 std::ostream& operator<< (std::ostream& s, const VkApplicationInfo& value)
1719 s << "VkApplicationInfo = {\n";
1720 s << "\tsType = " << value.sType << '\n';
1721 s << "\tpNext = " << value.pNext << '\n';
1722 s << "\tpApplicationName = " << getCharPtrStr(value.pApplicationName) << '\n';
1723 s << "\tapplicationVersion = " << value.applicationVersion << '\n';
1724 s << "\tpEngineName = " << getCharPtrStr(value.pEngineName) << '\n';
1725 s << "\tengineVersion = " << value.engineVersion << '\n';
1726 s << "\tapiVersion = " << value.apiVersion << '\n';
1731 std::ostream& operator<< (std::ostream& s, const VkInstanceCreateInfo& value)
1733 s << "VkInstanceCreateInfo = {\n";
1734 s << "\tsType = " << value.sType << '\n';
1735 s << "\tpNext = " << value.pNext << '\n';
1736 s << "\tflags = " << getInstanceCreateFlagsStr(value.flags) << '\n';
1737 s << "\tpApplicationInfo = " << value.pApplicationInfo << '\n';
1738 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n';
1739 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n';
1740 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n';
1741 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n';
1746 std::ostream& operator<< (std::ostream& s, const VkAllocationCallbacks& value)
1748 s << "VkAllocationCallbacks = {\n";
1749 s << "\tpUserData = " << value.pUserData << '\n';
1750 s << "\tpfnAllocation = " << value.pfnAllocation << '\n';
1751 s << "\tpfnReallocation = " << value.pfnReallocation << '\n';
1752 s << "\tpfnFree = " << value.pfnFree << '\n';
1753 s << "\tpfnInternalAllocation = " << value.pfnInternalAllocation << '\n';
1754 s << "\tpfnInternalFree = " << value.pfnInternalFree << '\n';
1759 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures& value)
1761 s << "VkPhysicalDeviceFeatures = {\n";
1762 s << "\trobustBufferAccess = " << value.robustBufferAccess << '\n';
1763 s << "\tfullDrawIndexUint32 = " << value.fullDrawIndexUint32 << '\n';
1764 s << "\timageCubeArray = " << value.imageCubeArray << '\n';
1765 s << "\tindependentBlend = " << value.independentBlend << '\n';
1766 s << "\tgeometryShader = " << value.geometryShader << '\n';
1767 s << "\ttessellationShader = " << value.tessellationShader << '\n';
1768 s << "\tsampleRateShading = " << value.sampleRateShading << '\n';
1769 s << "\tdualSrcBlend = " << value.dualSrcBlend << '\n';
1770 s << "\tlogicOp = " << value.logicOp << '\n';
1771 s << "\tmultiDrawIndirect = " << value.multiDrawIndirect << '\n';
1772 s << "\tdrawIndirectFirstInstance = " << value.drawIndirectFirstInstance << '\n';
1773 s << "\tdepthClamp = " << value.depthClamp << '\n';
1774 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n';
1775 s << "\tfillModeNonSolid = " << value.fillModeNonSolid << '\n';
1776 s << "\tdepthBounds = " << value.depthBounds << '\n';
1777 s << "\twideLines = " << value.wideLines << '\n';
1778 s << "\tlargePoints = " << value.largePoints << '\n';
1779 s << "\talphaToOne = " << value.alphaToOne << '\n';
1780 s << "\tmultiViewport = " << value.multiViewport << '\n';
1781 s << "\tsamplerAnisotropy = " << value.samplerAnisotropy << '\n';
1782 s << "\ttextureCompressionETC2 = " << value.textureCompressionETC2 << '\n';
1783 s << "\ttextureCompressionASTC_LDR = " << value.textureCompressionASTC_LDR << '\n';
1784 s << "\ttextureCompressionBC = " << value.textureCompressionBC << '\n';
1785 s << "\tocclusionQueryPrecise = " << value.occlusionQueryPrecise << '\n';
1786 s << "\tpipelineStatisticsQuery = " << value.pipelineStatisticsQuery << '\n';
1787 s << "\tvertexPipelineStoresAndAtomics = " << value.vertexPipelineStoresAndAtomics << '\n';
1788 s << "\tfragmentStoresAndAtomics = " << value.fragmentStoresAndAtomics << '\n';
1789 s << "\tshaderTessellationAndGeometryPointSize = " << value.shaderTessellationAndGeometryPointSize << '\n';
1790 s << "\tshaderImageGatherExtended = " << value.shaderImageGatherExtended << '\n';
1791 s << "\tshaderStorageImageExtendedFormats = " << value.shaderStorageImageExtendedFormats << '\n';
1792 s << "\tshaderStorageImageMultisample = " << value.shaderStorageImageMultisample << '\n';
1793 s << "\tshaderStorageImageReadWithoutFormat = " << value.shaderStorageImageReadWithoutFormat << '\n';
1794 s << "\tshaderStorageImageWriteWithoutFormat = " << value.shaderStorageImageWriteWithoutFormat << '\n';
1795 s << "\tshaderUniformBufferArrayDynamicIndexing = " << value.shaderUniformBufferArrayDynamicIndexing << '\n';
1796 s << "\tshaderSampledImageArrayDynamicIndexing = " << value.shaderSampledImageArrayDynamicIndexing << '\n';
1797 s << "\tshaderStorageBufferArrayDynamicIndexing = " << value.shaderStorageBufferArrayDynamicIndexing << '\n';
1798 s << "\tshaderStorageImageArrayDynamicIndexing = " << value.shaderStorageImageArrayDynamicIndexing << '\n';
1799 s << "\tshaderClipDistance = " << value.shaderClipDistance << '\n';
1800 s << "\tshaderCullDistance = " << value.shaderCullDistance << '\n';
1801 s << "\tshaderFloat64 = " << value.shaderFloat64 << '\n';
1802 s << "\tshaderInt64 = " << value.shaderInt64 << '\n';
1803 s << "\tshaderInt16 = " << value.shaderInt16 << '\n';
1804 s << "\tshaderResourceResidency = " << value.shaderResourceResidency << '\n';
1805 s << "\tshaderResourceMinLod = " << value.shaderResourceMinLod << '\n';
1806 s << "\tsparseBinding = " << value.sparseBinding << '\n';
1807 s << "\tsparseResidencyBuffer = " << value.sparseResidencyBuffer << '\n';
1808 s << "\tsparseResidencyImage2D = " << value.sparseResidencyImage2D << '\n';
1809 s << "\tsparseResidencyImage3D = " << value.sparseResidencyImage3D << '\n';
1810 s << "\tsparseResidency2Samples = " << value.sparseResidency2Samples << '\n';
1811 s << "\tsparseResidency4Samples = " << value.sparseResidency4Samples << '\n';
1812 s << "\tsparseResidency8Samples = " << value.sparseResidency8Samples << '\n';
1813 s << "\tsparseResidency16Samples = " << value.sparseResidency16Samples << '\n';
1814 s << "\tsparseResidencyAliased = " << value.sparseResidencyAliased << '\n';
1815 s << "\tvariableMultisampleRate = " << value.variableMultisampleRate << '\n';
1816 s << "\tinheritedQueries = " << value.inheritedQueries << '\n';
1821 std::ostream& operator<< (std::ostream& s, const VkFormatProperties& value)
1823 s << "VkFormatProperties = {\n";
1824 s << "\tlinearTilingFeatures = " << getFormatFeatureFlagsStr(value.linearTilingFeatures) << '\n';
1825 s << "\toptimalTilingFeatures = " << getFormatFeatureFlagsStr(value.optimalTilingFeatures) << '\n';
1826 s << "\tbufferFeatures = " << getFormatFeatureFlagsStr(value.bufferFeatures) << '\n';
1831 std::ostream& operator<< (std::ostream& s, const VkExtent3D& value)
1833 s << "VkExtent3D = {\n";
1834 s << "\twidth = " << value.width << '\n';
1835 s << "\theight = " << value.height << '\n';
1836 s << "\tdepth = " << value.depth << '\n';
1841 std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties& value)
1843 s << "VkImageFormatProperties = {\n";
1844 s << "\tmaxExtent = " << value.maxExtent << '\n';
1845 s << "\tmaxMipLevels = " << value.maxMipLevels << '\n';
1846 s << "\tmaxArrayLayers = " << value.maxArrayLayers << '\n';
1847 s << "\tsampleCounts = " << getSampleCountFlagsStr(value.sampleCounts) << '\n';
1848 s << "\tmaxResourceSize = " << value.maxResourceSize << '\n';
1853 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceLimits& value)
1855 s << "VkPhysicalDeviceLimits = {\n";
1856 s << "\tmaxImageDimension1D = " << value.maxImageDimension1D << '\n';
1857 s << "\tmaxImageDimension2D = " << value.maxImageDimension2D << '\n';
1858 s << "\tmaxImageDimension3D = " << value.maxImageDimension3D << '\n';
1859 s << "\tmaxImageDimensionCube = " << value.maxImageDimensionCube << '\n';
1860 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n';
1861 s << "\tmaxTexelBufferElements = " << value.maxTexelBufferElements << '\n';
1862 s << "\tmaxUniformBufferRange = " << value.maxUniformBufferRange << '\n';
1863 s << "\tmaxStorageBufferRange = " << value.maxStorageBufferRange << '\n';
1864 s << "\tmaxPushConstantsSize = " << value.maxPushConstantsSize << '\n';
1865 s << "\tmaxMemoryAllocationCount = " << value.maxMemoryAllocationCount << '\n';
1866 s << "\tmaxSamplerAllocationCount = " << value.maxSamplerAllocationCount << '\n';
1867 s << "\tbufferImageGranularity = " << value.bufferImageGranularity << '\n';
1868 s << "\tsparseAddressSpaceSize = " << value.sparseAddressSpaceSize << '\n';
1869 s << "\tmaxBoundDescriptorSets = " << value.maxBoundDescriptorSets << '\n';
1870 s << "\tmaxPerStageDescriptorSamplers = " << value.maxPerStageDescriptorSamplers << '\n';
1871 s << "\tmaxPerStageDescriptorUniformBuffers = " << value.maxPerStageDescriptorUniformBuffers << '\n';
1872 s << "\tmaxPerStageDescriptorStorageBuffers = " << value.maxPerStageDescriptorStorageBuffers << '\n';
1873 s << "\tmaxPerStageDescriptorSampledImages = " << value.maxPerStageDescriptorSampledImages << '\n';
1874 s << "\tmaxPerStageDescriptorStorageImages = " << value.maxPerStageDescriptorStorageImages << '\n';
1875 s << "\tmaxPerStageDescriptorInputAttachments = " << value.maxPerStageDescriptorInputAttachments << '\n';
1876 s << "\tmaxPerStageResources = " << value.maxPerStageResources << '\n';
1877 s << "\tmaxDescriptorSetSamplers = " << value.maxDescriptorSetSamplers << '\n';
1878 s << "\tmaxDescriptorSetUniformBuffers = " << value.maxDescriptorSetUniformBuffers << '\n';
1879 s << "\tmaxDescriptorSetUniformBuffersDynamic = " << value.maxDescriptorSetUniformBuffersDynamic << '\n';
1880 s << "\tmaxDescriptorSetStorageBuffers = " << value.maxDescriptorSetStorageBuffers << '\n';
1881 s << "\tmaxDescriptorSetStorageBuffersDynamic = " << value.maxDescriptorSetStorageBuffersDynamic << '\n';
1882 s << "\tmaxDescriptorSetSampledImages = " << value.maxDescriptorSetSampledImages << '\n';
1883 s << "\tmaxDescriptorSetStorageImages = " << value.maxDescriptorSetStorageImages << '\n';
1884 s << "\tmaxDescriptorSetInputAttachments = " << value.maxDescriptorSetInputAttachments << '\n';
1885 s << "\tmaxVertexInputAttributes = " << value.maxVertexInputAttributes << '\n';
1886 s << "\tmaxVertexInputBindings = " << value.maxVertexInputBindings << '\n';
1887 s << "\tmaxVertexInputAttributeOffset = " << value.maxVertexInputAttributeOffset << '\n';
1888 s << "\tmaxVertexInputBindingStride = " << value.maxVertexInputBindingStride << '\n';
1889 s << "\tmaxVertexOutputComponents = " << value.maxVertexOutputComponents << '\n';
1890 s << "\tmaxTessellationGenerationLevel = " << value.maxTessellationGenerationLevel << '\n';
1891 s << "\tmaxTessellationPatchSize = " << value.maxTessellationPatchSize << '\n';
1892 s << "\tmaxTessellationControlPerVertexInputComponents = " << value.maxTessellationControlPerVertexInputComponents << '\n';
1893 s << "\tmaxTessellationControlPerVertexOutputComponents = " << value.maxTessellationControlPerVertexOutputComponents << '\n';
1894 s << "\tmaxTessellationControlPerPatchOutputComponents = " << value.maxTessellationControlPerPatchOutputComponents << '\n';
1895 s << "\tmaxTessellationControlTotalOutputComponents = " << value.maxTessellationControlTotalOutputComponents << '\n';
1896 s << "\tmaxTessellationEvaluationInputComponents = " << value.maxTessellationEvaluationInputComponents << '\n';
1897 s << "\tmaxTessellationEvaluationOutputComponents = " << value.maxTessellationEvaluationOutputComponents << '\n';
1898 s << "\tmaxGeometryShaderInvocations = " << value.maxGeometryShaderInvocations << '\n';
1899 s << "\tmaxGeometryInputComponents = " << value.maxGeometryInputComponents << '\n';
1900 s << "\tmaxGeometryOutputComponents = " << value.maxGeometryOutputComponents << '\n';
1901 s << "\tmaxGeometryOutputVertices = " << value.maxGeometryOutputVertices << '\n';
1902 s << "\tmaxGeometryTotalOutputComponents = " << value.maxGeometryTotalOutputComponents << '\n';
1903 s << "\tmaxFragmentInputComponents = " << value.maxFragmentInputComponents << '\n';
1904 s << "\tmaxFragmentOutputAttachments = " << value.maxFragmentOutputAttachments << '\n';
1905 s << "\tmaxFragmentDualSrcAttachments = " << value.maxFragmentDualSrcAttachments << '\n';
1906 s << "\tmaxFragmentCombinedOutputResources = " << value.maxFragmentCombinedOutputResources << '\n';
1907 s << "\tmaxComputeSharedMemorySize = " << value.maxComputeSharedMemorySize << '\n';
1908 s << "\tmaxComputeWorkGroupCount = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupCount), DE_ARRAY_END(value.maxComputeWorkGroupCount)) << '\n';
1909 s << "\tmaxComputeWorkGroupInvocations = " << value.maxComputeWorkGroupInvocations << '\n';
1910 s << "\tmaxComputeWorkGroupSize = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxComputeWorkGroupSize), DE_ARRAY_END(value.maxComputeWorkGroupSize)) << '\n';
1911 s << "\tsubPixelPrecisionBits = " << value.subPixelPrecisionBits << '\n';
1912 s << "\tsubTexelPrecisionBits = " << value.subTexelPrecisionBits << '\n';
1913 s << "\tmipmapPrecisionBits = " << value.mipmapPrecisionBits << '\n';
1914 s << "\tmaxDrawIndexedIndexValue = " << value.maxDrawIndexedIndexValue << '\n';
1915 s << "\tmaxDrawIndirectCount = " << value.maxDrawIndirectCount << '\n';
1916 s << "\tmaxSamplerLodBias = " << value.maxSamplerLodBias << '\n';
1917 s << "\tmaxSamplerAnisotropy = " << value.maxSamplerAnisotropy << '\n';
1918 s << "\tmaxViewports = " << value.maxViewports << '\n';
1919 s << "\tmaxViewportDimensions = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.maxViewportDimensions), DE_ARRAY_END(value.maxViewportDimensions)) << '\n';
1920 s << "\tviewportBoundsRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewportBoundsRange), DE_ARRAY_END(value.viewportBoundsRange)) << '\n';
1921 s << "\tviewportSubPixelBits = " << value.viewportSubPixelBits << '\n';
1922 s << "\tminMemoryMapAlignment = " << value.minMemoryMapAlignment << '\n';
1923 s << "\tminTexelBufferOffsetAlignment = " << value.minTexelBufferOffsetAlignment << '\n';
1924 s << "\tminUniformBufferOffsetAlignment = " << value.minUniformBufferOffsetAlignment << '\n';
1925 s << "\tminStorageBufferOffsetAlignment = " << value.minStorageBufferOffsetAlignment << '\n';
1926 s << "\tminTexelOffset = " << value.minTexelOffset << '\n';
1927 s << "\tmaxTexelOffset = " << value.maxTexelOffset << '\n';
1928 s << "\tminTexelGatherOffset = " << value.minTexelGatherOffset << '\n';
1929 s << "\tmaxTexelGatherOffset = " << value.maxTexelGatherOffset << '\n';
1930 s << "\tminInterpolationOffset = " << value.minInterpolationOffset << '\n';
1931 s << "\tmaxInterpolationOffset = " << value.maxInterpolationOffset << '\n';
1932 s << "\tsubPixelInterpolationOffsetBits = " << value.subPixelInterpolationOffsetBits << '\n';
1933 s << "\tmaxFramebufferWidth = " << value.maxFramebufferWidth << '\n';
1934 s << "\tmaxFramebufferHeight = " << value.maxFramebufferHeight << '\n';
1935 s << "\tmaxFramebufferLayers = " << value.maxFramebufferLayers << '\n';
1936 s << "\tframebufferColorSampleCounts = " << getSampleCountFlagsStr(value.framebufferColorSampleCounts) << '\n';
1937 s << "\tframebufferDepthSampleCounts = " << getSampleCountFlagsStr(value.framebufferDepthSampleCounts) << '\n';
1938 s << "\tframebufferStencilSampleCounts = " << getSampleCountFlagsStr(value.framebufferStencilSampleCounts) << '\n';
1939 s << "\tframebufferNoAttachmentsSampleCounts = " << getSampleCountFlagsStr(value.framebufferNoAttachmentsSampleCounts) << '\n';
1940 s << "\tmaxColorAttachments = " << value.maxColorAttachments << '\n';
1941 s << "\tsampledImageColorSampleCounts = " << getSampleCountFlagsStr(value.sampledImageColorSampleCounts) << '\n';
1942 s << "\tsampledImageIntegerSampleCounts = " << getSampleCountFlagsStr(value.sampledImageIntegerSampleCounts) << '\n';
1943 s << "\tsampledImageDepthSampleCounts = " << getSampleCountFlagsStr(value.sampledImageDepthSampleCounts) << '\n';
1944 s << "\tsampledImageStencilSampleCounts = " << getSampleCountFlagsStr(value.sampledImageStencilSampleCounts) << '\n';
1945 s << "\tstorageImageSampleCounts = " << getSampleCountFlagsStr(value.storageImageSampleCounts) << '\n';
1946 s << "\tmaxSampleMaskWords = " << value.maxSampleMaskWords << '\n';
1947 s << "\ttimestampComputeAndGraphics = " << value.timestampComputeAndGraphics << '\n';
1948 s << "\ttimestampPeriod = " << value.timestampPeriod << '\n';
1949 s << "\tmaxClipDistances = " << value.maxClipDistances << '\n';
1950 s << "\tmaxCullDistances = " << value.maxCullDistances << '\n';
1951 s << "\tmaxCombinedClipAndCullDistances = " << value.maxCombinedClipAndCullDistances << '\n';
1952 s << "\tdiscreteQueuePriorities = " << value.discreteQueuePriorities << '\n';
1953 s << "\tpointSizeRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.pointSizeRange), DE_ARRAY_END(value.pointSizeRange)) << '\n';
1954 s << "\tlineWidthRange = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.lineWidthRange), DE_ARRAY_END(value.lineWidthRange)) << '\n';
1955 s << "\tpointSizeGranularity = " << value.pointSizeGranularity << '\n';
1956 s << "\tlineWidthGranularity = " << value.lineWidthGranularity << '\n';
1957 s << "\tstrictLines = " << value.strictLines << '\n';
1958 s << "\tstandardSampleLocations = " << value.standardSampleLocations << '\n';
1959 s << "\toptimalBufferCopyOffsetAlignment = " << value.optimalBufferCopyOffsetAlignment << '\n';
1960 s << "\toptimalBufferCopyRowPitchAlignment = " << value.optimalBufferCopyRowPitchAlignment << '\n';
1961 s << "\tnonCoherentAtomSize = " << value.nonCoherentAtomSize << '\n';
1966 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseProperties& value)
1968 s << "VkPhysicalDeviceSparseProperties = {\n";
1969 s << "\tresidencyStandard2DBlockShape = " << value.residencyStandard2DBlockShape << '\n';
1970 s << "\tresidencyStandard2DMultisampleBlockShape = " << value.residencyStandard2DMultisampleBlockShape << '\n';
1971 s << "\tresidencyStandard3DBlockShape = " << value.residencyStandard3DBlockShape << '\n';
1972 s << "\tresidencyAlignedMipSize = " << value.residencyAlignedMipSize << '\n';
1973 s << "\tresidencyNonResidentStrict = " << value.residencyNonResidentStrict << '\n';
1978 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties& value)
1980 s << "VkPhysicalDeviceProperties = {\n";
1981 s << "\tapiVersion = " << value.apiVersion << '\n';
1982 s << "\tdriverVersion = " << value.driverVersion << '\n';
1983 s << "\tvendorID = " << value.vendorID << '\n';
1984 s << "\tdeviceID = " << value.deviceID << '\n';
1985 s << "\tdeviceType = " << value.deviceType << '\n';
1986 s << "\tdeviceName = " << (const char*)value.deviceName << '\n';
1987 s << "\tpipelineCacheUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.pipelineCacheUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.pipelineCacheUUID))) << '\n';
1988 s << "\tlimits = " << value.limits << '\n';
1989 s << "\tsparseProperties = " << value.sparseProperties << '\n';
1994 std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties& value)
1996 s << "VkQueueFamilyProperties = {\n";
1997 s << "\tqueueFlags = " << getQueueFlagsStr(value.queueFlags) << '\n';
1998 s << "\tqueueCount = " << value.queueCount << '\n';
1999 s << "\ttimestampValidBits = " << value.timestampValidBits << '\n';
2000 s << "\tminImageTransferGranularity = " << value.minImageTransferGranularity << '\n';
2005 std::ostream& operator<< (std::ostream& s, const VkMemoryType& value)
2007 s << "VkMemoryType = {\n";
2008 s << "\tpropertyFlags = " << getMemoryPropertyFlagsStr(value.propertyFlags) << '\n';
2009 s << "\theapIndex = " << value.heapIndex << '\n';
2014 std::ostream& operator<< (std::ostream& s, const VkMemoryHeap& value)
2016 s << "VkMemoryHeap = {\n";
2017 s << "\tsize = " << value.size << '\n';
2018 s << "\tflags = " << getMemoryHeapFlagsStr(value.flags) << '\n';
2023 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties& value)
2025 s << "VkPhysicalDeviceMemoryProperties = {\n";
2026 s << "\tmemoryTypeCount = " << value.memoryTypeCount << '\n';
2027 s << "\tmemoryTypes = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryTypes), DE_ARRAY_BEGIN(value.memoryTypes) + value.memoryTypeCount) << '\n';
2028 s << "\tmemoryHeapCount = " << value.memoryHeapCount << '\n';
2029 s << "\tmemoryHeaps = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.memoryHeaps), DE_ARRAY_BEGIN(value.memoryHeaps) + value.memoryHeapCount) << '\n';
2034 std::ostream& operator<< (std::ostream& s, const VkDeviceQueueCreateInfo& value)
2036 s << "VkDeviceQueueCreateInfo = {\n";
2037 s << "\tsType = " << value.sType << '\n';
2038 s << "\tpNext = " << value.pNext << '\n';
2039 s << "\tflags = " << getDeviceQueueCreateFlagsStr(value.flags) << '\n';
2040 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n';
2041 s << "\tqueueCount = " << value.queueCount << '\n';
2042 s << "\tpQueuePriorities = " << value.pQueuePriorities << '\n';
2047 std::ostream& operator<< (std::ostream& s, const VkDeviceCreateInfo& value)
2049 s << "VkDeviceCreateInfo = {\n";
2050 s << "\tsType = " << value.sType << '\n';
2051 s << "\tpNext = " << value.pNext << '\n';
2052 s << "\tflags = " << getDeviceCreateFlagsStr(value.flags) << '\n';
2053 s << "\tqueueCreateInfoCount = " << value.queueCreateInfoCount << '\n';
2054 s << "\tpQueueCreateInfos = " << value.pQueueCreateInfos << '\n';
2055 s << "\tenabledLayerCount = " << value.enabledLayerCount << '\n';
2056 s << "\tppEnabledLayerNames = " << value.ppEnabledLayerNames << '\n';
2057 s << "\tenabledExtensionCount = " << value.enabledExtensionCount << '\n';
2058 s << "\tppEnabledExtensionNames = " << value.ppEnabledExtensionNames << '\n';
2059 s << "\tpEnabledFeatures = " << value.pEnabledFeatures << '\n';
2064 std::ostream& operator<< (std::ostream& s, const VkExtensionProperties& value)
2066 s << "VkExtensionProperties = {\n";
2067 s << "\textensionName = " << (const char*)value.extensionName << '\n';
2068 s << "\tspecVersion = " << value.specVersion << '\n';
2073 std::ostream& operator<< (std::ostream& s, const VkLayerProperties& value)
2075 s << "VkLayerProperties = {\n";
2076 s << "\tlayerName = " << (const char*)value.layerName << '\n';
2077 s << "\tspecVersion = " << value.specVersion << '\n';
2078 s << "\timplementationVersion = " << value.implementationVersion << '\n';
2079 s << "\tdescription = " << (const char*)value.description << '\n';
2084 std::ostream& operator<< (std::ostream& s, const VkSubmitInfo& value)
2086 s << "VkSubmitInfo = {\n";
2087 s << "\tsType = " << value.sType << '\n';
2088 s << "\tpNext = " << value.pNext << '\n';
2089 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n';
2090 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n';
2091 s << "\tpWaitDstStageMask = " << value.pWaitDstStageMask << '\n';
2092 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n';
2093 s << "\tpCommandBuffers = " << value.pCommandBuffers << '\n';
2094 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n';
2095 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n';
2100 std::ostream& operator<< (std::ostream& s, const VkMemoryAllocateInfo& value)
2102 s << "VkMemoryAllocateInfo = {\n";
2103 s << "\tsType = " << value.sType << '\n';
2104 s << "\tpNext = " << value.pNext << '\n';
2105 s << "\tallocationSize = " << value.allocationSize << '\n';
2106 s << "\tmemoryTypeIndex = " << value.memoryTypeIndex << '\n';
2111 std::ostream& operator<< (std::ostream& s, const VkMappedMemoryRange& value)
2113 s << "VkMappedMemoryRange = {\n";
2114 s << "\tsType = " << value.sType << '\n';
2115 s << "\tpNext = " << value.pNext << '\n';
2116 s << "\tmemory = " << value.memory << '\n';
2117 s << "\toffset = " << value.offset << '\n';
2118 s << "\tsize = " << value.size << '\n';
2123 std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements& value)
2125 s << "VkMemoryRequirements = {\n";
2126 s << "\tsize = " << value.size << '\n';
2127 s << "\talignment = " << value.alignment << '\n';
2128 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n';
2133 std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties& value)
2135 s << "VkSparseImageFormatProperties = {\n";
2136 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n';
2137 s << "\timageGranularity = " << value.imageGranularity << '\n';
2138 s << "\tflags = " << getSparseImageFormatFlagsStr(value.flags) << '\n';
2143 std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements& value)
2145 s << "VkSparseImageMemoryRequirements = {\n";
2146 s << "\tformatProperties = " << value.formatProperties << '\n';
2147 s << "\timageMipTailFirstLod = " << value.imageMipTailFirstLod << '\n';
2148 s << "\timageMipTailSize = " << value.imageMipTailSize << '\n';
2149 s << "\timageMipTailOffset = " << value.imageMipTailOffset << '\n';
2150 s << "\timageMipTailStride = " << value.imageMipTailStride << '\n';
2155 std::ostream& operator<< (std::ostream& s, const VkSparseMemoryBind& value)
2157 s << "VkSparseMemoryBind = {\n";
2158 s << "\tresourceOffset = " << value.resourceOffset << '\n';
2159 s << "\tsize = " << value.size << '\n';
2160 s << "\tmemory = " << value.memory << '\n';
2161 s << "\tmemoryOffset = " << value.memoryOffset << '\n';
2162 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n';
2167 std::ostream& operator<< (std::ostream& s, const VkSparseBufferMemoryBindInfo& value)
2169 s << "VkSparseBufferMemoryBindInfo = {\n";
2170 s << "\tbuffer = " << value.buffer << '\n';
2171 s << "\tbindCount = " << value.bindCount << '\n';
2172 s << "\tpBinds = " << value.pBinds << '\n';
2177 std::ostream& operator<< (std::ostream& s, const VkSparseImageOpaqueMemoryBindInfo& value)
2179 s << "VkSparseImageOpaqueMemoryBindInfo = {\n";
2180 s << "\timage = " << value.image << '\n';
2181 s << "\tbindCount = " << value.bindCount << '\n';
2182 s << "\tpBinds = " << value.pBinds << '\n';
2187 std::ostream& operator<< (std::ostream& s, const VkImageSubresource& value)
2189 s << "VkImageSubresource = {\n";
2190 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n';
2191 s << "\tmipLevel = " << value.mipLevel << '\n';
2192 s << "\tarrayLayer = " << value.arrayLayer << '\n';
2197 std::ostream& operator<< (std::ostream& s, const VkOffset3D& value)
2199 s << "VkOffset3D = {\n";
2200 s << "\tx = " << value.x << '\n';
2201 s << "\ty = " << value.y << '\n';
2202 s << "\tz = " << value.z << '\n';
2207 std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBind& value)
2209 s << "VkSparseImageMemoryBind = {\n";
2210 s << "\tsubresource = " << value.subresource << '\n';
2211 s << "\toffset = " << value.offset << '\n';
2212 s << "\textent = " << value.extent << '\n';
2213 s << "\tmemory = " << value.memory << '\n';
2214 s << "\tmemoryOffset = " << value.memoryOffset << '\n';
2215 s << "\tflags = " << getSparseMemoryBindFlagsStr(value.flags) << '\n';
2220 std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryBindInfo& value)
2222 s << "VkSparseImageMemoryBindInfo = {\n";
2223 s << "\timage = " << value.image << '\n';
2224 s << "\tbindCount = " << value.bindCount << '\n';
2225 s << "\tpBinds = " << value.pBinds << '\n';
2230 std::ostream& operator<< (std::ostream& s, const VkBindSparseInfo& value)
2232 s << "VkBindSparseInfo = {\n";
2233 s << "\tsType = " << value.sType << '\n';
2234 s << "\tpNext = " << value.pNext << '\n';
2235 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n';
2236 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n';
2237 s << "\tbufferBindCount = " << value.bufferBindCount << '\n';
2238 s << "\tpBufferBinds = " << value.pBufferBinds << '\n';
2239 s << "\timageOpaqueBindCount = " << value.imageOpaqueBindCount << '\n';
2240 s << "\tpImageOpaqueBinds = " << value.pImageOpaqueBinds << '\n';
2241 s << "\timageBindCount = " << value.imageBindCount << '\n';
2242 s << "\tpImageBinds = " << value.pImageBinds << '\n';
2243 s << "\tsignalSemaphoreCount = " << value.signalSemaphoreCount << '\n';
2244 s << "\tpSignalSemaphores = " << value.pSignalSemaphores << '\n';
2249 std::ostream& operator<< (std::ostream& s, const VkFenceCreateInfo& value)
2251 s << "VkFenceCreateInfo = {\n";
2252 s << "\tsType = " << value.sType << '\n';
2253 s << "\tpNext = " << value.pNext << '\n';
2254 s << "\tflags = " << getFenceCreateFlagsStr(value.flags) << '\n';
2259 std::ostream& operator<< (std::ostream& s, const VkSemaphoreCreateInfo& value)
2261 s << "VkSemaphoreCreateInfo = {\n";
2262 s << "\tsType = " << value.sType << '\n';
2263 s << "\tpNext = " << value.pNext << '\n';
2264 s << "\tflags = " << getSemaphoreCreateFlagsStr(value.flags) << '\n';
2269 std::ostream& operator<< (std::ostream& s, const VkEventCreateInfo& value)
2271 s << "VkEventCreateInfo = {\n";
2272 s << "\tsType = " << value.sType << '\n';
2273 s << "\tpNext = " << value.pNext << '\n';
2274 s << "\tflags = " << getEventCreateFlagsStr(value.flags) << '\n';
2279 std::ostream& operator<< (std::ostream& s, const VkQueryPoolCreateInfo& value)
2281 s << "VkQueryPoolCreateInfo = {\n";
2282 s << "\tsType = " << value.sType << '\n';
2283 s << "\tpNext = " << value.pNext << '\n';
2284 s << "\tflags = " << getQueryPoolCreateFlagsStr(value.flags) << '\n';
2285 s << "\tqueryType = " << value.queryType << '\n';
2286 s << "\tqueryCount = " << value.queryCount << '\n';
2287 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n';
2292 std::ostream& operator<< (std::ostream& s, const VkBufferCreateInfo& value)
2294 s << "VkBufferCreateInfo = {\n";
2295 s << "\tsType = " << value.sType << '\n';
2296 s << "\tpNext = " << value.pNext << '\n';
2297 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n';
2298 s << "\tsize = " << value.size << '\n';
2299 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n';
2300 s << "\tsharingMode = " << value.sharingMode << '\n';
2301 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n';
2302 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n';
2307 std::ostream& operator<< (std::ostream& s, const VkBufferViewCreateInfo& value)
2309 s << "VkBufferViewCreateInfo = {\n";
2310 s << "\tsType = " << value.sType << '\n';
2311 s << "\tpNext = " << value.pNext << '\n';
2312 s << "\tflags = " << getBufferViewCreateFlagsStr(value.flags) << '\n';
2313 s << "\tbuffer = " << value.buffer << '\n';
2314 s << "\tformat = " << value.format << '\n';
2315 s << "\toffset = " << value.offset << '\n';
2316 s << "\trange = " << value.range << '\n';
2321 std::ostream& operator<< (std::ostream& s, const VkImageCreateInfo& value)
2323 s << "VkImageCreateInfo = {\n";
2324 s << "\tsType = " << value.sType << '\n';
2325 s << "\tpNext = " << value.pNext << '\n';
2326 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n';
2327 s << "\timageType = " << value.imageType << '\n';
2328 s << "\tformat = " << value.format << '\n';
2329 s << "\textent = " << value.extent << '\n';
2330 s << "\tmipLevels = " << value.mipLevels << '\n';
2331 s << "\tarrayLayers = " << value.arrayLayers << '\n';
2332 s << "\tsamples = " << value.samples << '\n';
2333 s << "\ttiling = " << value.tiling << '\n';
2334 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n';
2335 s << "\tsharingMode = " << value.sharingMode << '\n';
2336 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n';
2337 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n';
2338 s << "\tinitialLayout = " << value.initialLayout << '\n';
2343 std::ostream& operator<< (std::ostream& s, const VkSubresourceLayout& value)
2345 s << "VkSubresourceLayout = {\n";
2346 s << "\toffset = " << value.offset << '\n';
2347 s << "\tsize = " << value.size << '\n';
2348 s << "\trowPitch = " << value.rowPitch << '\n';
2349 s << "\tarrayPitch = " << value.arrayPitch << '\n';
2350 s << "\tdepthPitch = " << value.depthPitch << '\n';
2355 std::ostream& operator<< (std::ostream& s, const VkComponentMapping& value)
2357 s << "VkComponentMapping = {\n";
2358 s << "\tr = " << value.r << '\n';
2359 s << "\tg = " << value.g << '\n';
2360 s << "\tb = " << value.b << '\n';
2361 s << "\ta = " << value.a << '\n';
2366 std::ostream& operator<< (std::ostream& s, const VkImageSubresourceRange& value)
2368 s << "VkImageSubresourceRange = {\n";
2369 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n';
2370 s << "\tbaseMipLevel = " << value.baseMipLevel << '\n';
2371 s << "\tlevelCount = " << value.levelCount << '\n';
2372 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n';
2373 s << "\tlayerCount = " << value.layerCount << '\n';
2378 std::ostream& operator<< (std::ostream& s, const VkImageViewCreateInfo& value)
2380 s << "VkImageViewCreateInfo = {\n";
2381 s << "\tsType = " << value.sType << '\n';
2382 s << "\tpNext = " << value.pNext << '\n';
2383 s << "\tflags = " << getImageViewCreateFlagsStr(value.flags) << '\n';
2384 s << "\timage = " << value.image << '\n';
2385 s << "\tviewType = " << value.viewType << '\n';
2386 s << "\tformat = " << value.format << '\n';
2387 s << "\tcomponents = " << value.components << '\n';
2388 s << "\tsubresourceRange = " << value.subresourceRange << '\n';
2393 std::ostream& operator<< (std::ostream& s, const VkShaderModuleCreateInfo& value)
2395 s << "VkShaderModuleCreateInfo = {\n";
2396 s << "\tsType = " << value.sType << '\n';
2397 s << "\tpNext = " << value.pNext << '\n';
2398 s << "\tflags = " << getShaderModuleCreateFlagsStr(value.flags) << '\n';
2399 s << "\tcodeSize = " << value.codeSize << '\n';
2400 s << "\tpCode = " << value.pCode << '\n';
2405 std::ostream& operator<< (std::ostream& s, const VkPipelineCacheCreateInfo& value)
2407 s << "VkPipelineCacheCreateInfo = {\n";
2408 s << "\tsType = " << value.sType << '\n';
2409 s << "\tpNext = " << value.pNext << '\n';
2410 s << "\tflags = " << getPipelineCacheCreateFlagsStr(value.flags) << '\n';
2411 s << "\tinitialDataSize = " << value.initialDataSize << '\n';
2412 s << "\tpInitialData = " << value.pInitialData << '\n';
2417 std::ostream& operator<< (std::ostream& s, const VkSpecializationMapEntry& value)
2419 s << "VkSpecializationMapEntry = {\n";
2420 s << "\tconstantID = " << value.constantID << '\n';
2421 s << "\toffset = " << value.offset << '\n';
2422 s << "\tsize = " << value.size << '\n';
2427 std::ostream& operator<< (std::ostream& s, const VkSpecializationInfo& value)
2429 s << "VkSpecializationInfo = {\n";
2430 s << "\tmapEntryCount = " << value.mapEntryCount << '\n';
2431 s << "\tpMapEntries = " << value.pMapEntries << '\n';
2432 s << "\tdataSize = " << value.dataSize << '\n';
2433 s << "\tpData = " << value.pData << '\n';
2438 std::ostream& operator<< (std::ostream& s, const VkPipelineShaderStageCreateInfo& value)
2440 s << "VkPipelineShaderStageCreateInfo = {\n";
2441 s << "\tsType = " << value.sType << '\n';
2442 s << "\tpNext = " << value.pNext << '\n';
2443 s << "\tflags = " << getPipelineShaderStageCreateFlagsStr(value.flags) << '\n';
2444 s << "\tstage = " << value.stage << '\n';
2445 s << "\tmodule = " << value.module << '\n';
2446 s << "\tpName = " << getCharPtrStr(value.pName) << '\n';
2447 s << "\tpSpecializationInfo = " << value.pSpecializationInfo << '\n';
2452 std::ostream& operator<< (std::ostream& s, const VkVertexInputBindingDescription& value)
2454 s << "VkVertexInputBindingDescription = {\n";
2455 s << "\tbinding = " << value.binding << '\n';
2456 s << "\tstride = " << value.stride << '\n';
2457 s << "\tinputRate = " << value.inputRate << '\n';
2462 std::ostream& operator<< (std::ostream& s, const VkVertexInputAttributeDescription& value)
2464 s << "VkVertexInputAttributeDescription = {\n";
2465 s << "\tlocation = " << value.location << '\n';
2466 s << "\tbinding = " << value.binding << '\n';
2467 s << "\tformat = " << value.format << '\n';
2468 s << "\toffset = " << value.offset << '\n';
2473 std::ostream& operator<< (std::ostream& s, const VkPipelineVertexInputStateCreateInfo& value)
2475 s << "VkPipelineVertexInputStateCreateInfo = {\n";
2476 s << "\tsType = " << value.sType << '\n';
2477 s << "\tpNext = " << value.pNext << '\n';
2478 s << "\tflags = " << getPipelineVertexInputStateCreateFlagsStr(value.flags) << '\n';
2479 s << "\tvertexBindingDescriptionCount = " << value.vertexBindingDescriptionCount << '\n';
2480 s << "\tpVertexBindingDescriptions = " << value.pVertexBindingDescriptions << '\n';
2481 s << "\tvertexAttributeDescriptionCount = " << value.vertexAttributeDescriptionCount << '\n';
2482 s << "\tpVertexAttributeDescriptions = " << value.pVertexAttributeDescriptions << '\n';
2487 std::ostream& operator<< (std::ostream& s, const VkPipelineInputAssemblyStateCreateInfo& value)
2489 s << "VkPipelineInputAssemblyStateCreateInfo = {\n";
2490 s << "\tsType = " << value.sType << '\n';
2491 s << "\tpNext = " << value.pNext << '\n';
2492 s << "\tflags = " << getPipelineInputAssemblyStateCreateFlagsStr(value.flags) << '\n';
2493 s << "\ttopology = " << value.topology << '\n';
2494 s << "\tprimitiveRestartEnable = " << value.primitiveRestartEnable << '\n';
2499 std::ostream& operator<< (std::ostream& s, const VkPipelineTessellationStateCreateInfo& value)
2501 s << "VkPipelineTessellationStateCreateInfo = {\n";
2502 s << "\tsType = " << value.sType << '\n';
2503 s << "\tpNext = " << value.pNext << '\n';
2504 s << "\tflags = " << getPipelineTessellationStateCreateFlagsStr(value.flags) << '\n';
2505 s << "\tpatchControlPoints = " << value.patchControlPoints << '\n';
2510 std::ostream& operator<< (std::ostream& s, const VkViewport& value)
2512 s << "VkViewport = {\n";
2513 s << "\tx = " << value.x << '\n';
2514 s << "\ty = " << value.y << '\n';
2515 s << "\twidth = " << value.width << '\n';
2516 s << "\theight = " << value.height << '\n';
2517 s << "\tminDepth = " << value.minDepth << '\n';
2518 s << "\tmaxDepth = " << value.maxDepth << '\n';
2523 std::ostream& operator<< (std::ostream& s, const VkOffset2D& value)
2525 s << "VkOffset2D = {\n";
2526 s << "\tx = " << value.x << '\n';
2527 s << "\ty = " << value.y << '\n';
2532 std::ostream& operator<< (std::ostream& s, const VkExtent2D& value)
2534 s << "VkExtent2D = {\n";
2535 s << "\twidth = " << value.width << '\n';
2536 s << "\theight = " << value.height << '\n';
2541 std::ostream& operator<< (std::ostream& s, const VkRect2D& value)
2543 s << "VkRect2D = {\n";
2544 s << "\toffset = " << value.offset << '\n';
2545 s << "\textent = " << value.extent << '\n';
2550 std::ostream& operator<< (std::ostream& s, const VkPipelineViewportStateCreateInfo& value)
2552 s << "VkPipelineViewportStateCreateInfo = {\n";
2553 s << "\tsType = " << value.sType << '\n';
2554 s << "\tpNext = " << value.pNext << '\n';
2555 s << "\tflags = " << getPipelineViewportStateCreateFlagsStr(value.flags) << '\n';
2556 s << "\tviewportCount = " << value.viewportCount << '\n';
2557 s << "\tpViewports = " << value.pViewports << '\n';
2558 s << "\tscissorCount = " << value.scissorCount << '\n';
2559 s << "\tpScissors = " << value.pScissors << '\n';
2564 std::ostream& operator<< (std::ostream& s, const VkPipelineRasterizationStateCreateInfo& value)
2566 s << "VkPipelineRasterizationStateCreateInfo = {\n";
2567 s << "\tsType = " << value.sType << '\n';
2568 s << "\tpNext = " << value.pNext << '\n';
2569 s << "\tflags = " << getPipelineRasterizationStateCreateFlagsStr(value.flags) << '\n';
2570 s << "\tdepthClampEnable = " << value.depthClampEnable << '\n';
2571 s << "\trasterizerDiscardEnable = " << value.rasterizerDiscardEnable << '\n';
2572 s << "\tpolygonMode = " << value.polygonMode << '\n';
2573 s << "\tcullMode = " << getCullModeFlagsStr(value.cullMode) << '\n';
2574 s << "\tfrontFace = " << value.frontFace << '\n';
2575 s << "\tdepthBiasEnable = " << value.depthBiasEnable << '\n';
2576 s << "\tdepthBiasConstantFactor = " << value.depthBiasConstantFactor << '\n';
2577 s << "\tdepthBiasClamp = " << value.depthBiasClamp << '\n';
2578 s << "\tdepthBiasSlopeFactor = " << value.depthBiasSlopeFactor << '\n';
2579 s << "\tlineWidth = " << value.lineWidth << '\n';
2584 std::ostream& operator<< (std::ostream& s, const VkPipelineMultisampleStateCreateInfo& value)
2586 s << "VkPipelineMultisampleStateCreateInfo = {\n";
2587 s << "\tsType = " << value.sType << '\n';
2588 s << "\tpNext = " << value.pNext << '\n';
2589 s << "\tflags = " << getPipelineMultisampleStateCreateFlagsStr(value.flags) << '\n';
2590 s << "\trasterizationSamples = " << value.rasterizationSamples << '\n';
2591 s << "\tsampleShadingEnable = " << value.sampleShadingEnable << '\n';
2592 s << "\tminSampleShading = " << value.minSampleShading << '\n';
2593 s << "\tpSampleMask = " << value.pSampleMask << '\n';
2594 s << "\talphaToCoverageEnable = " << value.alphaToCoverageEnable << '\n';
2595 s << "\talphaToOneEnable = " << value.alphaToOneEnable << '\n';
2600 std::ostream& operator<< (std::ostream& s, const VkStencilOpState& value)
2602 s << "VkStencilOpState = {\n";
2603 s << "\tfailOp = " << value.failOp << '\n';
2604 s << "\tpassOp = " << value.passOp << '\n';
2605 s << "\tdepthFailOp = " << value.depthFailOp << '\n';
2606 s << "\tcompareOp = " << value.compareOp << '\n';
2607 s << "\tcompareMask = " << value.compareMask << '\n';
2608 s << "\twriteMask = " << value.writeMask << '\n';
2609 s << "\treference = " << value.reference << '\n';
2614 std::ostream& operator<< (std::ostream& s, const VkPipelineDepthStencilStateCreateInfo& value)
2616 s << "VkPipelineDepthStencilStateCreateInfo = {\n";
2617 s << "\tsType = " << value.sType << '\n';
2618 s << "\tpNext = " << value.pNext << '\n';
2619 s << "\tflags = " << getPipelineDepthStencilStateCreateFlagsStr(value.flags) << '\n';
2620 s << "\tdepthTestEnable = " << value.depthTestEnable << '\n';
2621 s << "\tdepthWriteEnable = " << value.depthWriteEnable << '\n';
2622 s << "\tdepthCompareOp = " << value.depthCompareOp << '\n';
2623 s << "\tdepthBoundsTestEnable = " << value.depthBoundsTestEnable << '\n';
2624 s << "\tstencilTestEnable = " << value.stencilTestEnable << '\n';
2625 s << "\tfront = " << value.front << '\n';
2626 s << "\tback = " << value.back << '\n';
2627 s << "\tminDepthBounds = " << value.minDepthBounds << '\n';
2628 s << "\tmaxDepthBounds = " << value.maxDepthBounds << '\n';
2633 std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendAttachmentState& value)
2635 s << "VkPipelineColorBlendAttachmentState = {\n";
2636 s << "\tblendEnable = " << value.blendEnable << '\n';
2637 s << "\tsrcColorBlendFactor = " << value.srcColorBlendFactor << '\n';
2638 s << "\tdstColorBlendFactor = " << value.dstColorBlendFactor << '\n';
2639 s << "\tcolorBlendOp = " << value.colorBlendOp << '\n';
2640 s << "\tsrcAlphaBlendFactor = " << value.srcAlphaBlendFactor << '\n';
2641 s << "\tdstAlphaBlendFactor = " << value.dstAlphaBlendFactor << '\n';
2642 s << "\talphaBlendOp = " << value.alphaBlendOp << '\n';
2643 s << "\tcolorWriteMask = " << getColorComponentFlagsStr(value.colorWriteMask) << '\n';
2648 std::ostream& operator<< (std::ostream& s, const VkPipelineColorBlendStateCreateInfo& value)
2650 s << "VkPipelineColorBlendStateCreateInfo = {\n";
2651 s << "\tsType = " << value.sType << '\n';
2652 s << "\tpNext = " << value.pNext << '\n';
2653 s << "\tflags = " << getPipelineColorBlendStateCreateFlagsStr(value.flags) << '\n';
2654 s << "\tlogicOpEnable = " << value.logicOpEnable << '\n';
2655 s << "\tlogicOp = " << value.logicOp << '\n';
2656 s << "\tattachmentCount = " << value.attachmentCount << '\n';
2657 s << "\tpAttachments = " << value.pAttachments << '\n';
2658 s << "\tblendConstants = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.blendConstants), DE_ARRAY_END(value.blendConstants)) << '\n';
2663 std::ostream& operator<< (std::ostream& s, const VkPipelineDynamicStateCreateInfo& value)
2665 s << "VkPipelineDynamicStateCreateInfo = {\n";
2666 s << "\tsType = " << value.sType << '\n';
2667 s << "\tpNext = " << value.pNext << '\n';
2668 s << "\tflags = " << getPipelineDynamicStateCreateFlagsStr(value.flags) << '\n';
2669 s << "\tdynamicStateCount = " << value.dynamicStateCount << '\n';
2670 s << "\tpDynamicStates = " << value.pDynamicStates << '\n';
2675 std::ostream& operator<< (std::ostream& s, const VkGraphicsPipelineCreateInfo& value)
2677 s << "VkGraphicsPipelineCreateInfo = {\n";
2678 s << "\tsType = " << value.sType << '\n';
2679 s << "\tpNext = " << value.pNext << '\n';
2680 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n';
2681 s << "\tstageCount = " << value.stageCount << '\n';
2682 s << "\tpStages = " << value.pStages << '\n';
2683 s << "\tpVertexInputState = " << value.pVertexInputState << '\n';
2684 s << "\tpInputAssemblyState = " << value.pInputAssemblyState << '\n';
2685 s << "\tpTessellationState = " << value.pTessellationState << '\n';
2686 s << "\tpViewportState = " << value.pViewportState << '\n';
2687 s << "\tpRasterizationState = " << value.pRasterizationState << '\n';
2688 s << "\tpMultisampleState = " << value.pMultisampleState << '\n';
2689 s << "\tpDepthStencilState = " << value.pDepthStencilState << '\n';
2690 s << "\tpColorBlendState = " << value.pColorBlendState << '\n';
2691 s << "\tpDynamicState = " << value.pDynamicState << '\n';
2692 s << "\tlayout = " << value.layout << '\n';
2693 s << "\trenderPass = " << value.renderPass << '\n';
2694 s << "\tsubpass = " << value.subpass << '\n';
2695 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n';
2696 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n';
2701 std::ostream& operator<< (std::ostream& s, const VkComputePipelineCreateInfo& value)
2703 s << "VkComputePipelineCreateInfo = {\n";
2704 s << "\tsType = " << value.sType << '\n';
2705 s << "\tpNext = " << value.pNext << '\n';
2706 s << "\tflags = " << getPipelineCreateFlagsStr(value.flags) << '\n';
2707 s << "\tstage = " << value.stage << '\n';
2708 s << "\tlayout = " << value.layout << '\n';
2709 s << "\tbasePipelineHandle = " << value.basePipelineHandle << '\n';
2710 s << "\tbasePipelineIndex = " << value.basePipelineIndex << '\n';
2715 std::ostream& operator<< (std::ostream& s, const VkPushConstantRange& value)
2717 s << "VkPushConstantRange = {\n";
2718 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n';
2719 s << "\toffset = " << value.offset << '\n';
2720 s << "\tsize = " << value.size << '\n';
2725 std::ostream& operator<< (std::ostream& s, const VkPipelineLayoutCreateInfo& value)
2727 s << "VkPipelineLayoutCreateInfo = {\n";
2728 s << "\tsType = " << value.sType << '\n';
2729 s << "\tpNext = " << value.pNext << '\n';
2730 s << "\tflags = " << getPipelineLayoutCreateFlagsStr(value.flags) << '\n';
2731 s << "\tsetLayoutCount = " << value.setLayoutCount << '\n';
2732 s << "\tpSetLayouts = " << value.pSetLayouts << '\n';
2733 s << "\tpushConstantRangeCount = " << value.pushConstantRangeCount << '\n';
2734 s << "\tpPushConstantRanges = " << value.pPushConstantRanges << '\n';
2739 std::ostream& operator<< (std::ostream& s, const VkSamplerCreateInfo& value)
2741 s << "VkSamplerCreateInfo = {\n";
2742 s << "\tsType = " << value.sType << '\n';
2743 s << "\tpNext = " << value.pNext << '\n';
2744 s << "\tflags = " << getSamplerCreateFlagsStr(value.flags) << '\n';
2745 s << "\tmagFilter = " << value.magFilter << '\n';
2746 s << "\tminFilter = " << value.minFilter << '\n';
2747 s << "\tmipmapMode = " << value.mipmapMode << '\n';
2748 s << "\taddressModeU = " << value.addressModeU << '\n';
2749 s << "\taddressModeV = " << value.addressModeV << '\n';
2750 s << "\taddressModeW = " << value.addressModeW << '\n';
2751 s << "\tmipLodBias = " << value.mipLodBias << '\n';
2752 s << "\tanisotropyEnable = " << value.anisotropyEnable << '\n';
2753 s << "\tmaxAnisotropy = " << value.maxAnisotropy << '\n';
2754 s << "\tcompareEnable = " << value.compareEnable << '\n';
2755 s << "\tcompareOp = " << value.compareOp << '\n';
2756 s << "\tminLod = " << value.minLod << '\n';
2757 s << "\tmaxLod = " << value.maxLod << '\n';
2758 s << "\tborderColor = " << value.borderColor << '\n';
2759 s << "\tunnormalizedCoordinates = " << value.unnormalizedCoordinates << '\n';
2764 std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutBinding& value)
2766 s << "VkDescriptorSetLayoutBinding = {\n";
2767 s << "\tbinding = " << value.binding << '\n';
2768 s << "\tdescriptorType = " << value.descriptorType << '\n';
2769 s << "\tdescriptorCount = " << value.descriptorCount << '\n';
2770 s << "\tstageFlags = " << getShaderStageFlagsStr(value.stageFlags) << '\n';
2771 s << "\tpImmutableSamplers = " << value.pImmutableSamplers << '\n';
2776 std::ostream& operator<< (std::ostream& s, const VkDescriptorSetLayoutCreateInfo& value)
2778 s << "VkDescriptorSetLayoutCreateInfo = {\n";
2779 s << "\tsType = " << value.sType << '\n';
2780 s << "\tpNext = " << value.pNext << '\n';
2781 s << "\tflags = " << getDescriptorSetLayoutCreateFlagsStr(value.flags) << '\n';
2782 s << "\tbindingCount = " << value.bindingCount << '\n';
2783 s << "\tpBindings = " << value.pBindings << '\n';
2788 std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolSize& value)
2790 s << "VkDescriptorPoolSize = {\n";
2791 s << "\ttype = " << value.type << '\n';
2792 s << "\tdescriptorCount = " << value.descriptorCount << '\n';
2797 std::ostream& operator<< (std::ostream& s, const VkDescriptorPoolCreateInfo& value)
2799 s << "VkDescriptorPoolCreateInfo = {\n";
2800 s << "\tsType = " << value.sType << '\n';
2801 s << "\tpNext = " << value.pNext << '\n';
2802 s << "\tflags = " << getDescriptorPoolCreateFlagsStr(value.flags) << '\n';
2803 s << "\tmaxSets = " << value.maxSets << '\n';
2804 s << "\tpoolSizeCount = " << value.poolSizeCount << '\n';
2805 s << "\tpPoolSizes = " << value.pPoolSizes << '\n';
2810 std::ostream& operator<< (std::ostream& s, const VkDescriptorSetAllocateInfo& value)
2812 s << "VkDescriptorSetAllocateInfo = {\n";
2813 s << "\tsType = " << value.sType << '\n';
2814 s << "\tpNext = " << value.pNext << '\n';
2815 s << "\tdescriptorPool = " << value.descriptorPool << '\n';
2816 s << "\tdescriptorSetCount = " << value.descriptorSetCount << '\n';
2817 s << "\tpSetLayouts = " << value.pSetLayouts << '\n';
2822 std::ostream& operator<< (std::ostream& s, const VkDescriptorImageInfo& value)
2824 s << "VkDescriptorImageInfo = {\n";
2825 s << "\tsampler = " << value.sampler << '\n';
2826 s << "\timageView = " << value.imageView << '\n';
2827 s << "\timageLayout = " << value.imageLayout << '\n';
2832 std::ostream& operator<< (std::ostream& s, const VkDescriptorBufferInfo& value)
2834 s << "VkDescriptorBufferInfo = {\n";
2835 s << "\tbuffer = " << value.buffer << '\n';
2836 s << "\toffset = " << value.offset << '\n';
2837 s << "\trange = " << value.range << '\n';
2842 std::ostream& operator<< (std::ostream& s, const VkWriteDescriptorSet& value)
2844 s << "VkWriteDescriptorSet = {\n";
2845 s << "\tsType = " << value.sType << '\n';
2846 s << "\tpNext = " << value.pNext << '\n';
2847 s << "\tdstSet = " << value.dstSet << '\n';
2848 s << "\tdstBinding = " << value.dstBinding << '\n';
2849 s << "\tdstArrayElement = " << value.dstArrayElement << '\n';
2850 s << "\tdescriptorCount = " << value.descriptorCount << '\n';
2851 s << "\tdescriptorType = " << value.descriptorType << '\n';
2852 s << "\tpImageInfo = " << value.pImageInfo << '\n';
2853 s << "\tpBufferInfo = " << value.pBufferInfo << '\n';
2854 s << "\tpTexelBufferView = " << value.pTexelBufferView << '\n';
2859 std::ostream& operator<< (std::ostream& s, const VkCopyDescriptorSet& value)
2861 s << "VkCopyDescriptorSet = {\n";
2862 s << "\tsType = " << value.sType << '\n';
2863 s << "\tpNext = " << value.pNext << '\n';
2864 s << "\tsrcSet = " << value.srcSet << '\n';
2865 s << "\tsrcBinding = " << value.srcBinding << '\n';
2866 s << "\tsrcArrayElement = " << value.srcArrayElement << '\n';
2867 s << "\tdstSet = " << value.dstSet << '\n';
2868 s << "\tdstBinding = " << value.dstBinding << '\n';
2869 s << "\tdstArrayElement = " << value.dstArrayElement << '\n';
2870 s << "\tdescriptorCount = " << value.descriptorCount << '\n';
2875 std::ostream& operator<< (std::ostream& s, const VkFramebufferCreateInfo& value)
2877 s << "VkFramebufferCreateInfo = {\n";
2878 s << "\tsType = " << value.sType << '\n';
2879 s << "\tpNext = " << value.pNext << '\n';
2880 s << "\tflags = " << getFramebufferCreateFlagsStr(value.flags) << '\n';
2881 s << "\trenderPass = " << value.renderPass << '\n';
2882 s << "\tattachmentCount = " << value.attachmentCount << '\n';
2883 s << "\tpAttachments = " << value.pAttachments << '\n';
2884 s << "\twidth = " << value.width << '\n';
2885 s << "\theight = " << value.height << '\n';
2886 s << "\tlayers = " << value.layers << '\n';
2891 std::ostream& operator<< (std::ostream& s, const VkAttachmentDescription& value)
2893 s << "VkAttachmentDescription = {\n";
2894 s << "\tflags = " << getAttachmentDescriptionFlagsStr(value.flags) << '\n';
2895 s << "\tformat = " << value.format << '\n';
2896 s << "\tsamples = " << value.samples << '\n';
2897 s << "\tloadOp = " << value.loadOp << '\n';
2898 s << "\tstoreOp = " << value.storeOp << '\n';
2899 s << "\tstencilLoadOp = " << value.stencilLoadOp << '\n';
2900 s << "\tstencilStoreOp = " << value.stencilStoreOp << '\n';
2901 s << "\tinitialLayout = " << value.initialLayout << '\n';
2902 s << "\tfinalLayout = " << value.finalLayout << '\n';
2907 std::ostream& operator<< (std::ostream& s, const VkAttachmentReference& value)
2909 s << "VkAttachmentReference = {\n";
2910 s << "\tattachment = " << value.attachment << '\n';
2911 s << "\tlayout = " << value.layout << '\n';
2916 std::ostream& operator<< (std::ostream& s, const VkSubpassDescription& value)
2918 s << "VkSubpassDescription = {\n";
2919 s << "\tflags = " << getSubpassDescriptionFlagsStr(value.flags) << '\n';
2920 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
2921 s << "\tinputAttachmentCount = " << value.inputAttachmentCount << '\n';
2922 s << "\tpInputAttachments = " << value.pInputAttachments << '\n';
2923 s << "\tcolorAttachmentCount = " << value.colorAttachmentCount << '\n';
2924 s << "\tpColorAttachments = " << value.pColorAttachments << '\n';
2925 s << "\tpResolveAttachments = " << value.pResolveAttachments << '\n';
2926 s << "\tpDepthStencilAttachment = " << value.pDepthStencilAttachment << '\n';
2927 s << "\tpreserveAttachmentCount = " << value.preserveAttachmentCount << '\n';
2928 s << "\tpPreserveAttachments = " << value.pPreserveAttachments << '\n';
2933 std::ostream& operator<< (std::ostream& s, const VkSubpassDependency& value)
2935 s << "VkSubpassDependency = {\n";
2936 s << "\tsrcSubpass = " << value.srcSubpass << '\n';
2937 s << "\tdstSubpass = " << value.dstSubpass << '\n';
2938 s << "\tsrcStageMask = " << getPipelineStageFlagsStr(value.srcStageMask) << '\n';
2939 s << "\tdstStageMask = " << getPipelineStageFlagsStr(value.dstStageMask) << '\n';
2940 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n';
2941 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n';
2942 s << "\tdependencyFlags = " << getDependencyFlagsStr(value.dependencyFlags) << '\n';
2947 std::ostream& operator<< (std::ostream& s, const VkRenderPassCreateInfo& value)
2949 s << "VkRenderPassCreateInfo = {\n";
2950 s << "\tsType = " << value.sType << '\n';
2951 s << "\tpNext = " << value.pNext << '\n';
2952 s << "\tflags = " << getRenderPassCreateFlagsStr(value.flags) << '\n';
2953 s << "\tattachmentCount = " << value.attachmentCount << '\n';
2954 s << "\tpAttachments = " << value.pAttachments << '\n';
2955 s << "\tsubpassCount = " << value.subpassCount << '\n';
2956 s << "\tpSubpasses = " << value.pSubpasses << '\n';
2957 s << "\tdependencyCount = " << value.dependencyCount << '\n';
2958 s << "\tpDependencies = " << value.pDependencies << '\n';
2963 std::ostream& operator<< (std::ostream& s, const VkCommandPoolCreateInfo& value)
2965 s << "VkCommandPoolCreateInfo = {\n";
2966 s << "\tsType = " << value.sType << '\n';
2967 s << "\tpNext = " << value.pNext << '\n';
2968 s << "\tflags = " << getCommandPoolCreateFlagsStr(value.flags) << '\n';
2969 s << "\tqueueFamilyIndex = " << value.queueFamilyIndex << '\n';
2974 std::ostream& operator<< (std::ostream& s, const VkCommandBufferAllocateInfo& value)
2976 s << "VkCommandBufferAllocateInfo = {\n";
2977 s << "\tsType = " << value.sType << '\n';
2978 s << "\tpNext = " << value.pNext << '\n';
2979 s << "\tcommandPool = " << value.commandPool << '\n';
2980 s << "\tlevel = " << value.level << '\n';
2981 s << "\tcommandBufferCount = " << value.commandBufferCount << '\n';
2986 std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceInfo& value)
2988 s << "VkCommandBufferInheritanceInfo = {\n";
2989 s << "\tsType = " << value.sType << '\n';
2990 s << "\tpNext = " << value.pNext << '\n';
2991 s << "\trenderPass = " << value.renderPass << '\n';
2992 s << "\tsubpass = " << value.subpass << '\n';
2993 s << "\tframebuffer = " << value.framebuffer << '\n';
2994 s << "\tocclusionQueryEnable = " << value.occlusionQueryEnable << '\n';
2995 s << "\tqueryFlags = " << getQueryControlFlagsStr(value.queryFlags) << '\n';
2996 s << "\tpipelineStatistics = " << getQueryPipelineStatisticFlagsStr(value.pipelineStatistics) << '\n';
3001 std::ostream& operator<< (std::ostream& s, const VkCommandBufferBeginInfo& value)
3003 s << "VkCommandBufferBeginInfo = {\n";
3004 s << "\tsType = " << value.sType << '\n';
3005 s << "\tpNext = " << value.pNext << '\n';
3006 s << "\tflags = " << getCommandBufferUsageFlagsStr(value.flags) << '\n';
3007 s << "\tpInheritanceInfo = " << value.pInheritanceInfo << '\n';
3012 std::ostream& operator<< (std::ostream& s, const VkBufferCopy& value)
3014 s << "VkBufferCopy = {\n";
3015 s << "\tsrcOffset = " << value.srcOffset << '\n';
3016 s << "\tdstOffset = " << value.dstOffset << '\n';
3017 s << "\tsize = " << value.size << '\n';
3022 std::ostream& operator<< (std::ostream& s, const VkImageSubresourceLayers& value)
3024 s << "VkImageSubresourceLayers = {\n";
3025 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n';
3026 s << "\tmipLevel = " << value.mipLevel << '\n';
3027 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n';
3028 s << "\tlayerCount = " << value.layerCount << '\n';
3033 std::ostream& operator<< (std::ostream& s, const VkImageCopy& value)
3035 s << "VkImageCopy = {\n";
3036 s << "\tsrcSubresource = " << value.srcSubresource << '\n';
3037 s << "\tsrcOffset = " << value.srcOffset << '\n';
3038 s << "\tdstSubresource = " << value.dstSubresource << '\n';
3039 s << "\tdstOffset = " << value.dstOffset << '\n';
3040 s << "\textent = " << value.extent << '\n';
3045 std::ostream& operator<< (std::ostream& s, const VkImageBlit& value)
3047 s << "VkImageBlit = {\n";
3048 s << "\tsrcSubresource = " << value.srcSubresource << '\n';
3049 s << "\tsrcOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.srcOffsets), DE_ARRAY_END(value.srcOffsets)) << '\n';
3050 s << "\tdstSubresource = " << value.dstSubresource << '\n';
3051 s << "\tdstOffsets = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.dstOffsets), DE_ARRAY_END(value.dstOffsets)) << '\n';
3056 std::ostream& operator<< (std::ostream& s, const VkBufferImageCopy& value)
3058 s << "VkBufferImageCopy = {\n";
3059 s << "\tbufferOffset = " << value.bufferOffset << '\n';
3060 s << "\tbufferRowLength = " << value.bufferRowLength << '\n';
3061 s << "\tbufferImageHeight = " << value.bufferImageHeight << '\n';
3062 s << "\timageSubresource = " << value.imageSubresource << '\n';
3063 s << "\timageOffset = " << value.imageOffset << '\n';
3064 s << "\timageExtent = " << value.imageExtent << '\n';
3069 std::ostream& operator<< (std::ostream& s, const VkClearColorValue& value)
3071 s << "VkClearColorValue = {\n";
3072 s << "\tfloat32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.float32), DE_ARRAY_END(value.float32)) << '\n';
3073 s << "\tint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.int32), DE_ARRAY_END(value.int32)) << '\n';
3074 s << "\tuint32 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.uint32), DE_ARRAY_END(value.uint32)) << '\n';
3079 std::ostream& operator<< (std::ostream& s, const VkClearDepthStencilValue& value)
3081 s << "VkClearDepthStencilValue = {\n";
3082 s << "\tdepth = " << value.depth << '\n';
3083 s << "\tstencil = " << value.stencil << '\n';
3088 std::ostream& operator<< (std::ostream& s, const VkClearValue& value)
3090 s << "VkClearValue = {\n";
3091 s << "\tcolor = " << value.color << '\n';
3092 s << "\tdepthStencil = " << value.depthStencil << '\n';
3097 std::ostream& operator<< (std::ostream& s, const VkClearAttachment& value)
3099 s << "VkClearAttachment = {\n";
3100 s << "\taspectMask = " << getImageAspectFlagsStr(value.aspectMask) << '\n';
3101 s << "\tcolorAttachment = " << value.colorAttachment << '\n';
3102 s << "\tclearValue = " << value.clearValue << '\n';
3107 std::ostream& operator<< (std::ostream& s, const VkClearRect& value)
3109 s << "VkClearRect = {\n";
3110 s << "\trect = " << value.rect << '\n';
3111 s << "\tbaseArrayLayer = " << value.baseArrayLayer << '\n';
3112 s << "\tlayerCount = " << value.layerCount << '\n';
3117 std::ostream& operator<< (std::ostream& s, const VkImageResolve& value)
3119 s << "VkImageResolve = {\n";
3120 s << "\tsrcSubresource = " << value.srcSubresource << '\n';
3121 s << "\tsrcOffset = " << value.srcOffset << '\n';
3122 s << "\tdstSubresource = " << value.dstSubresource << '\n';
3123 s << "\tdstOffset = " << value.dstOffset << '\n';
3124 s << "\textent = " << value.extent << '\n';
3129 std::ostream& operator<< (std::ostream& s, const VkMemoryBarrier& value)
3131 s << "VkMemoryBarrier = {\n";
3132 s << "\tsType = " << value.sType << '\n';
3133 s << "\tpNext = " << value.pNext << '\n';
3134 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n';
3135 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n';
3140 std::ostream& operator<< (std::ostream& s, const VkBufferMemoryBarrier& value)
3142 s << "VkBufferMemoryBarrier = {\n";
3143 s << "\tsType = " << value.sType << '\n';
3144 s << "\tpNext = " << value.pNext << '\n';
3145 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n';
3146 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n';
3147 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n';
3148 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n';
3149 s << "\tbuffer = " << value.buffer << '\n';
3150 s << "\toffset = " << value.offset << '\n';
3151 s << "\tsize = " << value.size << '\n';
3156 std::ostream& operator<< (std::ostream& s, const VkImageMemoryBarrier& value)
3158 s << "VkImageMemoryBarrier = {\n";
3159 s << "\tsType = " << value.sType << '\n';
3160 s << "\tpNext = " << value.pNext << '\n';
3161 s << "\tsrcAccessMask = " << getAccessFlagsStr(value.srcAccessMask) << '\n';
3162 s << "\tdstAccessMask = " << getAccessFlagsStr(value.dstAccessMask) << '\n';
3163 s << "\toldLayout = " << value.oldLayout << '\n';
3164 s << "\tnewLayout = " << value.newLayout << '\n';
3165 s << "\tsrcQueueFamilyIndex = " << value.srcQueueFamilyIndex << '\n';
3166 s << "\tdstQueueFamilyIndex = " << value.dstQueueFamilyIndex << '\n';
3167 s << "\timage = " << value.image << '\n';
3168 s << "\tsubresourceRange = " << value.subresourceRange << '\n';
3173 std::ostream& operator<< (std::ostream& s, const VkRenderPassBeginInfo& value)
3175 s << "VkRenderPassBeginInfo = {\n";
3176 s << "\tsType = " << value.sType << '\n';
3177 s << "\tpNext = " << value.pNext << '\n';
3178 s << "\trenderPass = " << value.renderPass << '\n';
3179 s << "\tframebuffer = " << value.framebuffer << '\n';
3180 s << "\trenderArea = " << value.renderArea << '\n';
3181 s << "\tclearValueCount = " << value.clearValueCount << '\n';
3182 s << "\tpClearValues = " << value.pClearValues << '\n';
3187 std::ostream& operator<< (std::ostream& s, const VkDispatchIndirectCommand& value)
3189 s << "VkDispatchIndirectCommand = {\n";
3190 s << "\tx = " << value.x << '\n';
3191 s << "\ty = " << value.y << '\n';
3192 s << "\tz = " << value.z << '\n';
3197 std::ostream& operator<< (std::ostream& s, const VkDrawIndexedIndirectCommand& value)
3199 s << "VkDrawIndexedIndirectCommand = {\n";
3200 s << "\tindexCount = " << value.indexCount << '\n';
3201 s << "\tinstanceCount = " << value.instanceCount << '\n';
3202 s << "\tfirstIndex = " << value.firstIndex << '\n';
3203 s << "\tvertexOffset = " << value.vertexOffset << '\n';
3204 s << "\tfirstInstance = " << value.firstInstance << '\n';
3209 std::ostream& operator<< (std::ostream& s, const VkDrawIndirectCommand& value)
3211 s << "VkDrawIndirectCommand = {\n";
3212 s << "\tvertexCount = " << value.vertexCount << '\n';
3213 s << "\tinstanceCount = " << value.instanceCount << '\n';
3214 s << "\tfirstVertex = " << value.firstVertex << '\n';
3215 s << "\tfirstInstance = " << value.firstInstance << '\n';
3220 std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesKHR& value)
3222 s << "VkSurfaceCapabilitiesKHR = {\n";
3223 s << "\tminImageCount = " << value.minImageCount << '\n';
3224 s << "\tmaxImageCount = " << value.maxImageCount << '\n';
3225 s << "\tcurrentExtent = " << value.currentExtent << '\n';
3226 s << "\tminImageExtent = " << value.minImageExtent << '\n';
3227 s << "\tmaxImageExtent = " << value.maxImageExtent << '\n';
3228 s << "\tmaxImageArrayLayers = " << value.maxImageArrayLayers << '\n';
3229 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n';
3230 s << "\tcurrentTransform = " << value.currentTransform << '\n';
3231 s << "\tsupportedCompositeAlpha = " << getCompositeAlphaFlagsKHRStr(value.supportedCompositeAlpha) << '\n';
3232 s << "\tsupportedUsageFlags = " << getImageUsageFlagsStr(value.supportedUsageFlags) << '\n';
3237 std::ostream& operator<< (std::ostream& s, const VkSurfaceFormatKHR& value)
3239 s << "VkSurfaceFormatKHR = {\n";
3240 s << "\tformat = " << value.format << '\n';
3241 s << "\tcolorSpace = " << value.colorSpace << '\n';
3246 std::ostream& operator<< (std::ostream& s, const VkSwapchainCreateInfoKHR& value)
3248 s << "VkSwapchainCreateInfoKHR = {\n";
3249 s << "\tsType = " << value.sType << '\n';
3250 s << "\tpNext = " << value.pNext << '\n';
3251 s << "\tflags = " << getSwapchainCreateFlagsKHRStr(value.flags) << '\n';
3252 s << "\tsurface = " << value.surface << '\n';
3253 s << "\tminImageCount = " << value.minImageCount << '\n';
3254 s << "\timageFormat = " << value.imageFormat << '\n';
3255 s << "\timageColorSpace = " << value.imageColorSpace << '\n';
3256 s << "\timageExtent = " << value.imageExtent << '\n';
3257 s << "\timageArrayLayers = " << value.imageArrayLayers << '\n';
3258 s << "\timageUsage = " << getImageUsageFlagsStr(value.imageUsage) << '\n';
3259 s << "\timageSharingMode = " << value.imageSharingMode << '\n';
3260 s << "\tqueueFamilyIndexCount = " << value.queueFamilyIndexCount << '\n';
3261 s << "\tpQueueFamilyIndices = " << value.pQueueFamilyIndices << '\n';
3262 s << "\tpreTransform = " << value.preTransform << '\n';
3263 s << "\tcompositeAlpha = " << value.compositeAlpha << '\n';
3264 s << "\tpresentMode = " << value.presentMode << '\n';
3265 s << "\tclipped = " << value.clipped << '\n';
3266 s << "\toldSwapchain = " << value.oldSwapchain << '\n';
3271 std::ostream& operator<< (std::ostream& s, const VkPresentInfoKHR& value)
3273 s << "VkPresentInfoKHR = {\n";
3274 s << "\tsType = " << value.sType << '\n';
3275 s << "\tpNext = " << value.pNext << '\n';
3276 s << "\twaitSemaphoreCount = " << value.waitSemaphoreCount << '\n';
3277 s << "\tpWaitSemaphores = " << value.pWaitSemaphores << '\n';
3278 s << "\tswapchainCount = " << value.swapchainCount << '\n';
3279 s << "\tpSwapchains = " << value.pSwapchains << '\n';
3280 s << "\tpImageIndices = " << value.pImageIndices << '\n';
3281 s << "\tpResults = " << value.pResults << '\n';
3286 std::ostream& operator<< (std::ostream& s, const VkDisplayPropertiesKHR& value)
3288 s << "VkDisplayPropertiesKHR = {\n";
3289 s << "\tdisplay = " << value.display << '\n';
3290 s << "\tdisplayName = " << getCharPtrStr(value.displayName) << '\n';
3291 s << "\tphysicalDimensions = " << value.physicalDimensions << '\n';
3292 s << "\tphysicalResolution = " << value.physicalResolution << '\n';
3293 s << "\tsupportedTransforms = " << getSurfaceTransformFlagsKHRStr(value.supportedTransforms) << '\n';
3294 s << "\tplaneReorderPossible = " << value.planeReorderPossible << '\n';
3295 s << "\tpersistentContent = " << value.persistentContent << '\n';
3300 std::ostream& operator<< (std::ostream& s, const VkDisplayModeParametersKHR& value)
3302 s << "VkDisplayModeParametersKHR = {\n";
3303 s << "\tvisibleRegion = " << value.visibleRegion << '\n';
3304 s << "\trefreshRate = " << value.refreshRate << '\n';
3309 std::ostream& operator<< (std::ostream& s, const VkDisplayModePropertiesKHR& value)
3311 s << "VkDisplayModePropertiesKHR = {\n";
3312 s << "\tdisplayMode = " << value.displayMode << '\n';
3313 s << "\tparameters = " << value.parameters << '\n';
3318 std::ostream& operator<< (std::ostream& s, const VkDisplayModeCreateInfoKHR& value)
3320 s << "VkDisplayModeCreateInfoKHR = {\n";
3321 s << "\tsType = " << value.sType << '\n';
3322 s << "\tpNext = " << value.pNext << '\n';
3323 s << "\tflags = " << getDisplayModeCreateFlagsKHRStr(value.flags) << '\n';
3324 s << "\tparameters = " << value.parameters << '\n';
3329 std::ostream& operator<< (std::ostream& s, const VkDisplayPlaneCapabilitiesKHR& value)
3331 s << "VkDisplayPlaneCapabilitiesKHR = {\n";
3332 s << "\tsupportedAlpha = " << getDisplayPlaneAlphaFlagsKHRStr(value.supportedAlpha) << '\n';
3333 s << "\tminSrcPosition = " << value.minSrcPosition << '\n';
3334 s << "\tmaxSrcPosition = " << value.maxSrcPosition << '\n';
3335 s << "\tminSrcExtent = " << value.minSrcExtent << '\n';
3336 s << "\tmaxSrcExtent = " << value.maxSrcExtent << '\n';
3337 s << "\tminDstPosition = " << value.minDstPosition << '\n';
3338 s << "\tmaxDstPosition = " << value.maxDstPosition << '\n';
3339 s << "\tminDstExtent = " << value.minDstExtent << '\n';
3340 s << "\tmaxDstExtent = " << value.maxDstExtent << '\n';
3345 std::ostream& operator<< (std::ostream& s, const VkDisplayPlanePropertiesKHR& value)
3347 s << "VkDisplayPlanePropertiesKHR = {\n";
3348 s << "\tcurrentDisplay = " << value.currentDisplay << '\n';
3349 s << "\tcurrentStackIndex = " << value.currentStackIndex << '\n';
3354 std::ostream& operator<< (std::ostream& s, const VkDisplaySurfaceCreateInfoKHR& value)
3356 s << "VkDisplaySurfaceCreateInfoKHR = {\n";
3357 s << "\tsType = " << value.sType << '\n';
3358 s << "\tpNext = " << value.pNext << '\n';
3359 s << "\tflags = " << getDisplaySurfaceCreateFlagsKHRStr(value.flags) << '\n';
3360 s << "\tdisplayMode = " << value.displayMode << '\n';
3361 s << "\tplaneIndex = " << value.planeIndex << '\n';
3362 s << "\tplaneStackIndex = " << value.planeStackIndex << '\n';
3363 s << "\ttransform = " << value.transform << '\n';
3364 s << "\tglobalAlpha = " << value.globalAlpha << '\n';
3365 s << "\talphaMode = " << value.alphaMode << '\n';
3366 s << "\timageExtent = " << value.imageExtent << '\n';
3371 std::ostream& operator<< (std::ostream& s, const VkDisplayPresentInfoKHR& value)
3373 s << "VkDisplayPresentInfoKHR = {\n";
3374 s << "\tsType = " << value.sType << '\n';
3375 s << "\tpNext = " << value.pNext << '\n';
3376 s << "\tsrcRect = " << value.srcRect << '\n';
3377 s << "\tdstRect = " << value.dstRect << '\n';
3378 s << "\tpersistent = " << value.persistent << '\n';
3383 std::ostream& operator<< (std::ostream& s, const VkXlibSurfaceCreateInfoKHR& value)
3385 s << "VkXlibSurfaceCreateInfoKHR = {\n";
3386 s << "\tsType = " << value.sType << '\n';
3387 s << "\tpNext = " << value.pNext << '\n';
3388 s << "\tflags = " << getXlibSurfaceCreateFlagsKHRStr(value.flags) << '\n';
3389 s << "\tdpy = " << value.dpy << '\n';
3390 s << "\twindow = " << value.window << '\n';
3395 std::ostream& operator<< (std::ostream& s, const VkXcbSurfaceCreateInfoKHR& value)
3397 s << "VkXcbSurfaceCreateInfoKHR = {\n";
3398 s << "\tsType = " << value.sType << '\n';
3399 s << "\tpNext = " << value.pNext << '\n';
3400 s << "\tflags = " << getXcbSurfaceCreateFlagsKHRStr(value.flags) << '\n';
3401 s << "\tconnection = " << value.connection << '\n';
3402 s << "\twindow = " << value.window << '\n';
3407 std::ostream& operator<< (std::ostream& s, const VkWaylandSurfaceCreateInfoKHR& value)
3409 s << "VkWaylandSurfaceCreateInfoKHR = {\n";
3410 s << "\tsType = " << value.sType << '\n';
3411 s << "\tpNext = " << value.pNext << '\n';
3412 s << "\tflags = " << getWaylandSurfaceCreateFlagsKHRStr(value.flags) << '\n';
3413 s << "\tdisplay = " << value.display << '\n';
3414 s << "\tsurface = " << value.surface << '\n';
3419 std::ostream& operator<< (std::ostream& s, const VkMirSurfaceCreateInfoKHR& value)
3421 s << "VkMirSurfaceCreateInfoKHR = {\n";
3422 s << "\tsType = " << value.sType << '\n';
3423 s << "\tpNext = " << value.pNext << '\n';
3424 s << "\tflags = " << getMirSurfaceCreateFlagsKHRStr(value.flags) << '\n';
3425 s << "\tconnection = " << value.connection << '\n';
3426 s << "\tmirSurface = " << value.mirSurface << '\n';
3431 std::ostream& operator<< (std::ostream& s, const VkAndroidSurfaceCreateInfoKHR& value)
3433 s << "VkAndroidSurfaceCreateInfoKHR = {\n";
3434 s << "\tsType = " << value.sType << '\n';
3435 s << "\tpNext = " << value.pNext << '\n';
3436 s << "\tflags = " << getAndroidSurfaceCreateFlagsKHRStr(value.flags) << '\n';
3437 s << "\twindow = " << value.window << '\n';
3442 std::ostream& operator<< (std::ostream& s, const VkWin32SurfaceCreateInfoKHR& value)
3444 s << "VkWin32SurfaceCreateInfoKHR = {\n";
3445 s << "\tsType = " << value.sType << '\n';
3446 s << "\tpNext = " << value.pNext << '\n';
3447 s << "\tflags = " << getWin32SurfaceCreateFlagsKHRStr(value.flags) << '\n';
3448 s << "\thinstance = " << value.hinstance << '\n';
3449 s << "\thwnd = " << value.hwnd << '\n';
3454 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFeatures2KHR& value)
3456 s << "VkPhysicalDeviceFeatures2KHR = {\n";
3457 s << "\tsType = " << value.sType << '\n';
3458 s << "\tpNext = " << value.pNext << '\n';
3459 s << "\tfeatures = " << value.features << '\n';
3464 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceProperties2KHR& value)
3466 s << "VkPhysicalDeviceProperties2KHR = {\n";
3467 s << "\tsType = " << value.sType << '\n';
3468 s << "\tpNext = " << value.pNext << '\n';
3469 s << "\tproperties = " << value.properties << '\n';
3474 std::ostream& operator<< (std::ostream& s, const VkFormatProperties2KHR& value)
3476 s << "VkFormatProperties2KHR = {\n";
3477 s << "\tsType = " << value.sType << '\n';
3478 s << "\tpNext = " << value.pNext << '\n';
3479 s << "\tformatProperties = " << value.formatProperties << '\n';
3484 std::ostream& operator<< (std::ostream& s, const VkImageFormatProperties2KHR& value)
3486 s << "VkImageFormatProperties2KHR = {\n";
3487 s << "\tsType = " << value.sType << '\n';
3488 s << "\tpNext = " << value.pNext << '\n';
3489 s << "\timageFormatProperties = " << value.imageFormatProperties << '\n';
3494 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImageFormatInfo2KHR& value)
3496 s << "VkPhysicalDeviceImageFormatInfo2KHR = {\n";
3497 s << "\tsType = " << value.sType << '\n';
3498 s << "\tpNext = " << value.pNext << '\n';
3499 s << "\tformat = " << value.format << '\n';
3500 s << "\ttype = " << value.type << '\n';
3501 s << "\ttiling = " << value.tiling << '\n';
3502 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n';
3503 s << "\tflags = " << getImageCreateFlagsStr(value.flags) << '\n';
3508 std::ostream& operator<< (std::ostream& s, const VkQueueFamilyProperties2KHR& value)
3510 s << "VkQueueFamilyProperties2KHR = {\n";
3511 s << "\tsType = " << value.sType << '\n';
3512 s << "\tpNext = " << value.pNext << '\n';
3513 s << "\tqueueFamilyProperties = " << value.queueFamilyProperties << '\n';
3518 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMemoryProperties2KHR& value)
3520 s << "VkPhysicalDeviceMemoryProperties2KHR = {\n";
3521 s << "\tsType = " << value.sType << '\n';
3522 s << "\tpNext = " << value.pNext << '\n';
3523 s << "\tmemoryProperties = " << value.memoryProperties << '\n';
3528 std::ostream& operator<< (std::ostream& s, const VkSparseImageFormatProperties2KHR& value)
3530 s << "VkSparseImageFormatProperties2KHR = {\n";
3531 s << "\tsType = " << value.sType << '\n';
3532 s << "\tpNext = " << value.pNext << '\n';
3533 s << "\tproperties = " << value.properties << '\n';
3538 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSparseImageFormatInfo2KHR& value)
3540 s << "VkPhysicalDeviceSparseImageFormatInfo2KHR = {\n";
3541 s << "\tsType = " << value.sType << '\n';
3542 s << "\tpNext = " << value.pNext << '\n';
3543 s << "\tformat = " << value.format << '\n';
3544 s << "\ttype = " << value.type << '\n';
3545 s << "\tsamples = " << value.samples << '\n';
3546 s << "\tusage = " << getImageUsageFlagsStr(value.usage) << '\n';
3547 s << "\ttiling = " << value.tiling << '\n';
3552 std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePushDescriptorPropertiesKHR& value)
3554 s << "VkPhysicalDevicePushDescriptorPropertiesKHR = {\n";
3555 s << "\tsType = " << value.sType << '\n';
3556 s << "\tpNext = " << value.pNext << '\n';
3557 s << "\tmaxPushDescriptors = " << value.maxPushDescriptors << '\n';
3562 std::ostream& operator<< (std::ostream& s, const VkPhysicalDevice16BitStorageFeaturesKHR& value)
3564 s << "VkPhysicalDevice16BitStorageFeaturesKHR = {\n";
3565 s << "\tsType = " << value.sType << '\n';
3566 s << "\tpNext = " << value.pNext << '\n';
3567 s << "\tstorageBuffer16BitAccess = " << value.storageBuffer16BitAccess << '\n';
3568 s << "\tuniformAndStorageBuffer16BitAccess = " << value.uniformAndStorageBuffer16BitAccess << '\n';
3569 s << "\tstoragePushConstant16 = " << value.storagePushConstant16 << '\n';
3570 s << "\tstorageInputOutput16 = " << value.storageInputOutput16 << '\n';
3575 std::ostream& operator<< (std::ostream& s, const VkRectLayerKHR& value)
3577 s << "VkRectLayerKHR = {\n";
3578 s << "\toffset = " << value.offset << '\n';
3579 s << "\textent = " << value.extent << '\n';
3580 s << "\tlayer = " << value.layer << '\n';
3585 std::ostream& operator<< (std::ostream& s, const VkPresentRegionKHR& value)
3587 s << "VkPresentRegionKHR = {\n";
3588 s << "\trectangleCount = " << value.rectangleCount << '\n';
3589 s << "\tpRectangles = " << value.pRectangles << '\n';
3594 std::ostream& operator<< (std::ostream& s, const VkPresentRegionsKHR& value)
3596 s << "VkPresentRegionsKHR = {\n";
3597 s << "\tsType = " << value.sType << '\n';
3598 s << "\tpNext = " << value.pNext << '\n';
3599 s << "\tswapchainCount = " << value.swapchainCount << '\n';
3600 s << "\tpRegions = " << value.pRegions << '\n';
3605 std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateEntryKHR& value)
3607 s << "VkDescriptorUpdateTemplateEntryKHR = {\n";
3608 s << "\tdstBinding = " << value.dstBinding << '\n';
3609 s << "\tdstArrayElement = " << value.dstArrayElement << '\n';
3610 s << "\tdescriptorCount = " << value.descriptorCount << '\n';
3611 s << "\tdescriptorType = " << value.descriptorType << '\n';
3612 s << "\toffset = " << value.offset << '\n';
3613 s << "\tstride = " << value.stride << '\n';
3618 std::ostream& operator<< (std::ostream& s, const VkDescriptorUpdateTemplateCreateInfoKHR& value)
3620 s << "VkDescriptorUpdateTemplateCreateInfoKHR = {\n";
3621 s << "\tsType = " << value.sType << '\n';
3622 s << "\tpNext = " << value.pNext << '\n';
3623 s << "\tflags = " << getDescriptorUpdateTemplateCreateFlagsKHRStr(value.flags) << '\n';
3624 s << "\tdescriptorUpdateEntryCount = " << value.descriptorUpdateEntryCount << '\n';
3625 s << "\tpDescriptorUpdateEntries = " << value.pDescriptorUpdateEntries << '\n';
3626 s << "\ttemplateType = " << value.templateType << '\n';
3627 s << "\tdescriptorSetLayout = " << value.descriptorSetLayout << '\n';
3628 s << "\tpipelineBindPoint = " << value.pipelineBindPoint << '\n';
3629 s << "\tpipelineLayout = " << value.pipelineLayout << '\n';
3630 s << "\tset = " << value.set << '\n';
3635 std::ostream& operator<< (std::ostream& s, const VkSharedPresentSurfaceCapabilitiesKHR& value)
3637 s << "VkSharedPresentSurfaceCapabilitiesKHR = {\n";
3638 s << "\tsType = " << value.sType << '\n';
3639 s << "\tpNext = " << value.pNext << '\n';
3640 s << "\tsharedPresentSupportedUsageFlags = " << getImageUsageFlagsStr(value.sharedPresentSupportedUsageFlags) << '\n';
3645 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSurfaceInfo2KHR& value)
3647 s << "VkPhysicalDeviceSurfaceInfo2KHR = {\n";
3648 s << "\tsType = " << value.sType << '\n';
3649 s << "\tpNext = " << value.pNext << '\n';
3650 s << "\tsurface = " << value.surface << '\n';
3655 std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilities2KHR& value)
3657 s << "VkSurfaceCapabilities2KHR = {\n";
3658 s << "\tsType = " << value.sType << '\n';
3659 s << "\tpNext = " << value.pNext << '\n';
3660 s << "\tsurfaceCapabilities = " << value.surfaceCapabilities << '\n';
3665 std::ostream& operator<< (std::ostream& s, const VkSurfaceFormat2KHR& value)
3667 s << "VkSurfaceFormat2KHR = {\n";
3668 s << "\tsType = " << value.sType << '\n';
3669 s << "\tpNext = " << value.pNext << '\n';
3670 s << "\tsurfaceFormat = " << value.surfaceFormat << '\n';
3675 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalFenceInfoKHR& value)
3677 s << "VkPhysicalDeviceExternalFenceInfoKHR = {\n";
3678 s << "\tsType = " << value.sType << '\n';
3679 s << "\tpNext = " << value.pNext << '\n';
3680 s << "\thandleType = " << value.handleType << '\n';
3685 std::ostream& operator<< (std::ostream& s, const VkExternalFencePropertiesKHR& value)
3687 s << "VkExternalFencePropertiesKHR = {\n";
3688 s << "\tsType = " << value.sType << '\n';
3689 s << "\tpNext = " << value.pNext << '\n';
3690 s << "\texportFromImportedHandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n';
3691 s << "\tcompatibleHandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n';
3692 s << "\texternalFenceFeatures = " << getExternalFenceFeatureFlagsKHRStr(value.externalFenceFeatures) << '\n';
3697 std::ostream& operator<< (std::ostream& s, const VkExportFenceCreateInfoKHR& value)
3699 s << "VkExportFenceCreateInfoKHR = {\n";
3700 s << "\tsType = " << value.sType << '\n';
3701 s << "\tpNext = " << value.pNext << '\n';
3702 s << "\thandleTypes = " << getExternalFenceHandleTypeFlagsKHRStr(value.handleTypes) << '\n';
3707 std::ostream& operator<< (std::ostream& s, const VkImportFenceWin32HandleInfoKHR& value)
3709 s << "VkImportFenceWin32HandleInfoKHR = {\n";
3710 s << "\tsType = " << value.sType << '\n';
3711 s << "\tpNext = " << value.pNext << '\n';
3712 s << "\tfence = " << value.fence << '\n';
3713 s << "\tflags = " << getFenceImportFlagsKHRStr(value.flags) << '\n';
3714 s << "\thandleType = " << value.handleType << '\n';
3715 s << "\thandle = " << value.handle << '\n';
3716 s << "\tname = " << getCharPtrStr(value.name) << '\n';
3721 std::ostream& operator<< (std::ostream& s, const VkExportFenceWin32HandleInfoKHR& value)
3723 s << "VkExportFenceWin32HandleInfoKHR = {\n";
3724 s << "\tsType = " << value.sType << '\n';
3725 s << "\tpNext = " << value.pNext << '\n';
3726 s << "\tpAttributes = " << value.pAttributes << '\n';
3727 s << "\tdwAccess = " << value.dwAccess << '\n';
3728 s << "\tname = " << getCharPtrStr(value.name) << '\n';
3733 std::ostream& operator<< (std::ostream& s, const VkFenceGetWin32HandleInfoKHR& value)
3735 s << "VkFenceGetWin32HandleInfoKHR = {\n";
3736 s << "\tsType = " << value.sType << '\n';
3737 s << "\tpNext = " << value.pNext << '\n';
3738 s << "\tfence = " << value.fence << '\n';
3739 s << "\thandleType = " << value.handleType << '\n';
3744 std::ostream& operator<< (std::ostream& s, const VkImportFenceFdInfoKHR& value)
3746 s << "VkImportFenceFdInfoKHR = {\n";
3747 s << "\tsType = " << value.sType << '\n';
3748 s << "\tpNext = " << value.pNext << '\n';
3749 s << "\tfence = " << value.fence << '\n';
3750 s << "\tflags = " << getFenceImportFlagsKHRStr(value.flags) << '\n';
3751 s << "\thandleType = " << value.handleType << '\n';
3752 s << "\tfd = " << value.fd << '\n';
3757 std::ostream& operator<< (std::ostream& s, const VkFenceGetFdInfoKHR& value)
3759 s << "VkFenceGetFdInfoKHR = {\n";
3760 s << "\tsType = " << value.sType << '\n';
3761 s << "\tpNext = " << value.pNext << '\n';
3762 s << "\tfence = " << value.fence << '\n';
3763 s << "\thandleType = " << value.handleType << '\n';
3768 std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedRequirementsKHR& value)
3770 s << "VkMemoryDedicatedRequirementsKHR = {\n";
3771 s << "\tsType = " << value.sType << '\n';
3772 s << "\tpNext = " << value.pNext << '\n';
3773 s << "\tprefersDedicatedAllocation = " << value.prefersDedicatedAllocation << '\n';
3774 s << "\trequiresDedicatedAllocation = " << value.requiresDedicatedAllocation << '\n';
3779 std::ostream& operator<< (std::ostream& s, const VkMemoryDedicatedAllocateInfoKHR& value)
3781 s << "VkMemoryDedicatedAllocateInfoKHR = {\n";
3782 s << "\tsType = " << value.sType << '\n';
3783 s << "\tpNext = " << value.pNext << '\n';
3784 s << "\timage = " << value.image << '\n';
3785 s << "\tbuffer = " << value.buffer << '\n';
3790 std::ostream& operator<< (std::ostream& s, const VkBufferMemoryRequirementsInfo2KHR& value)
3792 s << "VkBufferMemoryRequirementsInfo2KHR = {\n";
3793 s << "\tsType = " << value.sType << '\n';
3794 s << "\tpNext = " << value.pNext << '\n';
3795 s << "\tbuffer = " << value.buffer << '\n';
3800 std::ostream& operator<< (std::ostream& s, const VkImageMemoryRequirementsInfo2KHR& value)
3802 s << "VkImageMemoryRequirementsInfo2KHR = {\n";
3803 s << "\tsType = " << value.sType << '\n';
3804 s << "\tpNext = " << value.pNext << '\n';
3805 s << "\timage = " << value.image << '\n';
3810 std::ostream& operator<< (std::ostream& s, const VkImageSparseMemoryRequirementsInfo2KHR& value)
3812 s << "VkImageSparseMemoryRequirementsInfo2KHR = {\n";
3813 s << "\tsType = " << value.sType << '\n';
3814 s << "\tpNext = " << value.pNext << '\n';
3815 s << "\timage = " << value.image << '\n';
3820 std::ostream& operator<< (std::ostream& s, const VkMemoryRequirements2KHR& value)
3822 s << "VkMemoryRequirements2KHR = {\n";
3823 s << "\tsType = " << value.sType << '\n';
3824 s << "\tpNext = " << value.pNext << '\n';
3825 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n';
3830 std::ostream& operator<< (std::ostream& s, const VkSparseImageMemoryRequirements2KHR& value)
3832 s << "VkSparseImageMemoryRequirements2KHR = {\n";
3833 s << "\tsType = " << value.sType << '\n';
3834 s << "\tpNext = " << value.pNext << '\n';
3835 s << "\tmemoryRequirements = " << value.memoryRequirements << '\n';
3840 std::ostream& operator<< (std::ostream& s, const VkDebugReportCallbackCreateInfoEXT& value)
3842 s << "VkDebugReportCallbackCreateInfoEXT = {\n";
3843 s << "\tsType = " << value.sType << '\n';
3844 s << "\tpNext = " << value.pNext << '\n';
3845 s << "\tflags = " << getDebugReportFlagsEXTStr(value.flags) << '\n';
3846 s << "\tpfnCallback = " << value.pfnCallback << '\n';
3847 s << "\tpUserData = " << value.pUserData << '\n';
3852 std::ostream& operator<< (std::ostream& s, const VkRenderPassMultiviewCreateInfoKHX& value)
3854 s << "VkRenderPassMultiviewCreateInfoKHX = {\n";
3855 s << "\tsType = " << value.sType << '\n';
3856 s << "\tpNext = " << value.pNext << '\n';
3857 s << "\tsubpassCount = " << value.subpassCount << '\n';
3858 s << "\tpViewMasks = " << value.pViewMasks << '\n';
3859 s << "\tdependencyCount = " << value.dependencyCount << '\n';
3860 s << "\tpViewOffsets = " << value.pViewOffsets << '\n';
3861 s << "\tcorrelationMaskCount = " << value.correlationMaskCount << '\n';
3862 s << "\tpCorrelationMasks = " << value.pCorrelationMasks << '\n';
3867 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewFeaturesKHX& value)
3869 s << "VkPhysicalDeviceMultiviewFeaturesKHX = {\n";
3870 s << "\tsType = " << value.sType << '\n';
3871 s << "\tpNext = " << value.pNext << '\n';
3872 s << "\tmultiview = " << value.multiview << '\n';
3873 s << "\tmultiviewGeometryShader = " << value.multiviewGeometryShader << '\n';
3874 s << "\tmultiviewTessellationShader = " << value.multiviewTessellationShader << '\n';
3879 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultiviewPropertiesKHX& value)
3881 s << "VkPhysicalDeviceMultiviewPropertiesKHX = {\n";
3882 s << "\tsType = " << value.sType << '\n';
3883 s << "\tpNext = " << value.pNext << '\n';
3884 s << "\tmaxMultiviewViewCount = " << value.maxMultiviewViewCount << '\n';
3885 s << "\tmaxMultiviewInstanceIndex = " << value.maxMultiviewInstanceIndex << '\n';
3890 std::ostream& operator<< (std::ostream& s, const VkExternalMemoryPropertiesKHR& value)
3892 s << "VkExternalMemoryPropertiesKHR = {\n";
3893 s << "\texternalMemoryFeatures = " << getExternalMemoryFeatureFlagsKHRStr(value.externalMemoryFeatures) << '\n';
3894 s << "\texportFromImportedHandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n';
3895 s << "\tcompatibleHandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n';
3900 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalImageFormatInfoKHR& value)
3902 s << "VkPhysicalDeviceExternalImageFormatInfoKHR = {\n";
3903 s << "\tsType = " << value.sType << '\n';
3904 s << "\tpNext = " << value.pNext << '\n';
3905 s << "\thandleType = " << value.handleType << '\n';
3910 std::ostream& operator<< (std::ostream& s, const VkExternalImageFormatPropertiesKHR& value)
3912 s << "VkExternalImageFormatPropertiesKHR = {\n";
3913 s << "\tsType = " << value.sType << '\n';
3914 s << "\tpNext = " << value.pNext << '\n';
3915 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n';
3920 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalBufferInfoKHR& value)
3922 s << "VkPhysicalDeviceExternalBufferInfoKHR = {\n";
3923 s << "\tsType = " << value.sType << '\n';
3924 s << "\tpNext = " << value.pNext << '\n';
3925 s << "\tflags = " << getBufferCreateFlagsStr(value.flags) << '\n';
3926 s << "\tusage = " << getBufferUsageFlagsStr(value.usage) << '\n';
3927 s << "\thandleType = " << value.handleType << '\n';
3932 std::ostream& operator<< (std::ostream& s, const VkExternalBufferPropertiesKHR& value)
3934 s << "VkExternalBufferPropertiesKHR = {\n";
3935 s << "\tsType = " << value.sType << '\n';
3936 s << "\tpNext = " << value.pNext << '\n';
3937 s << "\texternalMemoryProperties = " << value.externalMemoryProperties << '\n';
3942 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceIDPropertiesKHR& value)
3944 s << "VkPhysicalDeviceIDPropertiesKHR = {\n";
3945 s << "\tsType = " << value.sType << '\n';
3946 s << "\tpNext = " << value.pNext << '\n';
3947 s << "\tdeviceUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceUUID))) << '\n';
3948 s << "\tdriverUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.driverUUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.driverUUID))) << '\n';
3949 s << "\tdeviceLUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<deUint8>(DE_ARRAY_BEGIN(value.deviceLUID)), tcu::Format::HexIterator<deUint8>(DE_ARRAY_END(value.deviceLUID))) << '\n';
3950 s << "\tdeviceNodeMask = " << value.deviceNodeMask << '\n';
3951 s << "\tdeviceLUIDValid = " << value.deviceLUIDValid << '\n';
3956 std::ostream& operator<< (std::ostream& s, const VkExternalMemoryImageCreateInfoKHR& value)
3958 s << "VkExternalMemoryImageCreateInfoKHR = {\n";
3959 s << "\tsType = " << value.sType << '\n';
3960 s << "\tpNext = " << value.pNext << '\n';
3961 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n';
3966 std::ostream& operator<< (std::ostream& s, const VkExternalMemoryBufferCreateInfoKHR& value)
3968 s << "VkExternalMemoryBufferCreateInfoKHR = {\n";
3969 s << "\tsType = " << value.sType << '\n';
3970 s << "\tpNext = " << value.pNext << '\n';
3971 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n';
3976 std::ostream& operator<< (std::ostream& s, const VkExportMemoryAllocateInfoKHR& value)
3978 s << "VkExportMemoryAllocateInfoKHR = {\n";
3979 s << "\tsType = " << value.sType << '\n';
3980 s << "\tpNext = " << value.pNext << '\n';
3981 s << "\thandleTypes = " << getExternalMemoryHandleTypeFlagsKHRStr(value.handleTypes) << '\n';
3986 std::ostream& operator<< (std::ostream& s, const VkImportMemoryWin32HandleInfoKHR& value)
3988 s << "VkImportMemoryWin32HandleInfoKHR = {\n";
3989 s << "\tsType = " << value.sType << '\n';
3990 s << "\tpNext = " << value.pNext << '\n';
3991 s << "\thandleType = " << value.handleType << '\n';
3992 s << "\thandle = " << value.handle << '\n';
3993 s << "\tname = " << getCharPtrStr(value.name) << '\n';
3998 std::ostream& operator<< (std::ostream& s, const VkExportMemoryWin32HandleInfoKHR& value)
4000 s << "VkExportMemoryWin32HandleInfoKHR = {\n";
4001 s << "\tsType = " << value.sType << '\n';
4002 s << "\tpNext = " << value.pNext << '\n';
4003 s << "\tpAttributes = " << value.pAttributes << '\n';
4004 s << "\tdwAccess = " << value.dwAccess << '\n';
4005 s << "\tname = " << getCharPtrStr(value.name) << '\n';
4010 std::ostream& operator<< (std::ostream& s, const VkMemoryWin32HandlePropertiesKHR& value)
4012 s << "VkMemoryWin32HandlePropertiesKHR = {\n";
4013 s << "\tsType = " << value.sType << '\n';
4014 s << "\tpNext = " << value.pNext << '\n';
4015 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n';
4020 std::ostream& operator<< (std::ostream& s, const VkMemoryGetWin32HandleInfoKHR& value)
4022 s << "VkMemoryGetWin32HandleInfoKHR = {\n";
4023 s << "\tsType = " << value.sType << '\n';
4024 s << "\tpNext = " << value.pNext << '\n';
4025 s << "\tmemory = " << value.memory << '\n';
4026 s << "\thandleType = " << value.handleType << '\n';
4031 std::ostream& operator<< (std::ostream& s, const VkImportMemoryFdInfoKHR& value)
4033 s << "VkImportMemoryFdInfoKHR = {\n";
4034 s << "\tsType = " << value.sType << '\n';
4035 s << "\tpNext = " << value.pNext << '\n';
4036 s << "\thandleType = " << value.handleType << '\n';
4037 s << "\tfd = " << value.fd << '\n';
4042 std::ostream& operator<< (std::ostream& s, const VkMemoryFdPropertiesKHR& value)
4044 s << "VkMemoryFdPropertiesKHR = {\n";
4045 s << "\tsType = " << value.sType << '\n';
4046 s << "\tpNext = " << value.pNext << '\n';
4047 s << "\tmemoryTypeBits = " << value.memoryTypeBits << '\n';
4052 std::ostream& operator<< (std::ostream& s, const VkMemoryGetFdInfoKHR& value)
4054 s << "VkMemoryGetFdInfoKHR = {\n";
4055 s << "\tsType = " << value.sType << '\n';
4056 s << "\tpNext = " << value.pNext << '\n';
4057 s << "\tmemory = " << value.memory << '\n';
4058 s << "\thandleType = " << value.handleType << '\n';
4063 std::ostream& operator<< (std::ostream& s, const VkWin32KeyedMutexAcquireReleaseInfoKHR& value)
4065 s << "VkWin32KeyedMutexAcquireReleaseInfoKHR = {\n";
4066 s << "\tsType = " << value.sType << '\n';
4067 s << "\tpNext = " << value.pNext << '\n';
4068 s << "\tacquireCount = " << value.acquireCount << '\n';
4069 s << "\tpAcquireSyncs = " << value.pAcquireSyncs << '\n';
4070 s << "\tpAcquireKeys = " << value.pAcquireKeys << '\n';
4071 s << "\tpAcquireTimeouts = " << value.pAcquireTimeouts << '\n';
4072 s << "\treleaseCount = " << value.releaseCount << '\n';
4073 s << "\tpReleaseSyncs = " << value.pReleaseSyncs << '\n';
4074 s << "\tpReleaseKeys = " << value.pReleaseKeys << '\n';
4079 std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExternalSemaphoreInfoKHR& value)
4081 s << "VkPhysicalDeviceExternalSemaphoreInfoKHR = {\n";
4082 s << "\tsType = " << value.sType << '\n';
4083 s << "\tpNext = " << value.pNext << '\n';
4084 s << "\thandleType = " << value.handleType << '\n';
4089 std::ostream& operator<< (std::ostream& s, const VkExternalSemaphorePropertiesKHR& value)
4091 s << "VkExternalSemaphorePropertiesKHR = {\n";
4092 s << "\tsType = " << value.sType << '\n';
4093 s << "\tpNext = " << value.pNext << '\n';
4094 s << "\texportFromImportedHandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.exportFromImportedHandleTypes) << '\n';
4095 s << "\tcompatibleHandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.compatibleHandleTypes) << '\n';
4096 s << "\texternalSemaphoreFeatures = " << getExternalSemaphoreFeatureFlagsKHRStr(value.externalSemaphoreFeatures) << '\n';
4101 std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreCreateInfoKHR& value)
4103 s << "VkExportSemaphoreCreateInfoKHR = {\n";
4104 s << "\tsType = " << value.sType << '\n';
4105 s << "\tpNext = " << value.pNext << '\n';
4106 s << "\thandleTypes = " << getExternalSemaphoreHandleTypeFlagsKHRStr(value.handleTypes) << '\n';
4111 std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreWin32HandleInfoKHR& value)
4113 s << "VkImportSemaphoreWin32HandleInfoKHR = {\n";
4114 s << "\tsType = " << value.sType << '\n';
4115 s << "\tpNext = " << value.pNext << '\n';
4116 s << "\tsemaphore = " << value.semaphore << '\n';
4117 s << "\tflags = " << getSemaphoreImportFlagsKHRStr(value.flags) << '\n';
4118 s << "\thandleType = " << value.handleType << '\n';
4119 s << "\thandle = " << value.handle << '\n';
4120 s << "\tname = " << getCharPtrStr(value.name) << '\n';
4125 std::ostream& operator<< (std::ostream& s, const VkExportSemaphoreWin32HandleInfoKHR& value)
4127 s << "VkExportSemaphoreWin32HandleInfoKHR = {\n";
4128 s << "\tsType = " << value.sType << '\n';
4129 s << "\tpNext = " << value.pNext << '\n';
4130 s << "\tpAttributes = " << value.pAttributes << '\n';
4131 s << "\tdwAccess = " << value.dwAccess << '\n';
4132 s << "\tname = " << getCharPtrStr(value.name) << '\n';
4137 std::ostream& operator<< (std::ostream& s, const VkD3D12FenceSubmitInfoKHR& value)
4139 s << "VkD3D12FenceSubmitInfoKHR = {\n";
4140 s << "\tsType = " << value.sType << '\n';
4141 s << "\tpNext = " << value.pNext << '\n';
4142 s << "\twaitSemaphoreValuesCount = " << value.waitSemaphoreValuesCount << '\n';
4143 s << "\tpWaitSemaphoreValues = " << value.pWaitSemaphoreValues << '\n';
4144 s << "\tsignalSemaphoreValuesCount = " << value.signalSemaphoreValuesCount << '\n';
4145 s << "\tpSignalSemaphoreValues = " << value.pSignalSemaphoreValues << '\n';
4150 std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetWin32HandleInfoKHR& value)
4152 s << "VkSemaphoreGetWin32HandleInfoKHR = {\n";
4153 s << "\tsType = " << value.sType << '\n';
4154 s << "\tpNext = " << value.pNext << '\n';
4155 s << "\tsemaphore = " << value.semaphore << '\n';
4156 s << "\thandleType = " << value.handleType << '\n';
4161 std::ostream& operator<< (std::ostream& s, const VkImportSemaphoreFdInfoKHR& value)
4163 s << "VkImportSemaphoreFdInfoKHR = {\n";
4164 s << "\tsType = " << value.sType << '\n';
4165 s << "\tpNext = " << value.pNext << '\n';
4166 s << "\tsemaphore = " << value.semaphore << '\n';
4167 s << "\tflags = " << getSemaphoreImportFlagsKHRStr(value.flags) << '\n';
4168 s << "\thandleType = " << value.handleType << '\n';
4169 s << "\tfd = " << value.fd << '\n';
4174 std::ostream& operator<< (std::ostream& s, const VkSemaphoreGetFdInfoKHR& value)
4176 s << "VkSemaphoreGetFdInfoKHR = {\n";
4177 s << "\tsType = " << value.sType << '\n';
4178 s << "\tpNext = " << value.pNext << '\n';
4179 s << "\tsemaphore = " << value.semaphore << '\n';
4180 s << "\thandleType = " << value.handleType << '\n';
4185 std::ostream& operator<< (std::ostream& s, const VkRefreshCycleDurationGOOGLE& value)
4187 s << "VkRefreshCycleDurationGOOGLE = {\n";
4188 s << "\trefreshDuration = " << value.refreshDuration << '\n';
4193 std::ostream& operator<< (std::ostream& s, const VkPastPresentationTimingGOOGLE& value)
4195 s << "VkPastPresentationTimingGOOGLE = {\n";
4196 s << "\tpresentID = " << value.presentID << '\n';
4197 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n';
4198 s << "\tactualPresentTime = " << value.actualPresentTime << '\n';
4199 s << "\tearliestPresentTime = " << value.earliestPresentTime << '\n';
4200 s << "\tpresentMargin = " << value.presentMargin << '\n';
4205 std::ostream& operator<< (std::ostream& s, const VkPresentTimeGOOGLE& value)
4207 s << "VkPresentTimeGOOGLE = {\n";
4208 s << "\tpresentID = " << value.presentID << '\n';
4209 s << "\tdesiredPresentTime = " << value.desiredPresentTime << '\n';
4214 std::ostream& operator<< (std::ostream& s, const VkPresentTimesInfoGOOGLE& value)
4216 s << "VkPresentTimesInfoGOOGLE = {\n";
4217 s << "\tsType = " << value.sType << '\n';
4218 s << "\tpNext = " << value.pNext << '\n';
4219 s << "\tswapchainCount = " << value.swapchainCount << '\n';
4220 s << "\tpTimes = " << value.pTimes << '\n';