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