• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* WARNING: This is auto-generated file. Do not modify, since changes will
2 * be lost! Modify the generating script instead.
3 * This file was generated by /scripts/gen_framework.py
4 */
5
6namespace refdetails
7{
8
9template<>
10void Deleter<VkDeviceMemory>::operator() (VkDeviceMemory obj) const
11{
12	m_deviceIface->freeMemory(m_device, obj, m_allocator);
13}
14
15template<>
16void Deleter<VkFence>::operator() (VkFence obj) const
17{
18	m_deviceIface->destroyFence(m_device, obj, m_allocator);
19}
20
21template<>
22void Deleter<VkSemaphore>::operator() (VkSemaphore obj) const
23{
24	m_deviceIface->destroySemaphore(m_device, obj, m_allocator);
25}
26
27template<>
28void Deleter<VkEvent>::operator() (VkEvent obj) const
29{
30	m_deviceIface->destroyEvent(m_device, obj, m_allocator);
31}
32
33template<>
34void Deleter<VkQueryPool>::operator() (VkQueryPool obj) const
35{
36	m_deviceIface->destroyQueryPool(m_device, obj, m_allocator);
37}
38
39template<>
40void Deleter<VkBuffer>::operator() (VkBuffer obj) const
41{
42	m_deviceIface->destroyBuffer(m_device, obj, m_allocator);
43}
44
45template<>
46void Deleter<VkBufferView>::operator() (VkBufferView obj) const
47{
48	m_deviceIface->destroyBufferView(m_device, obj, m_allocator);
49}
50
51template<>
52void Deleter<VkImage>::operator() (VkImage obj) const
53{
54	m_deviceIface->destroyImage(m_device, obj, m_allocator);
55}
56
57template<>
58void Deleter<VkImageView>::operator() (VkImageView obj) const
59{
60	m_deviceIface->destroyImageView(m_device, obj, m_allocator);
61}
62
63template<>
64void Deleter<VkShaderModule>::operator() (VkShaderModule obj) const
65{
66	m_deviceIface->destroyShaderModule(m_device, obj, m_allocator);
67}
68
69template<>
70void Deleter<VkPipelineCache>::operator() (VkPipelineCache obj) const
71{
72	m_deviceIface->destroyPipelineCache(m_device, obj, m_allocator);
73}
74
75template<>
76void Deleter<VkPipeline>::operator() (VkPipeline obj) const
77{
78	m_deviceIface->destroyPipeline(m_device, obj, m_allocator);
79}
80
81template<>
82void Deleter<VkPipelineLayout>::operator() (VkPipelineLayout obj) const
83{
84	m_deviceIface->destroyPipelineLayout(m_device, obj, m_allocator);
85}
86
87template<>
88void Deleter<VkSampler>::operator() (VkSampler obj) const
89{
90	m_deviceIface->destroySampler(m_device, obj, m_allocator);
91}
92
93template<>
94void Deleter<VkDescriptorSetLayout>::operator() (VkDescriptorSetLayout obj) const
95{
96	m_deviceIface->destroyDescriptorSetLayout(m_device, obj, m_allocator);
97}
98
99template<>
100void Deleter<VkDescriptorPool>::operator() (VkDescriptorPool obj) const
101{
102	m_deviceIface->destroyDescriptorPool(m_device, obj, m_allocator);
103}
104
105template<>
106void Deleter<VkFramebuffer>::operator() (VkFramebuffer obj) const
107{
108	m_deviceIface->destroyFramebuffer(m_device, obj, m_allocator);
109}
110
111template<>
112void Deleter<VkRenderPass>::operator() (VkRenderPass obj) const
113{
114	m_deviceIface->destroyRenderPass(m_device, obj, m_allocator);
115}
116
117template<>
118void Deleter<VkCommandPool>::operator() (VkCommandPool obj) const
119{
120	m_deviceIface->destroyCommandPool(m_device, obj, m_allocator);
121}
122
123template<>
124void Deleter<VkSwapchainKHR>::operator() (VkSwapchainKHR obj) const
125{
126	m_deviceIface->destroySwapchainKHR(m_device, obj, m_allocator);
127}
128
129template<>
130void Deleter<VkIndirectCommandsLayoutNV>::operator() (VkIndirectCommandsLayoutNV obj) const
131{
132	m_deviceIface->destroyIndirectCommandsLayoutNV(m_device, obj, m_allocator);
133}
134
135template<>
136void Deleter<VkDescriptorUpdateTemplate>::operator() (VkDescriptorUpdateTemplate obj) const
137{
138	m_deviceIface->destroyDescriptorUpdateTemplate(m_device, obj, m_allocator);
139}
140
141template<>
142void Deleter<VkSamplerYcbcrConversion>::operator() (VkSamplerYcbcrConversion obj) const
143{
144	m_deviceIface->destroySamplerYcbcrConversion(m_device, obj, m_allocator);
145}
146
147template<>
148void Deleter<VkValidationCacheEXT>::operator() (VkValidationCacheEXT obj) const
149{
150	m_deviceIface->destroyValidationCacheEXT(m_device, obj, m_allocator);
151}
152
153template<>
154void Deleter<VkAccelerationStructureKHR>::operator() (VkAccelerationStructureKHR obj) const
155{
156	m_deviceIface->destroyAccelerationStructureKHR(m_device, obj, m_allocator);
157}
158
159template<>
160void Deleter<VkAccelerationStructureNV>::operator() (VkAccelerationStructureNV obj) const
161{
162	m_deviceIface->destroyAccelerationStructureNV(m_device, obj, m_allocator);
163}
164
165template<>
166void Deleter<VkDeferredOperationKHR>::operator() (VkDeferredOperationKHR obj) const
167{
168	m_deviceIface->destroyDeferredOperationKHR(m_device, obj, m_allocator);
169}
170
171template<>
172void Deleter<VkPrivateDataSlot>::operator() (VkPrivateDataSlot obj) const
173{
174	m_deviceIface->destroyPrivateDataSlot(m_device, obj, m_allocator);
175}
176
177template<>
178void Deleter<VkVideoSessionKHR>::operator() (VkVideoSessionKHR obj) const
179{
180	m_deviceIface->destroyVideoSessionKHR(m_device, obj, m_allocator);
181}
182
183template<>
184void Deleter<VkVideoSessionParametersKHR>::operator() (VkVideoSessionParametersKHR obj) const
185{
186	m_deviceIface->destroyVideoSessionParametersKHR(m_device, obj, m_allocator);
187}
188
189template<>
190void Deleter<VkCuModuleNVX>::operator() (VkCuModuleNVX obj) const
191{
192	m_deviceIface->destroyCuModuleNVX(m_device, obj, m_allocator);
193}
194
195template<>
196void Deleter<VkCuFunctionNVX>::operator() (VkCuFunctionNVX obj) const
197{
198	m_deviceIface->destroyCuFunctionNVX(m_device, obj, m_allocator);
199}
200
201template<>
202void Deleter<VkBufferCollectionFUCHSIA>::operator() (VkBufferCollectionFUCHSIA obj) const
203{
204	m_deviceIface->destroyBufferCollectionFUCHSIA(m_device, obj, m_allocator);
205}
206
207template<>
208void Deleter<VkMicromapEXT>::operator() (VkMicromapEXT obj) const
209{
210	m_deviceIface->destroyMicromapEXT(m_device, obj, m_allocator);
211}
212
213template<>
214void Deleter<VkOpticalFlowSessionNV>::operator() (VkOpticalFlowSessionNV obj) const
215{
216	m_deviceIface->destroyOpticalFlowSessionNV(m_device, obj, m_allocator);
217}
218
219} // refdetails
220
221Move<VkInstance> createInstance (const PlatformInterface& vk, const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
222{
223	VkInstance object = 0;
224	VK_CHECK(vk.createInstance(pCreateInfo, pAllocator, &object));
225	return Move<VkInstance>(check<VkInstance>(object), Deleter<VkInstance>(vk, object, pAllocator));
226}
227
228Move<VkDevice> createDevice (const PlatformInterface& vkp, VkInstance instance, const InstanceInterface& vk, VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
229{
230	VkDevice object = 0;
231	VK_CHECK(vk.createDevice(physicalDevice, pCreateInfo, pAllocator, &object));
232	return Move<VkDevice>(check<VkDevice>(object), Deleter<VkDevice>(vkp, instance, object, pAllocator));
233}
234
235Move<VkDeviceMemory> allocateMemory (const DeviceInterface& vk, VkDevice device, const VkMemoryAllocateInfo* pAllocateInfo, const VkAllocationCallbacks* pAllocator)
236{
237	VkDeviceMemory object = 0;
238	VK_CHECK(vk.allocateMemory(device, pAllocateInfo, pAllocator, &object));
239	return Move<VkDeviceMemory>(check<VkDeviceMemory>(object), Deleter<VkDeviceMemory>(vk, device, pAllocator));
240}
241
242Move<VkFence> createFence (const DeviceInterface& vk, VkDevice device, const VkFenceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
243{
244	VkFence object = 0;
245	VK_CHECK(vk.createFence(device, pCreateInfo, pAllocator, &object));
246	return Move<VkFence>(check<VkFence>(object), Deleter<VkFence>(vk, device, pAllocator));
247}
248
249Move<VkSemaphore> createSemaphore (const DeviceInterface& vk, VkDevice device, const VkSemaphoreCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
250{
251	VkSemaphore object = 0;
252	VK_CHECK(vk.createSemaphore(device, pCreateInfo, pAllocator, &object));
253	return Move<VkSemaphore>(check<VkSemaphore>(object), Deleter<VkSemaphore>(vk, device, pAllocator));
254}
255
256Move<VkEvent> createEvent (const DeviceInterface& vk, VkDevice device, const VkEventCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
257{
258	VkEvent object = 0;
259	VK_CHECK(vk.createEvent(device, pCreateInfo, pAllocator, &object));
260	return Move<VkEvent>(check<VkEvent>(object), Deleter<VkEvent>(vk, device, pAllocator));
261}
262
263Move<VkQueryPool> createQueryPool (const DeviceInterface& vk, VkDevice device, const VkQueryPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
264{
265	VkQueryPool object = 0;
266	VK_CHECK(vk.createQueryPool(device, pCreateInfo, pAllocator, &object));
267	return Move<VkQueryPool>(check<VkQueryPool>(object), Deleter<VkQueryPool>(vk, device, pAllocator));
268}
269
270Move<VkBuffer> createBuffer (const DeviceInterface& vk, VkDevice device, const VkBufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
271{
272	VkBuffer object = 0;
273	VK_CHECK(vk.createBuffer(device, pCreateInfo, pAllocator, &object));
274	return Move<VkBuffer>(check<VkBuffer>(object), Deleter<VkBuffer>(vk, device, pAllocator));
275}
276
277Move<VkBufferView> createBufferView (const DeviceInterface& vk, VkDevice device, const VkBufferViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
278{
279	VkBufferView object = 0;
280	VK_CHECK(vk.createBufferView(device, pCreateInfo, pAllocator, &object));
281	return Move<VkBufferView>(check<VkBufferView>(object), Deleter<VkBufferView>(vk, device, pAllocator));
282}
283
284Move<VkImage> createImage (const DeviceInterface& vk, VkDevice device, const VkImageCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
285{
286	VkImage object = 0;
287	VK_CHECK(vk.createImage(device, pCreateInfo, pAllocator, &object));
288	return Move<VkImage>(check<VkImage>(object), Deleter<VkImage>(vk, device, pAllocator));
289}
290
291Move<VkImageView> createImageView (const DeviceInterface& vk, VkDevice device, const VkImageViewCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
292{
293	VkImageView object = 0;
294	VK_CHECK(vk.createImageView(device, pCreateInfo, pAllocator, &object));
295	return Move<VkImageView>(check<VkImageView>(object), Deleter<VkImageView>(vk, device, pAllocator));
296}
297
298Move<VkShaderModule> createShaderModule (const DeviceInterface& vk, VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
299{
300	VkShaderModule object = 0;
301	VK_CHECK(vk.createShaderModule(device, pCreateInfo, pAllocator, &object));
302	return Move<VkShaderModule>(check<VkShaderModule>(object), Deleter<VkShaderModule>(vk, device, pAllocator));
303}
304
305Move<VkPipelineCache> createPipelineCache (const DeviceInterface& vk, VkDevice device, const VkPipelineCacheCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
306{
307	VkPipelineCache object = 0;
308	VK_CHECK(vk.createPipelineCache(device, pCreateInfo, pAllocator, &object));
309	return Move<VkPipelineCache>(check<VkPipelineCache>(object), Deleter<VkPipelineCache>(vk, device, pAllocator));
310}
311
312Move<VkPipelineLayout> createPipelineLayout (const DeviceInterface& vk, VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
313{
314	VkPipelineLayout object = 0;
315	VK_CHECK(vk.createPipelineLayout(device, pCreateInfo, pAllocator, &object));
316	return Move<VkPipelineLayout>(check<VkPipelineLayout>(object), Deleter<VkPipelineLayout>(vk, device, pAllocator));
317}
318
319Move<VkSampler> createSampler (const DeviceInterface& vk, VkDevice device, const VkSamplerCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
320{
321	VkSampler object = 0;
322	VK_CHECK(vk.createSampler(device, pCreateInfo, pAllocator, &object));
323	return Move<VkSampler>(check<VkSampler>(object), Deleter<VkSampler>(vk, device, pAllocator));
324}
325
326Move<VkDescriptorSetLayout> createDescriptorSetLayout (const DeviceInterface& vk, VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
327{
328	VkDescriptorSetLayout object = 0;
329	VK_CHECK(vk.createDescriptorSetLayout(device, pCreateInfo, pAllocator, &object));
330	return Move<VkDescriptorSetLayout>(check<VkDescriptorSetLayout>(object), Deleter<VkDescriptorSetLayout>(vk, device, pAllocator));
331}
332
333Move<VkDescriptorPool> createDescriptorPool (const DeviceInterface& vk, VkDevice device, const VkDescriptorPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
334{
335	VkDescriptorPool object = 0;
336	VK_CHECK(vk.createDescriptorPool(device, pCreateInfo, pAllocator, &object));
337	return Move<VkDescriptorPool>(check<VkDescriptorPool>(object), Deleter<VkDescriptorPool>(vk, device, pAllocator));
338}
339
340Move<VkFramebuffer> createFramebuffer (const DeviceInterface& vk, VkDevice device, const VkFramebufferCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
341{
342	VkFramebuffer object = 0;
343	VK_CHECK(vk.createFramebuffer(device, pCreateInfo, pAllocator, &object));
344	return Move<VkFramebuffer>(check<VkFramebuffer>(object), Deleter<VkFramebuffer>(vk, device, pAllocator));
345}
346
347Move<VkRenderPass> createRenderPass (const DeviceInterface& vk, VkDevice device, const VkRenderPassCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
348{
349	VkRenderPass object = 0;
350	VK_CHECK(vk.createRenderPass(device, pCreateInfo, pAllocator, &object));
351	return Move<VkRenderPass>(check<VkRenderPass>(object), Deleter<VkRenderPass>(vk, device, pAllocator));
352}
353
354Move<VkCommandPool> createCommandPool (const DeviceInterface& vk, VkDevice device, const VkCommandPoolCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
355{
356	VkCommandPool object = 0;
357	VK_CHECK(vk.createCommandPool(device, pCreateInfo, pAllocator, &object));
358	return Move<VkCommandPool>(check<VkCommandPool>(object), Deleter<VkCommandPool>(vk, device, pAllocator));
359}
360
361Move<VkSurfaceKHR> createAndroidSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
362{
363	VkSurfaceKHR object = 0;
364	VK_CHECK(vk.createAndroidSurfaceKHR(instance, pCreateInfo, pAllocator, &object));
365	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
366}
367
368Move<VkSurfaceKHR> createOHOSSurfaceOpenHarmony (const InstanceInterface& vk, VkInstance instance, const VkOHOSSurfaceCreateInfoOpenHarmony* pCreateInfo, const VkAllocationCallbacks* pAllocator)
369{
370	VkSurfaceKHR object = 0;
371	VK_CHECK(vk.createOHOSSurfaceOpenHarmony(instance, pCreateInfo, pAllocator, &object));
372	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
373}
374
375Move<VkSurfaceKHR> createDisplayPlaneSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkDisplaySurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
376{
377	VkSurfaceKHR object = 0;
378	VK_CHECK(vk.createDisplayPlaneSurfaceKHR(instance, pCreateInfo, pAllocator, &object));
379	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
380}
381
382Move<VkSwapchainKHR> createSharedSwapchainsKHR (const DeviceInterface& vk, VkDevice device, uint32_t swapchainCount, const VkSwapchainCreateInfoKHR* pCreateInfos, const VkAllocationCallbacks* pAllocator)
383{
384	VkSwapchainKHR object = 0;
385	VK_CHECK(vk.createSharedSwapchainsKHR(device, swapchainCount, pCreateInfos, pAllocator, &object));
386	return Move<VkSwapchainKHR>(check<VkSwapchainKHR>(object), Deleter<VkSwapchainKHR>(vk, device, pAllocator));
387}
388
389Move<VkSwapchainKHR> createSwapchainKHR (const DeviceInterface& vk, VkDevice device, const VkSwapchainCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
390{
391	VkSwapchainKHR object = 0;
392	VK_CHECK(vk.createSwapchainKHR(device, pCreateInfo, pAllocator, &object));
393	return Move<VkSwapchainKHR>(check<VkSwapchainKHR>(object), Deleter<VkSwapchainKHR>(vk, device, pAllocator));
394}
395
396Move<VkSurfaceKHR> createViSurfaceNN (const InstanceInterface& vk, VkInstance instance, const VkViSurfaceCreateInfoNN* pCreateInfo, const VkAllocationCallbacks* pAllocator)
397{
398	VkSurfaceKHR object = 0;
399	VK_CHECK(vk.createViSurfaceNN(instance, pCreateInfo, pAllocator, &object));
400	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
401}
402
403Move<VkSurfaceKHR> createWaylandSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkWaylandSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
404{
405	VkSurfaceKHR object = 0;
406	VK_CHECK(vk.createWaylandSurfaceKHR(instance, pCreateInfo, pAllocator, &object));
407	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
408}
409
410Move<VkSurfaceKHR> createWin32SurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkWin32SurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
411{
412	VkSurfaceKHR object = 0;
413	VK_CHECK(vk.createWin32SurfaceKHR(instance, pCreateInfo, pAllocator, &object));
414	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
415}
416
417Move<VkSurfaceKHR> createXlibSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkXlibSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
418{
419	VkSurfaceKHR object = 0;
420	VK_CHECK(vk.createXlibSurfaceKHR(instance, pCreateInfo, pAllocator, &object));
421	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
422}
423
424Move<VkSurfaceKHR> createXcbSurfaceKHR (const InstanceInterface& vk, VkInstance instance, const VkXcbSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
425{
426	VkSurfaceKHR object = 0;
427	VK_CHECK(vk.createXcbSurfaceKHR(instance, pCreateInfo, pAllocator, &object));
428	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
429}
430
431Move<VkSurfaceKHR> createImagePipeSurfaceFUCHSIA (const InstanceInterface& vk, VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator)
432{
433	VkSurfaceKHR object = 0;
434	VK_CHECK(vk.createImagePipeSurfaceFUCHSIA(instance, pCreateInfo, pAllocator, &object));
435	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
436}
437
438Move<VkSurfaceKHR> createStreamDescriptorSurfaceGGP (const InstanceInterface& vk, VkInstance instance, const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo, const VkAllocationCallbacks* pAllocator)
439{
440	VkSurfaceKHR object = 0;
441	VK_CHECK(vk.createStreamDescriptorSurfaceGGP(instance, pCreateInfo, pAllocator, &object));
442	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
443}
444
445Move<VkSurfaceKHR> createScreenSurfaceQNX (const InstanceInterface& vk, VkInstance instance, const VkScreenSurfaceCreateInfoQNX* pCreateInfo, const VkAllocationCallbacks* pAllocator)
446{
447	VkSurfaceKHR object = 0;
448	VK_CHECK(vk.createScreenSurfaceQNX(instance, pCreateInfo, pAllocator, &object));
449	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
450}
451
452Move<VkDebugReportCallbackEXT> createDebugReportCallbackEXT (const InstanceInterface& vk, VkInstance instance, const VkDebugReportCallbackCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
453{
454	VkDebugReportCallbackEXT object = 0;
455	VK_CHECK(vk.createDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, &object));
456	return Move<VkDebugReportCallbackEXT>(check<VkDebugReportCallbackEXT>(object), Deleter<VkDebugReportCallbackEXT>(vk, instance, pAllocator));
457}
458
459Move<VkIndirectCommandsLayoutNV> createIndirectCommandsLayoutNV (const DeviceInterface& vk, VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator)
460{
461	VkIndirectCommandsLayoutNV object = 0;
462	VK_CHECK(vk.createIndirectCommandsLayoutNV(device, pCreateInfo, pAllocator, &object));
463	return Move<VkIndirectCommandsLayoutNV>(check<VkIndirectCommandsLayoutNV>(object), Deleter<VkIndirectCommandsLayoutNV>(vk, device, pAllocator));
464}
465
466Move<VkDescriptorUpdateTemplate> createDescriptorUpdateTemplate (const DeviceInterface& vk, VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
467{
468	VkDescriptorUpdateTemplate object = 0;
469	VK_CHECK(vk.createDescriptorUpdateTemplate(device, pCreateInfo, pAllocator, &object));
470	return Move<VkDescriptorUpdateTemplate>(check<VkDescriptorUpdateTemplate>(object), Deleter<VkDescriptorUpdateTemplate>(vk, device, pAllocator));
471}
472
473Move<VkSurfaceKHR> createIOSSurfaceMVK (const InstanceInterface& vk, VkInstance instance, const VkIOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator)
474{
475	VkSurfaceKHR object = 0;
476	VK_CHECK(vk.createIOSSurfaceMVK(instance, pCreateInfo, pAllocator, &object));
477	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
478}
479
480Move<VkSurfaceKHR> createMacOSSurfaceMVK (const InstanceInterface& vk, VkInstance instance, const VkMacOSSurfaceCreateInfoMVK* pCreateInfo, const VkAllocationCallbacks* pAllocator)
481{
482	VkSurfaceKHR object = 0;
483	VK_CHECK(vk.createMacOSSurfaceMVK(instance, pCreateInfo, pAllocator, &object));
484	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
485}
486
487Move<VkSurfaceKHR> createMetalSurfaceEXT (const InstanceInterface& vk, VkInstance instance, const VkMetalSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
488{
489	VkSurfaceKHR object = 0;
490	VK_CHECK(vk.createMetalSurfaceEXT(instance, pCreateInfo, pAllocator, &object));
491	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
492}
493
494Move<VkSamplerYcbcrConversion> createSamplerYcbcrConversion (const DeviceInterface& vk, VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
495{
496	VkSamplerYcbcrConversion object = 0;
497	VK_CHECK(vk.createSamplerYcbcrConversion(device, pCreateInfo, pAllocator, &object));
498	return Move<VkSamplerYcbcrConversion>(check<VkSamplerYcbcrConversion>(object), Deleter<VkSamplerYcbcrConversion>(vk, device, pAllocator));
499}
500
501Move<VkValidationCacheEXT> createValidationCacheEXT (const DeviceInterface& vk, VkDevice device, const VkValidationCacheCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
502{
503	VkValidationCacheEXT object = 0;
504	VK_CHECK(vk.createValidationCacheEXT(device, pCreateInfo, pAllocator, &object));
505	return Move<VkValidationCacheEXT>(check<VkValidationCacheEXT>(object), Deleter<VkValidationCacheEXT>(vk, device, pAllocator));
506}
507
508Move<VkDebugUtilsMessengerEXT> createDebugUtilsMessengerEXT (const InstanceInterface& vk, VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
509{
510	VkDebugUtilsMessengerEXT object = 0;
511	VK_CHECK(vk.createDebugUtilsMessengerEXT(instance, pCreateInfo, pAllocator, &object));
512	return Move<VkDebugUtilsMessengerEXT>(check<VkDebugUtilsMessengerEXT>(object), Deleter<VkDebugUtilsMessengerEXT>(vk, instance, pAllocator));
513}
514
515Move<VkRenderPass> createRenderPass2 (const DeviceInterface& vk, VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator)
516{
517	VkRenderPass object = 0;
518	VK_CHECK(vk.createRenderPass2(device, pCreateInfo, pAllocator, &object));
519	return Move<VkRenderPass>(check<VkRenderPass>(object), Deleter<VkRenderPass>(vk, device, pAllocator));
520}
521
522Move<VkAccelerationStructureNV> createAccelerationStructureNV (const DeviceInterface& vk, VkDevice device, const VkAccelerationStructureCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator)
523{
524	VkAccelerationStructureNV object = 0;
525	VK_CHECK(vk.createAccelerationStructureNV(device, pCreateInfo, pAllocator, &object));
526	return Move<VkAccelerationStructureNV>(check<VkAccelerationStructureNV>(object), Deleter<VkAccelerationStructureNV>(vk, device, pAllocator));
527}
528
529Move<VkSurfaceKHR> createHeadlessSurfaceEXT (const InstanceInterface& vk, VkInstance instance, const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
530{
531	VkSurfaceKHR object = 0;
532	VK_CHECK(vk.createHeadlessSurfaceEXT(instance, pCreateInfo, pAllocator, &object));
533	return Move<VkSurfaceKHR>(check<VkSurfaceKHR>(object), Deleter<VkSurfaceKHR>(vk, instance, pAllocator));
534}
535
536Move<VkAccelerationStructureKHR> createAccelerationStructureKHR (const DeviceInterface& vk, VkDevice device, const VkAccelerationStructureCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
537{
538	VkAccelerationStructureKHR object = 0;
539	VK_CHECK(vk.createAccelerationStructureKHR(device, pCreateInfo, pAllocator, &object));
540	return Move<VkAccelerationStructureKHR>(check<VkAccelerationStructureKHR>(object), Deleter<VkAccelerationStructureKHR>(vk, device, pAllocator));
541}
542
543Move<VkDeferredOperationKHR> createDeferredOperationKHR (const DeviceInterface& vk, VkDevice device, const VkAllocationCallbacks* pAllocator)
544{
545	VkDeferredOperationKHR object = 0;
546	VK_CHECK(vk.createDeferredOperationKHR(device, pAllocator, &object));
547	return Move<VkDeferredOperationKHR>(check<VkDeferredOperationKHR>(object), Deleter<VkDeferredOperationKHR>(vk, device, pAllocator));
548}
549
550Move<VkPrivateDataSlot> createPrivateDataSlot (const DeviceInterface& vk, VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
551{
552	VkPrivateDataSlot object = 0;
553	VK_CHECK(vk.createPrivateDataSlot(device, pCreateInfo, pAllocator, &object));
554	return Move<VkPrivateDataSlot>(check<VkPrivateDataSlot>(object), Deleter<VkPrivateDataSlot>(vk, device, pAllocator));
555}
556
557Move<VkVideoSessionKHR> createVideoSessionKHR (const DeviceInterface& vk, VkDevice device, const VkVideoSessionCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
558{
559	VkVideoSessionKHR object = 0;
560	VK_CHECK(vk.createVideoSessionKHR(device, pCreateInfo, pAllocator, &object));
561	return Move<VkVideoSessionKHR>(check<VkVideoSessionKHR>(object), Deleter<VkVideoSessionKHR>(vk, device, pAllocator));
562}
563
564Move<VkVideoSessionParametersKHR> createVideoSessionParametersKHR (const DeviceInterface& vk, VkDevice device, const VkVideoSessionParametersCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator)
565{
566	VkVideoSessionParametersKHR object = 0;
567	VK_CHECK(vk.createVideoSessionParametersKHR(device, pCreateInfo, pAllocator, &object));
568	return Move<VkVideoSessionParametersKHR>(check<VkVideoSessionParametersKHR>(object), Deleter<VkVideoSessionParametersKHR>(vk, device, pAllocator));
569}
570
571Move<VkCuModuleNVX> createCuModuleNVX (const DeviceInterface& vk, VkDevice device, const VkCuModuleCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator)
572{
573	VkCuModuleNVX object = 0;
574	VK_CHECK(vk.createCuModuleNVX(device, pCreateInfo, pAllocator, &object));
575	return Move<VkCuModuleNVX>(check<VkCuModuleNVX>(object), Deleter<VkCuModuleNVX>(vk, device, pAllocator));
576}
577
578Move<VkCuFunctionNVX> createCuFunctionNVX (const DeviceInterface& vk, VkDevice device, const VkCuFunctionCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator)
579{
580	VkCuFunctionNVX object = 0;
581	VK_CHECK(vk.createCuFunctionNVX(device, pCreateInfo, pAllocator, &object));
582	return Move<VkCuFunctionNVX>(check<VkCuFunctionNVX>(object), Deleter<VkCuFunctionNVX>(vk, device, pAllocator));
583}
584
585Move<VkBufferCollectionFUCHSIA> createBufferCollectionFUCHSIA (const DeviceInterface& vk, VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator)
586{
587	VkBufferCollectionFUCHSIA object = 0;
588	VK_CHECK(vk.createBufferCollectionFUCHSIA(device, pCreateInfo, pAllocator, &object));
589	return Move<VkBufferCollectionFUCHSIA>(check<VkBufferCollectionFUCHSIA>(object), Deleter<VkBufferCollectionFUCHSIA>(vk, device, pAllocator));
590}
591
592Move<VkMicromapEXT> createMicromapEXT (const DeviceInterface& vk, VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
593{
594	VkMicromapEXT object = 0;
595	VK_CHECK(vk.createMicromapEXT(device, pCreateInfo, pAllocator, &object));
596	return Move<VkMicromapEXT>(check<VkMicromapEXT>(object), Deleter<VkMicromapEXT>(vk, device, pAllocator));
597}
598
599Move<VkOpticalFlowSessionNV> createOpticalFlowSessionNV (const DeviceInterface& vk, VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator)
600{
601	VkOpticalFlowSessionNV object = 0;
602	VK_CHECK(vk.createOpticalFlowSessionNV(device, pCreateInfo, pAllocator, &object));
603	return Move<VkOpticalFlowSessionNV>(check<VkOpticalFlowSessionNV>(object), Deleter<VkOpticalFlowSessionNV>(vk, device, pAllocator));
604}
605
606