-"""Vulkan API description"""
-# See vulkan_api_generator.py for modifications
+" ""VK API description"""
# Copyright (c) 2015-2016 The Khronos Group Inc.
-# Copyright (c) 2015-2016 Valve Corporation# Copyright (c) 2015-2016 LunarG, Inc.# Copyright (c) 2015-2016 Google Inc.
+# Copyright (c) 2015-2016 Valve Corporation
+# Copyright (c) 2015-2016 LunarG, Inc.
+# Copyright (c) 2015-2016 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# Author: Tobin Ehlis <tobin@lunarg.com>
# Author: Tony Barbour <tony@LunarG.com>
# Author: Gwan-gyeong Mun <kk.moon@samsung.com>
-# Author: Mark Lobodzinski <mark@lunarg.com>
-#
class Param(object):
- """Function parameter"""
+ """A function parameter."""
def __init__(self, ty, name):
self.ty = ty
else:
return "%s %s" % (self.ty, self.name)
+ def indirection_level(self):
+ """Return the level of indirection."""
+ return self.ty.count("*") + self.ty.count("[")
+
+ def dereferenced_type(self, level=0):
+ """Return the type after dereferencing."""
+ if not level:
+ level = self.indirection_level()
+
+ deref = self.ty if level else ""
+ while level > 0:
+ idx = deref.rfind("[")
+ if idx < 0:
+ idx = deref.rfind("*")
+ if idx < 0:
+ deref = ""
+ break
+ deref = deref[:idx]
+ level -= 1;
+
+ return deref.rstrip()
+
class Proto(object):
- """Function prototype"""
+ """A function prototype."""
def __init__(self, ret, name, params=[]):
- # Prototype has only a param
+ # the proto has only a param
if not isinstance(params, list):
params = [params]
idx = param.ty.find("[")
if idx < 0:
idx = len(param.ty)
+
pad = 44 - idx
if pad <= 0:
pad = 1
- plist.append(" %s%s%s%s" % (param.ty[:idx], " " * pad, param.name, param.ty[idx:]))
+ plist.append(" %s%s%s%s" % (param.ty[:idx],
+ " " * pad, param.name, param.ty[idx:]))
return "%s%s %s%s(\n%s)" % (
attr + "_ATTR " if attr else "",
"""Return the params that are simple VK objects and are inputs."""
return [param for param in self.params if param.ty in objects]
+ def object_out_params(self):
+ """Return the params that are simple VK objects and are outputs."""
+ return [param for param in self.params
+ if param.dereferenced_type() in objects]
+
def __repr__(self):
param_strs = []
for param in self.params:
param_strs.append(str(param))
param_str = " [%s]" % (",\n ".join(param_strs))
- return "Proto(\"%s\", \"%s\",\n%s)" % (self.ret, self.name, param_str)
+ return "Proto(\"%s\", \"%s\",\n%s)" % \
+ (self.ret, self.name, param_str)
class Extension(object):
def __init__(self, name, headers, objects, protos, ifdef = None):
self.protos = protos
self.ifdef = ifdef
-
+# VK core API
VK_VERSION_1_0 = Extension(
name="VK_VERSION_1_0",
headers=["vulkan/vulkan.h"],
- ifdef="",
objects=[
"VkInstance",
"VkPhysicalDevice",
"VkDevice",
"VkQueue",
+ "VkSemaphore",
+ "VkCommandBuffer",
"VkFence",
"VkDeviceMemory",
"VkBuffer",
"VkImage",
- "VkSemaphore",
"VkEvent",
"VkQueryPool",
"VkBufferView",
"VkImageView",
"VkShaderModule",
"VkPipelineCache",
- "VkPipeline",
"VkPipelineLayout",
- "VkSampler",
+ "VkRenderPass",
+ "VkPipeline",
"VkDescriptorSetLayout",
+ "VkSampler",
"VkDescriptorPool",
"VkDescriptorSet",
"VkFramebuffer",
- "VkRenderPass",
"VkCommandPool",
- "VkCommandBuffer",
],
protos=[
Proto("VkResult", "CreateInstance",
- [
- Param("VkInstanceCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkInstance", "pInstance"),
- ]),
+ [Param("const VkInstanceCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkInstance*", "pInstance")]),
+
Proto("void", "DestroyInstance",
- [
- Param("VkInstance", "instance"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "EnumeratePhysicalDevices",
- [
- Param("VkInstance", "instance"),
- Param("uint32_t", "pPhysicalDeviceCount"),
- Param("VkPhysicalDevice", "pPhysicalDevices"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("uint32_t*", "pPhysicalDeviceCount"),
+ Param("VkPhysicalDevice*", "pPhysicalDevices")]),
+
Proto("void", "GetPhysicalDeviceFeatures",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("VkPhysicalDeviceFeatures", "pFeatures"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("VkPhysicalDeviceFeatures*", "pFeatures")]),
+
Proto("void", "GetPhysicalDeviceFormatProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkFormat", "format"),
- Param("VkFormatProperties", "pFormatProperties"),
- ]),
+ Param("VkFormatProperties*", "pFormatProperties")]),
+
Proto("VkResult", "GetPhysicalDeviceImageFormatProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkFormat", "format"),
Param("VkImageType", "type"),
Param("VkImageTiling", "tiling"),
Param("VkImageUsageFlags", "usage"),
Param("VkImageCreateFlags", "flags"),
- Param("VkImageFormatProperties", "pImageFormatProperties"),
- ]),
+ Param("VkImageFormatProperties*", "pImageFormatProperties")]),
+
Proto("void", "GetPhysicalDeviceProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("VkPhysicalDeviceProperties", "pProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("VkPhysicalDeviceProperties*", "pProperties")]),
+
Proto("void", "GetPhysicalDeviceQueueFamilyProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("uint32_t", "pQueueFamilyPropertyCount"),
- Param("VkQueueFamilyProperties", "pQueueFamilyProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("uint32_t*", "pQueueFamilyPropertyCount"),
+ Param("VkQueueFamilyProperties*", "pQueueFamilyProperties")]),
+
Proto("void", "GetPhysicalDeviceMemoryProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("VkPhysicalDeviceMemoryProperties", "pMemoryProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("VkPhysicalDeviceMemoryProperties*", "pMemoryProperties")]),
+
Proto("PFN_vkVoidFunction", "GetInstanceProcAddr",
- [
- Param("VkInstance", "instance"),
- Param("char", "pName"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const char*", "pName")]),
+
Proto("PFN_vkVoidFunction", "GetDeviceProcAddr",
- [
- Param("VkDevice", "device"),
- Param("char", "pName"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const char*", "pName")]),
+
Proto("VkResult", "CreateDevice",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("VkDeviceCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDevice", "pDevice"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("const VkDeviceCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDevice*", "pDevice")]),
+
Proto("void", "DestroyDevice",
- [
- Param("VkDevice", "device"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "EnumerateInstanceExtensionProperties",
- [
- Param("char", "pLayerName"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkExtensionProperties", "pProperties"),
- ]),
+ [Param("const char*", "pLayerName"),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkExtensionProperties*", "pProperties")]),
+
Proto("VkResult", "EnumerateDeviceExtensionProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("char", "pLayerName"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkExtensionProperties", "pProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("const char*", "pLayerName"),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkExtensionProperties*", "pProperties")]),
+
Proto("VkResult", "EnumerateInstanceLayerProperties",
- [
- Param("uint32_t", "pPropertyCount"),
- Param("VkLayerProperties", "pProperties"),
- ]),
+ [Param("uint32_t*", "pPropertyCount"),
+ Param("VkLayerProperties*", "pProperties")]),
+
Proto("VkResult", "EnumerateDeviceLayerProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkLayerProperties", "pProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkLayerProperties*", "pProperties")]),
+
Proto("void", "GetDeviceQueue",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "queueFamilyIndex"),
Param("uint32_t", "queueIndex"),
- Param("VkQueue", "pQueue"),
- ]),
+ Param("VkQueue*", "pQueue")]),
+
Proto("VkResult", "QueueSubmit",
- [
- Param("VkQueue", "queue"),
+ [Param("VkQueue", "queue"),
Param("uint32_t", "submitCount"),
- Param("VkSubmitInfo", "pSubmits"),
- Param("VkFence", "fence"),
- ]),
+ Param("const VkSubmitInfo*", "pSubmits"),
+ Param("VkFence", "fence")]),
+
Proto("VkResult", "QueueWaitIdle",
- [
- Param("VkQueue", "queue"),
- ]),
+ [Param("VkQueue", "queue")]),
+
Proto("VkResult", "DeviceWaitIdle",
- [
- Param("VkDevice", "device"),
- ]),
+ [Param("VkDevice", "device")]),
+
Proto("VkResult", "AllocateMemory",
- [
- Param("VkDevice", "device"),
- Param("VkMemoryAllocateInfo", "pAllocateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDeviceMemory", "pMemory"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkMemoryAllocateInfo*", "pAllocateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDeviceMemory*", "pMemory")]),
+
Proto("void", "FreeMemory",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDeviceMemory", "memory"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "MapMemory",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDeviceMemory", "memory"),
Param("VkDeviceSize", "offset"),
Param("VkDeviceSize", "size"),
Param("VkMemoryMapFlags", "flags"),
- Param("void", "ppData"),
- ]),
+ Param("void**", "ppData")]),
+
Proto("void", "UnmapMemory",
- [
- Param("VkDevice", "device"),
- Param("VkDeviceMemory", "memory"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("VkDeviceMemory", "memory")]),
+
Proto("VkResult", "FlushMappedMemoryRanges",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "memoryRangeCount"),
- Param("VkMappedMemoryRange", "pMemoryRanges"),
- ]),
+ Param("const VkMappedMemoryRange*", "pMemoryRanges")]),
+
Proto("VkResult", "InvalidateMappedMemoryRanges",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "memoryRangeCount"),
- Param("VkMappedMemoryRange", "pMemoryRanges"),
- ]),
+ Param("const VkMappedMemoryRange*", "pMemoryRanges")]),
+
Proto("void", "GetDeviceMemoryCommitment",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDeviceMemory", "memory"),
- Param("VkDeviceSize", "pCommittedMemoryInBytes"),
- ]),
+ Param("VkDeviceSize*", "pCommittedMemoryInBytes")]),
+
Proto("VkResult", "BindBufferMemory",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkBuffer", "buffer"),
Param("VkDeviceMemory", "memory"),
- Param("VkDeviceSize", "memoryOffset"),
- ]),
+ Param("VkDeviceSize", "memoryOffset")]),
+
Proto("VkResult", "BindImageMemory",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImage", "image"),
Param("VkDeviceMemory", "memory"),
- Param("VkDeviceSize", "memoryOffset"),
- ]),
+ Param("VkDeviceSize", "memoryOffset")]),
+
Proto("void", "GetBufferMemoryRequirements",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkBuffer", "buffer"),
- Param("VkMemoryRequirements", "pMemoryRequirements"),
- ]),
+ Param("VkMemoryRequirements*", "pMemoryRequirements")]),
+
Proto("void", "GetImageMemoryRequirements",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImage", "image"),
- Param("VkMemoryRequirements", "pMemoryRequirements"),
- ]),
+ Param("VkMemoryRequirements*", "pMemoryRequirements")]),
+
Proto("void", "GetImageSparseMemoryRequirements",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImage", "image"),
- Param("uint32_t", "pSparseMemoryRequirementCount"),
- Param("VkSparseImageMemoryRequirements", "pSparseMemoryRequirements"),
- ]),
+ Param("uint32_t*", "pSparseMemoryRequirementCount"),
+ Param("VkSparseImageMemoryRequirements*", "pSparseMemoryRequirements")]),
+
Proto("void", "GetPhysicalDeviceSparseImageFormatProperties",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkFormat", "format"),
Param("VkImageType", "type"),
Param("VkSampleCountFlagBits", "samples"),
Param("VkImageUsageFlags", "usage"),
Param("VkImageTiling", "tiling"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkSparseImageFormatProperties", "pProperties"),
- ]),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkSparseImageFormatProperties*", "pProperties")]),
+
Proto("VkResult", "QueueBindSparse",
- [
- Param("VkQueue", "queue"),
+ [Param("VkQueue", "queue"),
Param("uint32_t", "bindInfoCount"),
- Param("VkBindSparseInfo", "pBindInfo"),
- Param("VkFence", "fence"),
- ]),
+ Param("const VkBindSparseInfo*", "pBindInfo"),
+ Param("VkFence", "fence")]),
+
Proto("VkResult", "CreateFence",
- [
- Param("VkDevice", "device"),
- Param("VkFenceCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkFence", "pFence"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkFenceCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkFence*", "pFence")]),
+
Proto("void", "DestroyFence",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkFence", "fence"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "ResetFences",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "fenceCount"),
- Param("VkFence", "pFences"),
- ]),
+ Param("const VkFence*", "pFences")]),
+
Proto("VkResult", "GetFenceStatus",
- [
- Param("VkDevice", "device"),
- Param("VkFence", "fence"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("VkFence", "fence")]),
+
Proto("VkResult", "WaitForFences",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "fenceCount"),
- Param("VkFence", "pFences"),
+ Param("const VkFence*", "pFences"),
Param("VkBool32", "waitAll"),
- Param("uint64_t", "timeout"),
- ]),
+ Param("uint64_t", "timeout")]),
+
Proto("VkResult", "CreateSemaphore",
- [
- Param("VkDevice", "device"),
- Param("VkSemaphoreCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSemaphore", "pSemaphore"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkSemaphoreCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSemaphore*", "pSemaphore")]),
+
Proto("void", "DestroySemaphore",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkSemaphore", "semaphore"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateEvent",
- [
- Param("VkDevice", "device"),
- Param("VkEventCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkEvent", "pEvent"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkEventCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkEvent*", "pEvent")]),
+
Proto("void", "DestroyEvent",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkEvent", "event"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "GetEventStatus",
- [
- Param("VkDevice", "device"),
- Param("VkEvent", "event"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("VkEvent", "event")]),
+
Proto("VkResult", "SetEvent",
- [
- Param("VkDevice", "device"),
- Param("VkEvent", "event"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("VkEvent", "event")]),
+
Proto("VkResult", "ResetEvent",
- [
- Param("VkDevice", "device"),
- Param("VkEvent", "event"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("VkEvent", "event")]),
+
Proto("VkResult", "CreateQueryPool",
- [
- Param("VkDevice", "device"),
- Param("VkQueryPoolCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkQueryPool", "pQueryPool"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkQueryPoolCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkQueryPool*", "pQueryPool")]),
+
Proto("void", "DestroyQueryPool",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkQueryPool", "queryPool"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "GetQueryPoolResults",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkQueryPool", "queryPool"),
Param("uint32_t", "firstQuery"),
Param("uint32_t", "queryCount"),
Param("size_t", "dataSize"),
- Param("void", "pData"),
+ Param("void*", "pData"),
Param("VkDeviceSize", "stride"),
- Param("VkQueryResultFlags", "flags"),
- ]),
+ Param("VkQueryResultFlags", "flags")]),
+
Proto("VkResult", "CreateBuffer",
- [
- Param("VkDevice", "device"),
- Param("VkBufferCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkBuffer", "pBuffer"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkBufferCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkBuffer*", "pBuffer")]),
+
Proto("void", "DestroyBuffer",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkBuffer", "buffer"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateBufferView",
- [
- Param("VkDevice", "device"),
- Param("VkBufferViewCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkBufferView", "pView"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkBufferViewCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkBufferView*", "pView")]),
+
Proto("void", "DestroyBufferView",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkBufferView", "bufferView"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateImage",
- [
- Param("VkDevice", "device"),
- Param("VkImageCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkImage", "pImage"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkImageCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkImage*", "pImage")]),
+
Proto("void", "DestroyImage",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImage", "image"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("void", "GetImageSubresourceLayout",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImage", "image"),
- Param("VkImageSubresource", "pSubresource"),
- Param("VkSubresourceLayout", "pLayout"),
- ]),
+ Param("const VkImageSubresource*", "pSubresource"),
+ Param("VkSubresourceLayout*", "pLayout")]),
+
Proto("VkResult", "CreateImageView",
- [
- Param("VkDevice", "device"),
- Param("VkImageViewCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkImageView", "pView"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkImageViewCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkImageView*", "pView")]),
+
Proto("void", "DestroyImageView",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkImageView", "imageView"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateShaderModule",
- [
- Param("VkDevice", "device"),
- Param("VkShaderModuleCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkShaderModule", "pShaderModule"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkShaderModuleCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkShaderModule*", "pShaderModule")]),
+
Proto("void", "DestroyShaderModule",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkShaderModule", "shaderModule"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreatePipelineCache",
- [
- Param("VkDevice", "device"),
- Param("VkPipelineCacheCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkPipelineCache", "pPipelineCache"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkPipelineCacheCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkPipelineCache*", "pPipelineCache")]),
+
Proto("void", "DestroyPipelineCache",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineCache", "pipelineCache"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "GetPipelineCacheData",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineCache", "pipelineCache"),
- Param("size_t", "pDataSize"),
- Param("void", "pData"),
- ]),
+ Param("size_t*", "pDataSize"),
+ Param("void*", "pData")]),
+
Proto("VkResult", "MergePipelineCaches",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineCache", "dstCache"),
Param("uint32_t", "srcCacheCount"),
- Param("VkPipelineCache", "pSrcCaches"),
- ]),
+ Param("const VkPipelineCache*", "pSrcCaches")]),
+
Proto("VkResult", "CreateGraphicsPipelines",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineCache", "pipelineCache"),
Param("uint32_t", "createInfoCount"),
- Param("VkGraphicsPipelineCreateInfo", "pCreateInfos"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkPipeline", "pPipelines"),
- ]),
+ Param("const VkGraphicsPipelineCreateInfo*", "pCreateInfos"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkPipeline*", "pPipelines")]),
+
Proto("VkResult", "CreateComputePipelines",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineCache", "pipelineCache"),
Param("uint32_t", "createInfoCount"),
- Param("VkComputePipelineCreateInfo", "pCreateInfos"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkPipeline", "pPipelines"),
- ]),
+ Param("const VkComputePipelineCreateInfo*", "pCreateInfos"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkPipeline*", "pPipelines")]),
+
Proto("void", "DestroyPipeline",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipeline", "pipeline"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreatePipelineLayout",
- [
- Param("VkDevice", "device"),
- Param("VkPipelineLayoutCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkPipelineLayout", "pPipelineLayout"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkPipelineLayoutCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkPipelineLayout*", "pPipelineLayout")]),
+
Proto("void", "DestroyPipelineLayout",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkPipelineLayout", "pipelineLayout"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateSampler",
- [
- Param("VkDevice", "device"),
- Param("VkSamplerCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSampler", "pSampler"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkSamplerCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSampler*", "pSampler")]),
+
Proto("void", "DestroySampler",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkSampler", "sampler"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateDescriptorSetLayout",
- [
- Param("VkDevice", "device"),
- Param("VkDescriptorSetLayoutCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDescriptorSetLayout", "pSetLayout"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkDescriptorSetLayoutCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDescriptorSetLayout*", "pSetLayout")]),
+
Proto("void", "DestroyDescriptorSetLayout",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDescriptorSetLayout", "descriptorSetLayout"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateDescriptorPool",
- [
- Param("VkDevice", "device"),
- Param("VkDescriptorPoolCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDescriptorPool", "pDescriptorPool"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkDescriptorPoolCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDescriptorPool*", "pDescriptorPool")]),
+
Proto("void", "DestroyDescriptorPool",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDescriptorPool", "descriptorPool"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "ResetDescriptorPool",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDescriptorPool", "descriptorPool"),
- Param("VkDescriptorPoolResetFlags", "flags"),
- ]),
+ Param("VkDescriptorPoolResetFlags", "flags")]),
+
Proto("VkResult", "AllocateDescriptorSets",
- [
- Param("VkDevice", "device"),
- Param("VkDescriptorSetAllocateInfo", "pAllocateInfo"),
- Param("VkDescriptorSet", "pDescriptorSets"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkDescriptorSetAllocateInfo*", "pAllocateInfo"),
+ Param("VkDescriptorSet*", "pDescriptorSets")]),
+
Proto("VkResult", "FreeDescriptorSets",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkDescriptorPool", "descriptorPool"),
Param("uint32_t", "descriptorSetCount"),
- Param("VkDescriptorSet", "pDescriptorSets"),
- ]),
+ Param("const VkDescriptorSet*", "pDescriptorSets")]),
+
Proto("void", "UpdateDescriptorSets",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "descriptorWriteCount"),
- Param("VkWriteDescriptorSet", "pDescriptorWrites"),
+ Param("const VkWriteDescriptorSet*", "pDescriptorWrites"),
Param("uint32_t", "descriptorCopyCount"),
- Param("VkCopyDescriptorSet", "pDescriptorCopies"),
- ]),
+ Param("const VkCopyDescriptorSet*", "pDescriptorCopies")]),
+
Proto("VkResult", "CreateFramebuffer",
- [
- Param("VkDevice", "device"),
- Param("VkFramebufferCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkFramebuffer", "pFramebuffer"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkFramebufferCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkFramebuffer*", "pFramebuffer")]),
+
Proto("void", "DestroyFramebuffer",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkFramebuffer", "framebuffer"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "CreateRenderPass",
- [
- Param("VkDevice", "device"),
- Param("VkRenderPassCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkRenderPass", "pRenderPass"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkRenderPassCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkRenderPass*", "pRenderPass")]),
+
Proto("void", "DestroyRenderPass",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkRenderPass", "renderPass"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("void", "GetRenderAreaGranularity",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkRenderPass", "renderPass"),
- Param("VkExtent2D", "pGranularity"),
- ]),
+ Param("VkExtent2D*", "pGranularity")]),
+
Proto("VkResult", "CreateCommandPool",
- [
- Param("VkDevice", "device"),
- Param("VkCommandPoolCreateInfo", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkCommandPool", "pCommandPool"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkCommandPoolCreateInfo*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkCommandPool*", "pCommandPool")]),
+
Proto("void", "DestroyCommandPool",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkCommandPool", "commandPool"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "ResetCommandPool",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkCommandPool", "commandPool"),
- Param("VkCommandPoolResetFlags", "flags"),
- ]),
+ Param("VkCommandPoolResetFlags", "flags")]),
+
Proto("VkResult", "AllocateCommandBuffers",
- [
- Param("VkDevice", "device"),
- Param("VkCommandBufferAllocateInfo", "pAllocateInfo"),
- Param("VkCommandBuffer", "pCommandBuffers"),
- ]),
+ [Param("VkDevice", "device"),
+ Param("const VkCommandBufferAllocateInfo*", "pAllocateInfo"),
+ Param("VkCommandBuffer*", "pCommandBuffers")]),
+
Proto("void", "FreeCommandBuffers",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("VkCommandPool", "commandPool"),
Param("uint32_t", "commandBufferCount"),
- Param("VkCommandBuffer", "pCommandBuffers"),
- ]),
+ Param("const VkCommandBuffer*", "pCommandBuffers")]),
+
Proto("VkResult", "BeginCommandBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkCommandBufferBeginInfo", "pBeginInfo"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("const VkCommandBufferBeginInfo*", "pBeginInfo")]),
+
Proto("VkResult", "EndCommandBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer")]),
+
Proto("VkResult", "ResetCommandBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkCommandBufferResetFlags", "flags"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkCommandBufferResetFlags", "flags")]),
+
Proto("void", "CmdBindPipeline",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkPipelineBindPoint", "pipelineBindPoint"),
- Param("VkPipeline", "pipeline"),
- ]),
+ Param("VkPipeline", "pipeline")]),
+
Proto("void", "CmdSetViewport",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "firstViewport"),
Param("uint32_t", "viewportCount"),
- Param("VkViewport", "pViewports"),
- ]),
+ Param("const VkViewport*", "pViewports")]),
+
Proto("void", "CmdSetScissor",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "firstScissor"),
Param("uint32_t", "scissorCount"),
- Param("VkRect2D", "pScissors"),
- ]),
+ Param("const VkRect2D*", "pScissors")]),
+
Proto("void", "CmdSetLineWidth",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("float", "lineWidth"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("float", "lineWidth")]),
+
Proto("void", "CmdSetDepthBias",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("float", "depthBiasConstantFactor"),
Param("float", "depthBiasClamp"),
- Param("float", "depthBiasSlopeFactor"),
- ]),
+ Param("float", "depthBiasSlopeFactor")]),
+
Proto("void", "CmdSetBlendConstants",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("float", "blendConstants"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("const float[4]", "blendConstants")]),
+
Proto("void", "CmdSetDepthBounds",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("float", "minDepthBounds"),
- Param("float", "maxDepthBounds"),
- ]),
+ Param("float", "maxDepthBounds")]),
+
Proto("void", "CmdSetStencilCompareMask",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkStencilFaceFlags", "faceMask"),
- Param("uint32_t", "compareMask"),
- ]),
+ Param("uint32_t", "compareMask")]),
+
Proto("void", "CmdSetStencilWriteMask",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkStencilFaceFlags", "faceMask"),
- Param("uint32_t", "writeMask"),
- ]),
+ Param("uint32_t", "writeMask")]),
+
Proto("void", "CmdSetStencilReference",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkStencilFaceFlags", "faceMask"),
- Param("uint32_t", "reference"),
- ]),
+ Param("uint32_t", "reference")]),
+
Proto("void", "CmdBindDescriptorSets",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkPipelineBindPoint", "pipelineBindPoint"),
Param("VkPipelineLayout", "layout"),
Param("uint32_t", "firstSet"),
Param("uint32_t", "descriptorSetCount"),
- Param("VkDescriptorSet", "pDescriptorSets"),
+ Param("const VkDescriptorSet*", "pDescriptorSets"),
Param("uint32_t", "dynamicOffsetCount"),
- Param("uint32_t", "pDynamicOffsets"),
- ]),
+ Param("const uint32_t*", "pDynamicOffsets")]),
+
Proto("void", "CmdBindIndexBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "buffer"),
Param("VkDeviceSize", "offset"),
- Param("VkIndexType", "indexType"),
- ]),
+ Param("VkIndexType", "indexType")]),
+
Proto("void", "CmdBindVertexBuffers",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "firstBinding"),
Param("uint32_t", "bindingCount"),
- Param("VkBuffer", "pBuffers"),
- Param("VkDeviceSize", "pOffsets"),
- ]),
+ Param("const VkBuffer*", "pBuffers"),
+ Param("const VkDeviceSize*", "pOffsets")]),
+
Proto("void", "CmdDraw",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "vertexCount"),
Param("uint32_t", "instanceCount"),
Param("uint32_t", "firstVertex"),
- Param("uint32_t", "firstInstance"),
- ]),
+ Param("uint32_t", "firstInstance")]),
+
Proto("void", "CmdDrawIndexed",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "indexCount"),
Param("uint32_t", "instanceCount"),
Param("uint32_t", "firstIndex"),
Param("int32_t", "vertexOffset"),
- Param("uint32_t", "firstInstance"),
- ]),
+ Param("uint32_t", "firstInstance")]),
+
Proto("void", "CmdDrawIndirect",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "buffer"),
Param("VkDeviceSize", "offset"),
Param("uint32_t", "drawCount"),
- Param("uint32_t", "stride"),
- ]),
+ Param("uint32_t", "stride")]),
+
Proto("void", "CmdDrawIndexedIndirect",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "buffer"),
Param("VkDeviceSize", "offset"),
Param("uint32_t", "drawCount"),
- Param("uint32_t", "stride"),
- ]),
+ Param("uint32_t", "stride")]),
+
Proto("void", "CmdDispatch",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "x"),
Param("uint32_t", "y"),
- Param("uint32_t", "z"),
- ]),
+ Param("uint32_t", "z")]),
+
Proto("void", "CmdDispatchIndirect",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "buffer"),
- Param("VkDeviceSize", "offset"),
- ]),
+ Param("VkDeviceSize", "offset")]),
+
Proto("void", "CmdCopyBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "srcBuffer"),
Param("VkBuffer", "dstBuffer"),
Param("uint32_t", "regionCount"),
- Param("VkBufferCopy", "pRegions"),
- ]),
+ Param("const VkBufferCopy*", "pRegions")]),
+
Proto("void", "CmdCopyImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "srcImage"),
Param("VkImageLayout", "srcImageLayout"),
Param("VkImage", "dstImage"),
Param("VkImageLayout", "dstImageLayout"),
Param("uint32_t", "regionCount"),
- Param("VkImageCopy", "pRegions"),
- ]),
+ Param("const VkImageCopy*", "pRegions")]),
+
Proto("void", "CmdBlitImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "srcImage"),
Param("VkImageLayout", "srcImageLayout"),
Param("VkImage", "dstImage"),
Param("VkImageLayout", "dstImageLayout"),
Param("uint32_t", "regionCount"),
- Param("VkImageBlit", "pRegions"),
- Param("VkFilter", "filter"),
- ]),
+ Param("const VkImageBlit*", "pRegions"),
+ Param("VkFilter", "filter")]),
+
Proto("void", "CmdCopyBufferToImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "srcBuffer"),
Param("VkImage", "dstImage"),
Param("VkImageLayout", "dstImageLayout"),
Param("uint32_t", "regionCount"),
- Param("VkBufferImageCopy", "pRegions"),
- ]),
+ Param("const VkBufferImageCopy*", "pRegions")]),
+
Proto("void", "CmdCopyImageToBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "srcImage"),
Param("VkImageLayout", "srcImageLayout"),
Param("VkBuffer", "dstBuffer"),
Param("uint32_t", "regionCount"),
- Param("VkBufferImageCopy", "pRegions"),
- ]),
+ Param("const VkBufferImageCopy*", "pRegions")]),
+
Proto("void", "CmdUpdateBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "dstBuffer"),
Param("VkDeviceSize", "dstOffset"),
Param("VkDeviceSize", "dataSize"),
- Param("void", "pData"),
- ]),
+ Param("const void*", "pData")]),
+
Proto("void", "CmdFillBuffer",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkBuffer", "dstBuffer"),
Param("VkDeviceSize", "dstOffset"),
Param("VkDeviceSize", "size"),
- Param("uint32_t", "data"),
- ]),
+ Param("uint32_t", "data")]),
+
Proto("void", "CmdClearColorImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "image"),
Param("VkImageLayout", "imageLayout"),
- Param("VkClearColorValue", "pColor"),
+ Param("const VkClearColorValue*", "pColor"),
Param("uint32_t", "rangeCount"),
- Param("VkImageSubresourceRange", "pRanges"),
- ]),
+ Param("const VkImageSubresourceRange*", "pRanges")]),
+
Proto("void", "CmdClearDepthStencilImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "image"),
Param("VkImageLayout", "imageLayout"),
- Param("VkClearDepthStencilValue", "pDepthStencil"),
+ Param("const VkClearDepthStencilValue*", "pDepthStencil"),
Param("uint32_t", "rangeCount"),
- Param("VkImageSubresourceRange", "pRanges"),
- ]),
+ Param("const VkImageSubresourceRange*", "pRanges")]),
+
Proto("void", "CmdClearAttachments",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "attachmentCount"),
- Param("VkClearAttachment", "pAttachments"),
+ Param("const VkClearAttachment*", "pAttachments"),
Param("uint32_t", "rectCount"),
- Param("VkClearRect", "pRects"),
- ]),
+ Param("const VkClearRect*", "pRects")]),
+
Proto("void", "CmdResolveImage",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkImage", "srcImage"),
Param("VkImageLayout", "srcImageLayout"),
Param("VkImage", "dstImage"),
Param("VkImageLayout", "dstImageLayout"),
Param("uint32_t", "regionCount"),
- Param("VkImageResolve", "pRegions"),
- ]),
+ Param("const VkImageResolve*", "pRegions")]),
+
Proto("void", "CmdSetEvent",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkEvent", "event"),
- Param("VkPipelineStageFlags", "stageMask"),
- ]),
+ Param("VkPipelineStageFlags", "stageMask")]),
+
Proto("void", "CmdResetEvent",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkEvent", "event"),
- Param("VkPipelineStageFlags", "stageMask"),
- ]),
+ Param("VkPipelineStageFlags", "stageMask")]),
+
Proto("void", "CmdWaitEvents",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "eventCount"),
- Param("VkEvent", "pEvents"),
+ Param("const VkEvent*", "pEvents"),
Param("VkPipelineStageFlags", "srcStageMask"),
Param("VkPipelineStageFlags", "dstStageMask"),
Param("uint32_t", "memoryBarrierCount"),
- Param("VkMemoryBarrier", "pMemoryBarriers"),
+ Param("const VkMemoryBarrier*", "pMemoryBarriers"),
Param("uint32_t", "bufferMemoryBarrierCount"),
- Param("VkBufferMemoryBarrier", "pBufferMemoryBarriers"),
+ Param("const VkBufferMemoryBarrier*", "pBufferMemoryBarriers"),
Param("uint32_t", "imageMemoryBarrierCount"),
- Param("VkImageMemoryBarrier", "pImageMemoryBarriers"),
- ]),
+ Param("const VkImageMemoryBarrier*", "pImageMemoryBarriers")]),
+
Proto("void", "CmdPipelineBarrier",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkPipelineStageFlags", "srcStageMask"),
Param("VkPipelineStageFlags", "dstStageMask"),
Param("VkDependencyFlags", "dependencyFlags"),
Param("uint32_t", "memoryBarrierCount"),
- Param("VkMemoryBarrier", "pMemoryBarriers"),
+ Param("const VkMemoryBarrier*", "pMemoryBarriers"),
Param("uint32_t", "bufferMemoryBarrierCount"),
- Param("VkBufferMemoryBarrier", "pBufferMemoryBarriers"),
+ Param("const VkBufferMemoryBarrier*", "pBufferMemoryBarriers"),
Param("uint32_t", "imageMemoryBarrierCount"),
- Param("VkImageMemoryBarrier", "pImageMemoryBarriers"),
- ]),
+ Param("const VkImageMemoryBarrier*", "pImageMemoryBarriers")]),
+
Proto("void", "CmdBeginQuery",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkQueryPool", "queryPool"),
Param("uint32_t", "query"),
- Param("VkQueryControlFlags", "flags"),
- ]),
+ Param("VkQueryControlFlags", "flags")]),
+
Proto("void", "CmdEndQuery",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkQueryPool", "queryPool"),
- Param("uint32_t", "query"),
- ]),
+ Param("uint32_t", "query")]),
+
Proto("void", "CmdResetQueryPool",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkQueryPool", "queryPool"),
Param("uint32_t", "firstQuery"),
- Param("uint32_t", "queryCount"),
- ]),
+ Param("uint32_t", "queryCount")]),
+
Proto("void", "CmdWriteTimestamp",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkPipelineStageFlagBits", "pipelineStage"),
Param("VkQueryPool", "queryPool"),
- Param("uint32_t", "query"),
- ]),
+ Param("uint32_t", "query")]),
+
Proto("void", "CmdCopyQueryPoolResults",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkQueryPool", "queryPool"),
Param("uint32_t", "firstQuery"),
Param("uint32_t", "queryCount"),
Param("VkBuffer", "dstBuffer"),
Param("VkDeviceSize", "dstOffset"),
Param("VkDeviceSize", "stride"),
- Param("VkQueryResultFlags", "flags"),
- ]),
+ Param("VkQueryResultFlags", "flags")]),
+
Proto("void", "CmdPushConstants",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("VkPipelineLayout", "layout"),
Param("VkShaderStageFlags", "stageFlags"),
Param("uint32_t", "offset"),
Param("uint32_t", "size"),
- Param("void", "pValues"),
- ]),
+ Param("const void*", "pValues")]),
+
Proto("void", "CmdBeginRenderPass",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkRenderPassBeginInfo", "pRenderPassBegin"),
- Param("VkSubpassContents", "contents"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("const VkRenderPassBeginInfo*", "pRenderPassBegin"),
+ Param("VkSubpassContents", "contents")]),
+
Proto("void", "CmdNextSubpass",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkSubpassContents", "contents"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkSubpassContents", "contents")]),
+
Proto("void", "CmdEndRenderPass",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- ]),
+ [Param("VkCommandBuffer", "commandBuffer")]),
+
Proto("void", "CmdExecuteCommands",
- [
- Param("VkCommandBuffer", "commandBuffer"),
+ [Param("VkCommandBuffer", "commandBuffer"),
Param("uint32_t", "commandBufferCount"),
- Param("VkCommandBuffer", "pCommandBuffers"),
- ]),
+ Param("const VkCommandBuffer*", "pCommandBuffers")]),
],
+)
+VK_AMD_draw_indirect_count = Extension(
+ name="VK_AMD_draw_indirect_count",
+ headers=["vulkan/vulkan.h"],
+ objects=[],
+ protos=[
+ Proto("void", "CmdDrawIndirectCountAMD",
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkBuffer", "buffer"),
+ Param("VkDeviceSize", "offset"),
+ Param("VkBuffer", "countBuffer"),
+ Param("VkDeviceSize", "countBufferOffset"),
+ Param("uint32_t", "maxDrawCount"),
+ Param("uint32_t", "stride")]),
+
+ Proto("void", "CmdDrawIndexedIndirectCountAMD",
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkBuffer", "buffer"),
+ Param("VkDeviceSize", "offset"),
+ Param("VkBuffer", "countBuffer"),
+ Param("VkDeviceSize", "countBufferOffset"),
+ Param("uint32_t", "maxDrawCount"),
+ Param("uint32_t", "stride")]),
+ ],
+)
+
+VK_NV_external_memory_capabilities = Extension(
+ name="VK_NV_external_memory_capabilities",
+ headers=["vulkan/vulkan.h"],
+ objects=[],
+ protos=[
+ Proto("VkResult", "GetPhysicalDeviceExternalImageFormatPropertiesNV",
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("VkFormat", "format"),
+ Param("VkImageType", "type"),
+ Param("VkImageTiling", "tiling"),
+ Param("VkImageUsageFlags", "usage"),
+ Param("VkImageCreateFlags", "flags"),
+ Param("VkExternalMemoryHandleTypeFlagsNV", "externalHandleType"),
+ Param("VkExternalImageFormatPropertiesNV*", "pExternalImageFormatProperties")]),
+ ],
+)
+
+VK_NV_external_memory_win32 = Extension(
+ name="VK_NV_external_memory_win32",
+ headers=["vulkan/vulkan.h"],
+ objects=[],
+ ifdef="VK_USE_PLATFORM_WIN32_KHR",
+ protos=[
+ Proto("VkResult", "GetMemoryWin32HandleNV",
+ [Param("VkDevice", "device"),
+ Param("VkDeviceMemory", "memory"),
+ Param("VkExternalMemoryHandleTypeFlagsNV", "handleType"),
+ Param("HANDLE*", "pHandle")]),
+ ],
)
VK_KHR_surface = Extension(
name="VK_KHR_surface",
headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[
- "VkSurfaceKHR",
- ],
+ objects=["vkSurfaceKHR"],
protos=[
Proto("void", "DestroySurfaceKHR",
- [
- Param("VkInstance", "instance"),
+ [Param("VkInstance", "instance"),
Param("VkSurfaceKHR", "surface"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("VkResult", "GetPhysicalDeviceSurfaceSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "queueFamilyIndex"),
Param("VkSurfaceKHR", "surface"),
- Param("VkBool32", "pSupported"),
- ]),
+ Param("VkBool32*", "pSupported")]),
+
Proto("VkResult", "GetPhysicalDeviceSurfaceCapabilitiesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkSurfaceKHR", "surface"),
- Param("VkSurfaceCapabilitiesKHR", "pSurfaceCapabilities"),
- ]),
+ Param("VkSurfaceCapabilitiesKHR*", "pSurfaceCapabilities")]),
+
Proto("VkResult", "GetPhysicalDeviceSurfaceFormatsKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkSurfaceKHR", "surface"),
- Param("uint32_t", "pSurfaceFormatCount"),
- Param("VkSurfaceFormatKHR", "pSurfaceFormats"),
- ]),
+ Param("uint32_t*", "pSurfaceFormatCount"),
+ Param("VkSurfaceFormatKHR*", "pSurfaceFormats")]),
+
Proto("VkResult", "GetPhysicalDeviceSurfacePresentModesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkSurfaceKHR", "surface"),
- Param("uint32_t", "pPresentModeCount"),
- Param("VkPresentModeKHR", "pPresentModes"),
- ]),
+ Param("uint32_t*", "pPresentModeCount"),
+ Param("VkPresentModeKHR*", "pPresentModes")]),
],
-
-)
-
-VK_KHR_swapchain = Extension(
- name="VK_KHR_swapchain",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[
- "VkSwapchainKHR",
- ],
- protos=[
- Proto("VkResult", "CreateSwapchainKHR",
- [
- Param("VkDevice", "device"),
- Param("VkSwapchainCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSwapchainKHR", "pSwapchain"),
- ]),
- Proto("void", "DestroySwapchainKHR",
- [
- Param("VkDevice", "device"),
- Param("VkSwapchainKHR", "swapchain"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
- Proto("VkResult", "GetSwapchainImagesKHR",
- [
- Param("VkDevice", "device"),
- Param("VkSwapchainKHR", "swapchain"),
- Param("uint32_t", "pSwapchainImageCount"),
- Param("VkImage", "pSwapchainImages"),
- ]),
- Proto("VkResult", "AcquireNextImageKHR",
- [
- Param("VkDevice", "device"),
- Param("VkSwapchainKHR", "swapchain"),
- Param("uint64_t", "timeout"),
- Param("VkSemaphore", "semaphore"),
- Param("VkFence", "fence"),
- Param("uint32_t", "pImageIndex"),
- ]),
- Proto("VkResult", "QueuePresentKHR",
- [
- Param("VkQueue", "queue"),
- Param("VkPresentInfoKHR", "pPresentInfo"),
- ]),
- ],
-
)
VK_KHR_display = Extension(
name="VK_KHR_display",
headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[
- "VkDisplayKHR",
- "VkDisplayModeKHR",
- ],
+ objects=['VkSurfaceKHR', 'VkDisplayModeKHR'],
protos=[
Proto("VkResult", "GetPhysicalDeviceDisplayPropertiesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkDisplayPropertiesKHR", "pProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkDisplayPropertiesKHR*", "pProperties")]),
+
Proto("VkResult", "GetPhysicalDeviceDisplayPlanePropertiesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkDisplayPlanePropertiesKHR", "pProperties"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkDisplayPlanePropertiesKHR*", "pProperties")]),
+
Proto("VkResult", "GetDisplayPlaneSupportedDisplaysKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "planeIndex"),
- Param("uint32_t", "pDisplayCount"),
- Param("VkDisplayKHR", "pDisplays"),
- ]),
+ Param("uint32_t*", "pDisplayCount"),
+ Param("VkDisplayKHR*", "pDisplays")]),
+
Proto("VkResult", "GetDisplayModePropertiesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkDisplayKHR", "display"),
- Param("uint32_t", "pPropertyCount"),
- Param("VkDisplayModePropertiesKHR", "pProperties"),
- ]),
+ Param("uint32_t*", "pPropertyCount"),
+ Param("VkDisplayModePropertiesKHR*", "pProperties")]),
+
Proto("VkResult", "CreateDisplayModeKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkDisplayKHR", "display"),
- Param("VkDisplayModeCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDisplayModeKHR", "pMode"),
- ]),
+ Param("const VkDisplayModeCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDisplayModeKHR*", "pMode")]),
+
Proto("VkResult", "GetDisplayPlaneCapabilitiesKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("VkDisplayModeKHR", "mode"),
Param("uint32_t", "planeIndex"),
- Param("VkDisplayPlaneCapabilitiesKHR", "pCapabilities"),
- ]),
+ Param("VkDisplayPlaneCapabilitiesKHR*", "pCapabilities")]),
+
Proto("VkResult", "CreateDisplayPlaneSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkDisplaySurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkDisplaySurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
],
+)
+
+VK_KHR_swapchain = Extension(
+ name="VK_KHR_swapchain",
+ headers=["vulkan/vulkan.h"],
+ objects=["VkSwapchainKHR"],
+ protos=[
+ Proto("VkResult", "CreateSwapchainKHR",
+ [Param("VkDevice", "device"),
+ Param("const VkSwapchainCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSwapchainKHR*", "pSwapchain")]),
+ Proto("void", "DestroySwapchainKHR",
+ [Param("VkDevice", "device"),
+ Param("VkSwapchainKHR", "swapchain"),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
+ Proto("VkResult", "GetSwapchainImagesKHR",
+ [Param("VkDevice", "device"),
+ Param("VkSwapchainKHR", "swapchain"),
+ Param("uint32_t*", "pSwapchainImageCount"),
+ Param("VkImage*", "pSwapchainImages")]),
+
+ Proto("VkResult", "AcquireNextImageKHR",
+ [Param("VkDevice", "device"),
+ Param("VkSwapchainKHR", "swapchain"),
+ Param("uint64_t", "timeout"),
+ Param("VkSemaphore", "semaphore"),
+ Param("VkFence", "fence"),
+ Param("uint32_t*", "pImageIndex")]),
+
+ Proto("VkResult", "QueuePresentKHR",
+ [Param("VkQueue", "queue"),
+ Param("const VkPresentInfoKHR*", "pPresentInfo")]),
+ ],
)
VK_KHR_display_swapchain = Extension(
name="VK_KHR_display_swapchain",
headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
+ objects=["VkDisplayPresentInfoKHR"],
protos=[
Proto("VkResult", "CreateSharedSwapchainsKHR",
- [
- Param("VkDevice", "device"),
+ [Param("VkDevice", "device"),
Param("uint32_t", "swapchainCount"),
- Param("VkSwapchainCreateInfoKHR", "pCreateInfos"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSwapchainKHR", "pSwapchains"),
- ]),
+ Param("const VkSwapchainCreateInfoKHR*", "pCreateInfos"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSwapchainKHR*", "pSwapchains")]),
],
-
)
-VK_KHR_xlib_surface = Extension(
- name="VK_KHR_xlib_surface",
+VK_KHR_xcb_surface = Extension(
+ name="VK_KHR_xcb_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_XLIB_KHR",
objects=[],
protos=[
- Proto("VkResult", "CreateXlibSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkXlibSurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
- Proto("VkBool32", "GetPhysicalDeviceXlibPresentationSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ Proto("VkResult", "CreateXcbSurfaceKHR",
+ [Param("VkInstance", "instance"),
+ Param("const VkXcbSurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
+
+ Proto("VkBool32", "GetPhysicalDeviceXcbPresentationSupportKHR",
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "queueFamilyIndex"),
- Param("Display", "dpy"),
- Param("VisualID", "visualID"),
- ]),
+ Param("xcb_connection_t*", "connection"),
+ Param("xcb_visualid_t", "visual_id")]),
],
-
)
-VK_KHR_xcb_surface = Extension(
- name="VK_KHR_xcb_surface",
+VK_KHR_xlib_surface = Extension(
+ name="VK_KHR_xlib_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_XCB_KHR",
objects=[],
+ ifdef="VK_USE_PLATFORM_XLIB_KHR",
protos=[
- Proto("VkResult", "CreateXcbSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkXcbSurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
- Proto("VkBool32", "GetPhysicalDeviceXcbPresentationSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ Proto("VkResult", "CreateXlibSurfaceKHR",
+ [Param("VkInstance", "instance"),
+ Param("const VkXlibSurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
+
+ Proto("VkBool32", "GetPhysicalDeviceXlibPresentationSupportKHR",
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "queueFamilyIndex"),
- Param("xcb_connection_t", "connection"),
- Param("xcb_visualid_t", "visual_id"),
- ]),
+ Param("Display*", "dpy"),
+ Param("VisualID", "visualID")]),
],
-
)
VK_KHR_wayland_surface = Extension(
name="VK_KHR_wayland_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_WAYLAND_KHR",
objects=[],
protos=[
Proto("VkResult", "CreateWaylandSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkWaylandSurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkWaylandSurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
+
Proto("VkBool32", "GetPhysicalDeviceWaylandPresentationSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "queueFamilyIndex"),
- Param("wl_display", "display"),
- ]),
+ Param("struct wl_display*", "display")]),
],
-
)
VK_KHR_mir_surface = Extension(
name="VK_KHR_mir_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_MIR_KHR",
objects=[],
protos=[
Proto("VkResult", "CreateMirSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkMirSurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkMirSurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
+
Proto("VkBool32", "GetPhysicalDeviceMirPresentationSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
+ [Param("VkPhysicalDevice", "physicalDevice"),
Param("uint32_t", "queueFamilyIndex"),
- Param("MirConnection", "connection"),
- ]),
+ Param("MirConnection*", "connection")]),
],
-
)
VK_KHR_android_surface = Extension(
name="VK_KHR_android_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_ANDROID_KHR",
objects=[],
protos=[
Proto("VkResult", "CreateAndroidSurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkAndroidSurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkAndroidSurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
],
-
)
VK_KHR_win32_surface = Extension(
name="VK_KHR_win32_surface",
headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_WIN32_KHR",
objects=[],
protos=[
Proto("VkResult", "CreateWin32SurfaceKHR",
- [
- Param("VkInstance", "instance"),
- Param("VkWin32SurfaceCreateInfoKHR", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkSurfaceKHR", "pSurface"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkWin32SurfaceCreateInfoKHR*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkSurfaceKHR*", "pSurface")]),
+
Proto("VkBool32", "GetPhysicalDeviceWin32PresentationSupportKHR",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("uint32_t", "queueFamilyIndex"),
- ]),
+ [Param("VkPhysicalDevice", "physicalDevice"),
+ Param("uint32_t", "queueFamilyIndex")]),
],
-
-)
-
-VK_KHR_sampler_mirror_clamp_to_edge = Extension(
- name="VK_KHR_sampler_mirror_clamp_to_edge",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
)
VK_EXT_debug_report = Extension(
name="VK_EXT_debug_report",
headers=["vulkan/vulkan.h"],
- ifdef="",
objects=[
"VkDebugReportCallbackEXT",
],
protos=[
Proto("VkResult", "CreateDebugReportCallbackEXT",
- [
- Param("VkInstance", "instance"),
- Param("VkDebugReportCallbackCreateInfoEXT", "pCreateInfo"),
- Param("VkAllocationCallbacks", "pAllocator"),
- Param("VkDebugReportCallbackEXT", "pCallback"),
- ]),
+ [Param("VkInstance", "instance"),
+ Param("const VkDebugReportCallbackCreateInfoEXT*", "pCreateInfo"),
+ Param("const VkAllocationCallbacks*", "pAllocator"),
+ Param("VkDebugReportCallbackEXT*", "pCallback")]),
+
Proto("void", "DestroyDebugReportCallbackEXT",
- [
- Param("VkInstance", "instance"),
+ [Param("VkInstance", "instance"),
Param("VkDebugReportCallbackEXT", "callback"),
- Param("VkAllocationCallbacks", "pAllocator"),
- ]),
+ Param("const VkAllocationCallbacks*", "pAllocator")]),
+
Proto("void", "DebugReportMessageEXT",
- [
- Param("VkInstance", "instance"),
+ [Param("VkInstance", "instance"),
Param("VkDebugReportFlagsEXT", "flags"),
- Param("VkDebugReportObjectTypeEXT", "objectType"),
+ Param("VkDebugReportObjectTypeEXT", "objType"),
Param("uint64_t", "object"),
Param("size_t", "location"),
- Param("int32_t", "messageCode"),
- Param("char", "pLayerPrefix"),
- Param("char", "pMessage"),
- ]),
+ Param("int32_t", "msgCode"),
+ Param("const char *", "pLayerPrefix"),
+ Param("const char *", "pMsg")]),
],
-
-)
-
-VK_NV_glsl_shader = Extension(
- name="VK_NV_glsl_shader",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
-
-VK_IMG_filter_cubic = Extension(
- name="VK_IMG_filter_cubic",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
-
-VK_AMD_rasterization_order = Extension(
- name="VK_AMD_rasterization_order",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
-
-VK_AMD_shader_trinary_minmax = Extension(
- name="VK_AMD_shader_trinary_minmax",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
-
-VK_AMD_shader_explicit_vertex_parameter = Extension(
- name="VK_AMD_shader_explicit_vertex_parameter",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
)
VK_EXT_debug_marker = Extension(
name="VK_EXT_debug_marker",
headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
+ objects=[
+ "VkDebugMarkerObjectNameInfoEXT",
+ "VkDebugMarkerObjectTagInfoEXT",
+ "VkDebugMarkerMarkerInfoEXT"
+ ],
protos=[
Proto("VkResult", "DebugMarkerSetObjectTagEXT",
- [
- Param("VkDevice", "device"),
- Param("VkDebugMarkerObjectTagInfoEXT", "pTagInfo"),
- ]),
- Proto("VkResult", "DebugMarkerSetObjectNameEXT",
- [
- Param("VkDevice", "device"),
- Param("VkDebugMarkerObjectNameInfoEXT", "pNameInfo"),
- ]),
- Proto("void", "CmdDebugMarkerBeginEXT",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkDebugMarkerMarkerInfoEXT", "pMarkerInfo"),
- ]),
- Proto("void", "CmdDebugMarkerEndEXT",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- ]),
- Proto("void", "CmdDebugMarkerInsertEXT",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkDebugMarkerMarkerInfoEXT", "pMarkerInfo"),
- ]),
- ],
+ [Param("VkDevice", "device"),
+ Param("VkDebugMarkerObjectTagInfoEXT*", "pTagInfo")]),
-)
+ Proto("VkResult", "DebugMarkerSetObjectNameEXT",
+ [Param("VkDevice", "device"),
+ Param("VkDebugMarkerObjectNameInfoEXT*", "pNameInfo")]),
-VK_AMD_gcn_shader = Extension(
- name="VK_AMD_gcn_shader",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+ Proto("void", "CmdDebugMarkerBeginEXT",
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkDebugMarkerMarkerInfoEXT*", "pMarkerInfo")]),
-VK_NV_dedicated_allocation = Extension(
- name="VK_NV_dedicated_allocation",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+ Proto("void", "CmdDebugMarkerEndEXT",
+ [Param("VkCommandBuffer", "commandBuffer")]),
-VK_AMD_draw_indirect_count = Extension(
- name="VK_AMD_draw_indirect_count",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[
- Proto("void", "CmdDrawIndirectCountAMD",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkBuffer", "buffer"),
- Param("VkDeviceSize", "offset"),
- Param("VkBuffer", "countBuffer"),
- Param("VkDeviceSize", "countBufferOffset"),
- Param("uint32_t", "maxDrawCount"),
- Param("uint32_t", "stride"),
- ]),
- Proto("void", "CmdDrawIndexedIndirectCountAMD",
- [
- Param("VkCommandBuffer", "commandBuffer"),
- Param("VkBuffer", "buffer"),
- Param("VkDeviceSize", "offset"),
- Param("VkBuffer", "countBuffer"),
- Param("VkDeviceSize", "countBufferOffset"),
- Param("uint32_t", "maxDrawCount"),
- Param("uint32_t", "stride"),
- ]),
+ Proto("void", "CmdDebugMarkerInsertEXT",
+ [Param("VkCommandBuffer", "commandBuffer"),
+ Param("VkDebugMarkerMarkerInfoEXT*", "pMarkerInfo")]),
],
-
-)
-
-VK_AMD_negative_viewport_height = Extension(
- name="VK_AMD_negative_viewport_height",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
-
-VK_AMD_gpu_shader_half_float = Extension(
- name="VK_AMD_gpu_shader_half_float",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
)
-VK_AMD_shader_ballot = Extension(
- name="VK_AMD_shader_ballot",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+import sys
-VK_IMG_format_pvrtc = Extension(
- name="VK_IMG_format_pvrtc",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+wsi_linux = ['Xcb', 'Xlib', 'Wayland', 'Mir', 'Display']
-VK_NV_external_memory_capabilities = Extension(
- name="VK_NV_external_memory_capabilities",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[
- Proto("VkResult", "GetPhysicalDeviceExternalImageFormatPropertiesNV",
- [
- Param("VkPhysicalDevice", "physicalDevice"),
- Param("VkFormat", "format"),
- Param("VkImageType", "type"),
- Param("VkImageTiling", "tiling"),
- Param("VkImageUsageFlags", "usage"),
- Param("VkImageCreateFlags", "flags"),
- Param("VkExternalMemoryHandleTypeFlagsNV", "externalHandleType"),
- Param("VkExternalImageFormatPropertiesNV", "pExternalImageFormatProperties"),
- ]),
- ],
-
-)
+# Set up platform-specific display servers
+linux_display_servers = ['Xcb', 'Xlib', 'Wayland', 'Mir', 'Display']
+win32_display_servers = ['Win32']
+android_display_servers = ['Android']
-VK_NV_external_memory = Extension(
- name="VK_NV_external_memory",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+# Define non-WSI platform-specific extensions
+android_only_exts = []
+linux_only_exts = []
+win32_only_exts = [VK_NV_external_memory_win32,
+# VK_NV_win32_keyed_mutex,
+ ]
-VK_NV_external_memory_win32 = Extension(
- name="VK_NV_external_memory_win32",
- headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_WIN32_KHR",
- objects=[],
- protos=[
- Proto("VkResult", "GetMemoryWin32HandleNV",
- [
- Param("VkDevice", "device"),
- Param("VkDeviceMemory", "memory"),
- Param("VkExternalMemoryHandleTypeFlagsNV", "handleType"),
- Param("HANDLE", "pHandle"),
- ]),
- ],
+# Define platform-specific WSI extensions
+android_wsi_exts = [VK_KHR_android_surface,
+ ]
+linux_wsi_exts = [VK_KHR_xlib_surface,
+ VK_KHR_xcb_surface,
+ VK_KHR_wayland_surface,
+ VK_KHR_mir_surface,
+ ]
+win32_wsi_exts = [VK_KHR_win32_surface
+ ]
-)
+# Define extensions common to all configurations
+common_exts = [VK_VERSION_1_0,
+ VK_KHR_surface,
+ VK_KHR_swapchain,
+ VK_KHR_display_swapchain,
+ ]
-VK_NV_win32_keyed_mutex = Extension(
- name="VK_NV_win32_keyed_mutex",
- headers=["vulkan/vulkan.h"],
- ifdef="VK_USE_PLATFORM_WIN32_KHR",
- objects=[],
- protos=[],
-)
+# Define extensions not exported by the loader
+non_exported_exts = [VK_NV_external_memory_capabilities,
+ VK_AMD_draw_indirect_count,
+ VK_EXT_debug_report,
+ VK_EXT_debug_marker,
+# VK_KHR_sampler_mirror_clamp_to_edge,
+# VK_NV_glsl_shader,
+# VK_IMG_filter_cubic,
+# VK_AMD_rasterization_order,
+# VK_AMD_shader_trinary_minmax,
+# VK_AMD_shader_explicit_vertex_parameter,
+# VK_AMD_gcn_shader,
+# VK_NV_dedicated_allocation,
+# VK_NV_external_memory,
+# VK_EXT_validation_flags,
+# VK_AMD_negative_viewport_height,
+# VK_AMD_gpu_shader_half_float,
+# VK_AMD_shader_ballot,
+# VK_IMG_format_pvrtc,
+ ]
+non_android_exts = [VK_KHR_display,
+ ]
+extensions = common_exts
+extensions_all = non_exported_exts
-VK_EXT_validation_flags = Extension(
- name="VK_EXT_validation_flags",
- headers=["vulkan/vulkan.h"],
- ifdef="",
- objects=[],
- protos=[],
-)
+if sys.argv[1] in win32_display_servers:
+ extensions += win32_wsi_exts
+ extensions_all += extensions + win32_only_exts
+elif sys.argv[1] in linux_display_servers:
+ extensions += linux_wsi_exts
+ extensions_all += extensions + linux_only_exts
+elif sys.argv[1] in android_display_servers:
+ extensions += android_wsi_exts
+ extensions_all += extensions + android_only_exts
+else:
+ extensions += win32_wsi_exts + linux_wsi_exts + android_wsi_exts
+ extensions_all += extensions + win32_only_exts + linux_only_exts + android_only_exts
object_dispatch_list = [
"VkInstance",
"VkQueue",
"VkCommandBuffer",
]
+
object_non_dispatch_list = [
+ "VkCommandPool",
"VkFence",
"VkDeviceMemory",
"VkBuffer",
"VkImageView",
"VkShaderModule",
"VkPipelineCache",
- "VkPipeline",
"VkPipelineLayout",
- "VkSampler",
+ "VkPipeline",
"VkDescriptorSetLayout",
+ "VkSampler",
"VkDescriptorPool",
"VkDescriptorSet",
- "VkFramebuffer",
"VkRenderPass",
- "VkCommandPool",
- "VkSurfaceKHR",
+ "VkFramebuffer",
"VkSwapchainKHR",
+ "VkSurfaceKHR",
+ "VkDebugReportCallbackEXT",
"VkDisplayKHR",
"VkDisplayModeKHR",
- "VkDebugReportCallbackEXT",
]
-#
-# Build lists of extensions for use by other codegen utilites
-import sys
-
-# Set up platform-specific display servers
-android_display_servers = ['Android']
-linux_display_servers = ['Xcb', 'Xlib', 'Wayland', 'Mir', 'Display']
-win32_display_servers = ['Win32']
-
-# Define platform-specific WSI extensions
-android_wsi_exts = [VK_KHR_android_surface, ]
-linux_wsi_exts = [VK_KHR_xlib_surface, VK_KHR_xcb_surface, VK_KHR_wayland_surface, VK_KHR_mir_surface, ]
-win32_wsi_exts = [VK_KHR_win32_surface, ]
-
-# Define non-WSI platform-specific extensions
-android_only_exts = []
-linux_only_exts = []
-win32_only_exts = [VK_NV_external_memory_win32, VK_NV_win32_keyed_mutex, ]
-
-# Define extensions common to all configurations
-common_exts = [VK_VERSION_1_0, VK_KHR_surface, VK_KHR_swapchain, VK_KHR_display_swapchain, ]
-
-# Define extensions not exported by the loader
-non_exported_exts = [
- VK_KHR_display,
- VK_KHR_sampler_mirror_clamp_to_edge,
- VK_EXT_debug_report,
- VK_NV_glsl_shader,
- VK_IMG_filter_cubic,
- VK_AMD_rasterization_order,
- VK_AMD_shader_trinary_minmax,
- VK_AMD_shader_explicit_vertex_parameter,
- VK_EXT_debug_marker,
- VK_AMD_gcn_shader,
- VK_NV_dedicated_allocation,
- VK_AMD_draw_indirect_count,
- VK_AMD_negative_viewport_height,
- VK_AMD_gpu_shader_half_float,
- VK_AMD_shader_ballot,
- VK_IMG_format_pvrtc,
- VK_NV_external_memory_capabilities,
- VK_NV_external_memory,
- VK_EXT_validation_flags,
- ]
-
-extensions = common_exts
-extensions_all = non_exported_exts
-
-if sys.argv[1] in win32_display_servers:
- extensions += win32_wsi_exts
- extensions_all += extensions + win32_only_exts
-elif sys.argv[1] in linux_display_servers:
- extensions += linux_wsi_exts
- extensions_all += extensions + linux_only_exts
-elif sys.argv[1] in android_display_servers:
- extensions += android_wsi_exts
- extensions_all += extensions + android_only_exts
-else:
- extensions += win32_wsi_exts + linux_wsi_exts + android_wsi_exts
- extensions_all += extensions + win32_only_exts + linux_only_exts + android_only_exts
object_type_list = object_dispatch_list + object_non_dispatch_list
protos_all.extend(ext.protos)
proto_all_names = [proto.name for proto in protos_all]
-