diff --git a/vendor/vulkan/_gen/create_vulkan_odin_wrapper.py b/vendor/vulkan/_gen/create_vulkan_odin_wrapper.py index 45f09e616..c619bdf52 100644 --- a/vendor/vulkan/_gen/create_vulkan_odin_wrapper.py +++ b/vendor/vulkan/_gen/create_vulkan_odin_wrapper.py @@ -38,7 +38,7 @@ def no_vk(t): t = t.replace('VK_', '') return t -def convert_type(t): +def convert_type(t, prev_name, curr_name): table = { "Bool32": 'b32', "float": 'f32', @@ -56,14 +56,14 @@ def convert_type(t): "void*": "rawptr", "void *": "rawptr", "char*": 'cstring', - "const uint32_t* const*": "^^u32", + "const uint32_t* const*": "^[^]u32", "const void*": 'rawptr', "const char*": 'cstring', - "const char* const*": 'cstring_array', + "const char* const*": '[^]cstring', "const ObjectTableEntryNVX* const*": "^^ObjectTableEntryNVX", - "const void* const *": "^rawptr", - "const AccelerationStructureGeometryKHR* const*": "^^AccelerationStructureGeometryKHR", - "const AccelerationStructureBuildRangeInfoKHR* const*": "^^AccelerationStructureBuildRangeInfoKHR", + "const void* const *": "[^]rawptr", + "const AccelerationStructureGeometryKHR* const*": "^[^]AccelerationStructureGeometryKHR", + "const AccelerationStructureBuildRangeInfoKHR* const*": "^[^]AccelerationStructureBuildRangeInfoKHR", "struct BaseOutStructure": "BaseOutStructure", "struct BaseInStructure": "BaseInStructure", 'v': '', @@ -74,13 +74,32 @@ def convert_type(t): if t == "": return t + elif t.endswith("*"): + elem = "" + pointer = "^" if t.startswith("const"): ttype = t[6:len(t)-1] - return "^{}".format(convert_type(ttype)) + elem = convert_type(ttype, prev_name, curr_name) else: ttype = t[:len(t)-1] - return "^{}".format(convert_type(ttype)) + elem = convert_type(ttype, prev_name, curr_name) + + if curr_name.endswith("s") or curr_name.endswith("Table"): + if prev_name.endswith("Count") or prev_name.endswith("Counts"): + pointer = "[^]" + elif curr_name.startswith("pp"): + if elem.startswith("[^]"): + pass + else: + pointer = "[^]" + elif curr_name.startswith("p"): + pointer = "[^]" + + if curr_name and elem.endswith("Flags"): + pointer = "[^]" + + return "{}{}".format(pointer, elem) elif t[0].isupper(): return t @@ -154,8 +173,8 @@ def fix_enum_arg(name, is_flag_bit=False): name = name.replace("_BIT", "") return name -def do_type(t): - return convert_type(no_vk(t)).replace("FlagBits", "Flags") +def do_type(t, prev_name="", name=""): + return convert_type(no_vk(t), prev_name, name).replace("FlagBits", "Flags") def parse_handles_def(f): f.write("// Handles types\n") @@ -246,6 +265,8 @@ def parse_enums(f): f.write("// Enums\n") data = re.findall(r"typedef enum Vk(\w+) {(.+?)} \w+;", src, re.S) + + data.sort(key=lambda x: x[0]) generated_flags = set() @@ -373,6 +394,7 @@ def parse_structs(f): f.write("#raw_union ") f.write("{\n") + prev_name = "" ffields = [] for type_, fname in fields: if '[' in fname: @@ -381,11 +403,12 @@ def parse_structs(f): n = fix_arg(fname) if "Flag_Bits" in type_: comment = " // only single bit set" - t = do_type(type_) + t = do_type(type_, prev_name, fname) if t == "Structure_Type" and n == "type": n = "s_type" ffields.append(tuple([n, t, comment])) + prev_name = fname max_len = max(len(n) for n, _, _ in ffields) @@ -423,7 +446,14 @@ def parse_procedures(f): for rt, name, fields in data: proc_name = no_vk(name) - pf = [(do_type(t), fix_arg(n)) for t, n in re.findall(r"(?:\s*|)(.+?)\s*(\w+)(?:,|$)", fields)] + + pf = [] + prev_name = "" + for type_, fname in re.findall(r"(?:\s*|)(.+?)\s*(\w+)(?:,|$)", fields): + curr_name = fix_arg(fname) + pf.append((do_type(type_, prev_name, curr_name), curr_name)) + prev_name = curr_name + data_fields = ', '.join(["{}: {}".format(n, t) for t, n in pf if t != ""]) ts = "proc \"c\" ({})".format(data_fields) @@ -517,8 +547,6 @@ NonDispatchableHandle :: distinct u64 SetProcAddressType :: #type proc(p: rawptr, name: cstring) -cstring_array :: ^cstring // Helper Type - RemoteAddressNV :: distinct rawptr // Declared inline before MemoryGetRemoteAddressInfoNV // Base constants diff --git a/vendor/vulkan/core.odin b/vendor/vulkan/core.odin index 4c20b06ae..3ddab9367 100644 --- a/vendor/vulkan/core.odin +++ b/vendor/vulkan/core.odin @@ -23,8 +23,6 @@ NonDispatchableHandle :: distinct u64 SetProcAddressType :: #type proc(p: rawptr, name: cstring) -cstring_array :: ^cstring // Helper Type - RemoteAddressNV :: distinct rawptr // Declared inline before MemoryGetRemoteAddressInfoNV // Base constants diff --git a/vendor/vulkan/enums.odin b/vendor/vulkan/enums.odin index b686dd241..c7f9343e8 100644 --- a/vendor/vulkan/enums.odin +++ b/vendor/vulkan/enums.odin @@ -6,6 +6,1795 @@ package vulkan import "core:c" // Enums +AccelerationStructureBuildTypeKHR :: enum c.int { + HOST = 0, + DEVICE = 1, + HOST_OR_DEVICE = 2, +} + +AccelerationStructureCompatibilityKHR :: enum c.int { + COMPATIBLE = 0, + INCOMPATIBLE = 1, +} + +AccelerationStructureCreateFlagsKHR :: distinct bit_set[AccelerationStructureCreateFlagKHR; Flags] +AccelerationStructureCreateFlagKHR :: enum Flags { + DEVICE_ADDRESS_CAPTURE_REPLAY = 0, + MOTION_NV = 2, +} + +AccelerationStructureMemoryRequirementsTypeNV :: enum c.int { + OBJECT = 0, + BUILD_SCRATCH = 1, + UPDATE_SCRATCH = 2, +} + +AccelerationStructureMotionInstanceTypeNV :: enum c.int { + STATIC = 0, + MATRIX_MOTION = 1, + SRT_MOTION = 2, +} + +AccelerationStructureTypeKHR :: enum c.int { + TOP_LEVEL = 0, + BOTTOM_LEVEL = 1, + GENERIC = 2, + TOP_LEVEL_NV = TOP_LEVEL, + BOTTOM_LEVEL_NV = BOTTOM_LEVEL, +} + +AccessFlags :: distinct bit_set[AccessFlag; Flags] +AccessFlag :: enum Flags { + INDIRECT_COMMAND_READ = 0, + INDEX_READ = 1, + VERTEX_ATTRIBUTE_READ = 2, + UNIFORM_READ = 3, + INPUT_ATTACHMENT_READ = 4, + SHADER_READ = 5, + SHADER_WRITE = 6, + COLOR_ATTACHMENT_READ = 7, + COLOR_ATTACHMENT_WRITE = 8, + DEPTH_STENCIL_ATTACHMENT_READ = 9, + DEPTH_STENCIL_ATTACHMENT_WRITE = 10, + TRANSFER_READ = 11, + TRANSFER_WRITE = 12, + HOST_READ = 13, + HOST_WRITE = 14, + MEMORY_READ = 15, + MEMORY_WRITE = 16, + TRANSFORM_FEEDBACK_WRITE_EXT = 25, + TRANSFORM_FEEDBACK_COUNTER_READ_EXT = 26, + TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT = 27, + CONDITIONAL_RENDERING_READ_EXT = 20, + COLOR_ATTACHMENT_READ_NONCOHERENT_EXT = 19, + ACCELERATION_STRUCTURE_READ_KHR = 21, + ACCELERATION_STRUCTURE_WRITE_KHR = 22, + FRAGMENT_DENSITY_MAP_READ_EXT = 24, + FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR = 23, + COMMAND_PREPROCESS_READ_NV = 17, + COMMAND_PREPROCESS_WRITE_NV = 18, + SHADING_RATE_IMAGE_READ_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR, + ACCELERATION_STRUCTURE_READ_NV = ACCELERATION_STRUCTURE_READ_KHR, + ACCELERATION_STRUCTURE_WRITE_NV = ACCELERATION_STRUCTURE_WRITE_KHR, +} + +AccessFlags_NONE_KHR :: AccessFlags{} + + +AcquireProfilingLockFlagsKHR :: distinct bit_set[AcquireProfilingLockFlagKHR; Flags] +AcquireProfilingLockFlagKHR :: enum Flags { +} + +AttachmentDescriptionFlags :: distinct bit_set[AttachmentDescriptionFlag; Flags] +AttachmentDescriptionFlag :: enum Flags { + MAY_ALIAS = 0, +} + +AttachmentLoadOp :: enum c.int { + LOAD = 0, + CLEAR = 1, + DONT_CARE = 2, + NONE_EXT = 1000400000, +} + +AttachmentStoreOp :: enum c.int { + STORE = 0, + DONT_CARE = 1, + NONE_EXT = 1000301000, + NONE_QCOM = NONE_EXT, +} + +BlendFactor :: enum c.int { + ZERO = 0, + ONE = 1, + SRC_COLOR = 2, + ONE_MINUS_SRC_COLOR = 3, + DST_COLOR = 4, + ONE_MINUS_DST_COLOR = 5, + SRC_ALPHA = 6, + ONE_MINUS_SRC_ALPHA = 7, + DST_ALPHA = 8, + ONE_MINUS_DST_ALPHA = 9, + CONSTANT_COLOR = 10, + ONE_MINUS_CONSTANT_COLOR = 11, + CONSTANT_ALPHA = 12, + ONE_MINUS_CONSTANT_ALPHA = 13, + SRC_ALPHA_SATURATE = 14, + SRC1_COLOR = 15, + ONE_MINUS_SRC1_COLOR = 16, + SRC1_ALPHA = 17, + ONE_MINUS_SRC1_ALPHA = 18, +} + +BlendOp :: enum c.int { + ADD = 0, + SUBTRACT = 1, + REVERSE_SUBTRACT = 2, + MIN = 3, + MAX = 4, + ZERO_EXT = 1000148000, + SRC_EXT = 1000148001, + DST_EXT = 1000148002, + SRC_OVER_EXT = 1000148003, + DST_OVER_EXT = 1000148004, + SRC_IN_EXT = 1000148005, + DST_IN_EXT = 1000148006, + SRC_OUT_EXT = 1000148007, + DST_OUT_EXT = 1000148008, + SRC_ATOP_EXT = 1000148009, + DST_ATOP_EXT = 1000148010, + XOR_EXT = 1000148011, + MULTIPLY_EXT = 1000148012, + SCREEN_EXT = 1000148013, + OVERLAY_EXT = 1000148014, + DARKEN_EXT = 1000148015, + LIGHTEN_EXT = 1000148016, + COLORDODGE_EXT = 1000148017, + COLORBURN_EXT = 1000148018, + HARDLIGHT_EXT = 1000148019, + SOFTLIGHT_EXT = 1000148020, + DIFFERENCE_EXT = 1000148021, + EXCLUSION_EXT = 1000148022, + INVERT_EXT = 1000148023, + INVERT_RGB_EXT = 1000148024, + LINEARDODGE_EXT = 1000148025, + LINEARBURN_EXT = 1000148026, + VIVIDLIGHT_EXT = 1000148027, + LINEARLIGHT_EXT = 1000148028, + PINLIGHT_EXT = 1000148029, + HARDMIX_EXT = 1000148030, + HSL_HUE_EXT = 1000148031, + HSL_SATURATION_EXT = 1000148032, + HSL_COLOR_EXT = 1000148033, + HSL_LUMINOSITY_EXT = 1000148034, + PLUS_EXT = 1000148035, + PLUS_CLAMPED_EXT = 1000148036, + PLUS_CLAMPED_ALPHA_EXT = 1000148037, + PLUS_DARKER_EXT = 1000148038, + MINUS_EXT = 1000148039, + MINUS_CLAMPED_EXT = 1000148040, + CONTRAST_EXT = 1000148041, + INVERT_OVG_EXT = 1000148042, + RED_EXT = 1000148043, + GREEN_EXT = 1000148044, + BLUE_EXT = 1000148045, +} + +BlendOverlapEXT :: enum c.int { + UNCORRELATED = 0, + DISJOINT = 1, + CONJOINT = 2, +} + +BorderColor :: enum c.int { + FLOAT_TRANSPARENT_BLACK = 0, + INT_TRANSPARENT_BLACK = 1, + FLOAT_OPAQUE_BLACK = 2, + INT_OPAQUE_BLACK = 3, + FLOAT_OPAQUE_WHITE = 4, + INT_OPAQUE_WHITE = 5, + FLOAT_CUSTOM_EXT = 1000287003, + INT_CUSTOM_EXT = 1000287004, +} + +BufferCreateFlags :: distinct bit_set[BufferCreateFlag; Flags] +BufferCreateFlag :: enum Flags { + SPARSE_BINDING = 0, + SPARSE_RESIDENCY = 1, + SPARSE_ALIASED = 2, + PROTECTED = 3, + DEVICE_ADDRESS_CAPTURE_REPLAY = 4, + DEVICE_ADDRESS_CAPTURE_REPLAY_EXT = DEVICE_ADDRESS_CAPTURE_REPLAY, + DEVICE_ADDRESS_CAPTURE_REPLAY_KHR = DEVICE_ADDRESS_CAPTURE_REPLAY, +} + +BufferUsageFlags :: distinct bit_set[BufferUsageFlag; Flags] +BufferUsageFlag :: enum Flags { + TRANSFER_SRC = 0, + TRANSFER_DST = 1, + UNIFORM_TEXEL_BUFFER = 2, + STORAGE_TEXEL_BUFFER = 3, + UNIFORM_BUFFER = 4, + STORAGE_BUFFER = 5, + INDEX_BUFFER = 6, + VERTEX_BUFFER = 7, + INDIRECT_BUFFER = 8, + SHADER_DEVICE_ADDRESS = 17, + VIDEO_DECODE_SRC_KHR = 13, + VIDEO_DECODE_DST_KHR = 14, + TRANSFORM_FEEDBACK_BUFFER_EXT = 11, + TRANSFORM_FEEDBACK_COUNTER_BUFFER_EXT = 12, + CONDITIONAL_RENDERING_EXT = 9, + ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR = 19, + ACCELERATION_STRUCTURE_STORAGE_KHR = 20, + SHADER_BINDING_TABLE_KHR = 10, + VIDEO_ENCODE_DST_KHR = 15, + VIDEO_ENCODE_SRC_KHR = 16, + RAY_TRACING_NV = SHADER_BINDING_TABLE_KHR, + SHADER_DEVICE_ADDRESS_EXT = SHADER_DEVICE_ADDRESS, + SHADER_DEVICE_ADDRESS_KHR = SHADER_DEVICE_ADDRESS, +} + +BuildAccelerationStructureFlagsKHR :: distinct bit_set[BuildAccelerationStructureFlagKHR; Flags] +BuildAccelerationStructureFlagKHR :: enum Flags { + ALLOW_UPDATE = 0, + ALLOW_COMPACTION = 1, + PREFER_FAST_TRACE = 2, + PREFER_FAST_BUILD = 3, + LOW_MEMORY = 4, + MOTION_NV = 5, + ALLOW_UPDATE_NV = ALLOW_UPDATE, + ALLOW_COMPACTION_NV = ALLOW_COMPACTION, + PREFER_FAST_TRACE_NV = PREFER_FAST_TRACE, + PREFER_FAST_BUILD_NV = PREFER_FAST_BUILD, + LOW_MEMORY_NV = LOW_MEMORY, +} + +BuildAccelerationStructureModeKHR :: enum c.int { + BUILD = 0, + UPDATE = 1, +} + +ChromaLocation :: enum c.int { + COSITED_EVEN = 0, + MIDPOINT = 1, + COSITED_EVEN_KHR = COSITED_EVEN, + MIDPOINT_KHR = MIDPOINT, +} + +CoarseSampleOrderTypeNV :: enum c.int { + DEFAULT = 0, + CUSTOM = 1, + PIXEL_MAJOR = 2, + SAMPLE_MAJOR = 3, +} + +ColorComponentFlags :: distinct bit_set[ColorComponentFlag; Flags] +ColorComponentFlag :: enum Flags { + R = 0, + G = 1, + B = 2, + A = 3, +} + +ColorSpaceKHR :: enum c.int { + SRGB_NONLINEAR = 0, + DISPLAY_P3_NONLINEAR_EXT = 1000104001, + EXTENDED_SRGB_LINEAR_EXT = 1000104002, + DISPLAY_P3_LINEAR_EXT = 1000104003, + DCI_P3_NONLINEAR_EXT = 1000104004, + BT709_LINEAR_EXT = 1000104005, + BT709_NONLINEAR_EXT = 1000104006, + BT2020_LINEAR_EXT = 1000104007, + HDR10_ST2084_EXT = 1000104008, + DOLBYVISION_EXT = 1000104009, + HDR10_HLG_EXT = 1000104010, + ADOBERGB_LINEAR_EXT = 1000104011, + ADOBERGB_NONLINEAR_EXT = 1000104012, + PASS_THROUGH_EXT = 1000104013, + EXTENDED_SRGB_NONLINEAR_EXT = 1000104014, + DISPLAY_NATIVE_AMD = 1000213000, + COLORSPACE_SRGB_NONLINEAR = SRGB_NONLINEAR, + DCI_P3_LINEAR_EXT = DISPLAY_P3_LINEAR_EXT, +} + +CommandBufferLevel :: enum c.int { + PRIMARY = 0, + SECONDARY = 1, +} + +CommandBufferResetFlags :: distinct bit_set[CommandBufferResetFlag; Flags] +CommandBufferResetFlag :: enum Flags { + RELEASE_RESOURCES = 0, +} + +CommandBufferUsageFlags :: distinct bit_set[CommandBufferUsageFlag; Flags] +CommandBufferUsageFlag :: enum Flags { + ONE_TIME_SUBMIT = 0, + RENDER_PASS_CONTINUE = 1, + SIMULTANEOUS_USE = 2, +} + +CommandPoolCreateFlags :: distinct bit_set[CommandPoolCreateFlag; Flags] +CommandPoolCreateFlag :: enum Flags { + TRANSIENT = 0, + RESET_COMMAND_BUFFER = 1, + PROTECTED = 2, +} + +CommandPoolResetFlags :: distinct bit_set[CommandPoolResetFlag; Flags] +CommandPoolResetFlag :: enum Flags { + RELEASE_RESOURCES = 0, +} + +CompareOp :: enum c.int { + NEVER = 0, + LESS = 1, + EQUAL = 2, + LESS_OR_EQUAL = 3, + GREATER = 4, + NOT_EQUAL = 5, + GREATER_OR_EQUAL = 6, + ALWAYS = 7, +} + +ComponentSwizzle :: enum c.int { + IDENTITY = 0, + ZERO = 1, + ONE = 2, + R = 3, + G = 4, + B = 5, + A = 6, +} + +ComponentTypeNV :: enum c.int { + FLOAT16 = 0, + FLOAT32 = 1, + FLOAT64 = 2, + SINT8 = 3, + SINT16 = 4, + SINT32 = 5, + SINT64 = 6, + UINT8 = 7, + UINT16 = 8, + UINT32 = 9, + UINT64 = 10, +} + +CompositeAlphaFlagsKHR :: distinct bit_set[CompositeAlphaFlagKHR; Flags] +CompositeAlphaFlagKHR :: enum Flags { + OPAQUE = 0, + PRE_MULTIPLIED = 1, + POST_MULTIPLIED = 2, + INHERIT = 3, +} + +ConditionalRenderingFlagsEXT :: distinct bit_set[ConditionalRenderingFlagEXT; Flags] +ConditionalRenderingFlagEXT :: enum Flags { + INVERTED = 0, +} + +ConservativeRasterizationModeEXT :: enum c.int { + DISABLED = 0, + OVERESTIMATE = 1, + UNDERESTIMATE = 2, +} + +CopyAccelerationStructureModeKHR :: enum c.int { + CLONE = 0, + COMPACT = 1, + SERIALIZE = 2, + DESERIALIZE = 3, + CLONE_NV = CLONE, + COMPACT_NV = COMPACT, +} + +CoverageModulationModeNV :: enum c.int { + NONE = 0, + RGB = 1, + ALPHA = 2, + RGBA = 3, +} + +CoverageReductionModeNV :: enum c.int { + MERGE = 0, + TRUNCATE = 1, +} + +CullModeFlags :: distinct bit_set[CullModeFlag; Flags] +CullModeFlag :: enum Flags { + FRONT = 0, + BACK = 1, +} + +CullModeFlags_NONE :: CullModeFlags{} +CullModeFlags_FRONT_AND_BACK :: CullModeFlags{.FRONT, .BACK} + + +DebugReportFlagsEXT :: distinct bit_set[DebugReportFlagEXT; Flags] +DebugReportFlagEXT :: enum Flags { + INFORMATION = 0, + WARNING = 1, + PERFORMANCE_WARNING = 2, + ERROR = 3, + DEBUG = 4, +} + +DebugReportObjectTypeEXT :: enum c.int { + UNKNOWN = 0, + INSTANCE = 1, + PHYSICAL_DEVICE = 2, + DEVICE = 3, + QUEUE = 4, + SEMAPHORE = 5, + COMMAND_BUFFER = 6, + FENCE = 7, + DEVICE_MEMORY = 8, + BUFFER = 9, + IMAGE = 10, + EVENT = 11, + QUERY_POOL = 12, + BUFFER_VIEW = 13, + IMAGE_VIEW = 14, + SHADER_MODULE = 15, + PIPELINE_CACHE = 16, + PIPELINE_LAYOUT = 17, + RENDER_PASS = 18, + PIPELINE = 19, + DESCRIPTOR_SET_LAYOUT = 20, + SAMPLER = 21, + DESCRIPTOR_POOL = 22, + DESCRIPTOR_SET = 23, + FRAMEBUFFER = 24, + COMMAND_POOL = 25, + SURFACE_KHR = 26, + SWAPCHAIN_KHR = 27, + DEBUG_REPORT_CALLBACK_EXT = 28, + DISPLAY_KHR = 29, + DISPLAY_MODE_KHR = 30, + VALIDATION_CACHE_EXT = 33, + SAMPLER_YCBCR_CONVERSION = 1000156000, + DESCRIPTOR_UPDATE_TEMPLATE = 1000085000, + CU_MODULE_NVX = 1000029000, + CU_FUNCTION_NVX = 1000029001, + ACCELERATION_STRUCTURE_KHR = 1000150000, + ACCELERATION_STRUCTURE_NV = 1000165000, + DEBUG_REPORT = DEBUG_REPORT_CALLBACK_EXT, + VALIDATION_CACHE = VALIDATION_CACHE_EXT, + DESCRIPTOR_UPDATE_TEMPLATE_KHR = DESCRIPTOR_UPDATE_TEMPLATE, + SAMPLER_YCBCR_CONVERSION_KHR = SAMPLER_YCBCR_CONVERSION, +} + +DebugUtilsMessageSeverityFlagsEXT :: distinct bit_set[DebugUtilsMessageSeverityFlagEXT; Flags] +DebugUtilsMessageSeverityFlagEXT :: enum Flags { + VERBOSE = 0, + INFO = 4, + WARNING = 8, + ERROR = 12, +} + +DebugUtilsMessageTypeFlagsEXT :: distinct bit_set[DebugUtilsMessageTypeFlagEXT; Flags] +DebugUtilsMessageTypeFlagEXT :: enum Flags { + GENERAL = 0, + VALIDATION = 1, + PERFORMANCE = 2, +} + +DependencyFlags :: distinct bit_set[DependencyFlag; Flags] +DependencyFlag :: enum Flags { + BY_REGION = 0, + DEVICE_GROUP = 2, + VIEW_LOCAL = 1, + VIEW_LOCAL_KHR = VIEW_LOCAL, + DEVICE_GROUP_KHR = DEVICE_GROUP, +} + +DescriptorBindingFlags :: distinct bit_set[DescriptorBindingFlag; Flags] +DescriptorBindingFlag :: enum Flags { + UPDATE_AFTER_BIND = 0, + UPDATE_UNUSED_WHILE_PENDING = 1, + PARTIALLY_BOUND = 2, + VARIABLE_DESCRIPTOR_COUNT = 3, + UPDATE_AFTER_BIND_EXT = UPDATE_AFTER_BIND, + UPDATE_UNUSED_WHILE_PENDING_EXT = UPDATE_UNUSED_WHILE_PENDING, + PARTIALLY_BOUND_EXT = PARTIALLY_BOUND, + VARIABLE_DESCRIPTOR_COUNT_EXT = VARIABLE_DESCRIPTOR_COUNT, +} + +DescriptorPoolCreateFlags :: distinct bit_set[DescriptorPoolCreateFlag; Flags] +DescriptorPoolCreateFlag :: enum Flags { + FREE_DESCRIPTOR_SET = 0, + UPDATE_AFTER_BIND = 1, + HOST_ONLY_VALVE = 2, + UPDATE_AFTER_BIND_EXT = UPDATE_AFTER_BIND, +} + +DescriptorSetLayoutCreateFlags :: distinct bit_set[DescriptorSetLayoutCreateFlag; Flags] +DescriptorSetLayoutCreateFlag :: enum Flags { + UPDATE_AFTER_BIND_POOL = 1, + PUSH_DESCRIPTOR_KHR = 0, + HOST_ONLY_POOL_VALVE = 2, + UPDATE_AFTER_BIND_POOL_EXT = UPDATE_AFTER_BIND_POOL, +} + +DescriptorType :: enum c.int { + SAMPLER = 0, + COMBINED_IMAGE_SAMPLER = 1, + SAMPLED_IMAGE = 2, + STORAGE_IMAGE = 3, + UNIFORM_TEXEL_BUFFER = 4, + STORAGE_TEXEL_BUFFER = 5, + UNIFORM_BUFFER = 6, + STORAGE_BUFFER = 7, + UNIFORM_BUFFER_DYNAMIC = 8, + STORAGE_BUFFER_DYNAMIC = 9, + INPUT_ATTACHMENT = 10, + INLINE_UNIFORM_BLOCK_EXT = 1000138000, + ACCELERATION_STRUCTURE_KHR = 1000150000, + ACCELERATION_STRUCTURE_NV = 1000165000, + MUTABLE_VALVE = 1000351000, +} + +DescriptorUpdateTemplateType :: enum c.int { + DESCRIPTOR_SET = 0, + PUSH_DESCRIPTORS_KHR = 1, + DESCRIPTOR_SET_KHR = DESCRIPTOR_SET, +} + +DeviceDiagnosticsConfigFlagsNV :: distinct bit_set[DeviceDiagnosticsConfigFlagNV; Flags] +DeviceDiagnosticsConfigFlagNV :: enum Flags { + ENABLE_SHADER_DEBUG_INFO = 0, + ENABLE_RESOURCE_TRACKING = 1, + ENABLE_AUTOMATIC_CHECKPOINTS = 2, +} + +DeviceEventTypeEXT :: enum c.int { + DISPLAY_HOTPLUG = 0, +} + +DeviceGroupPresentModeFlagsKHR :: distinct bit_set[DeviceGroupPresentModeFlagKHR; Flags] +DeviceGroupPresentModeFlagKHR :: enum Flags { + LOCAL = 0, + REMOTE = 1, + SUM = 2, + LOCAL_MULTI_DEVICE = 3, +} + +DeviceMemoryReportEventTypeEXT :: enum c.int { + ALLOCATE = 0, + FREE = 1, + IMPORT = 2, + UNIMPORT = 3, + ALLOCATION_FAILED = 4, +} + +DeviceQueueCreateFlags :: distinct bit_set[DeviceQueueCreateFlag; Flags] +DeviceQueueCreateFlag :: enum Flags { + PROTECTED = 0, +} + +DiscardRectangleModeEXT :: enum c.int { + INCLUSIVE = 0, + EXCLUSIVE = 1, +} + +DisplayEventTypeEXT :: enum c.int { + FIRST_PIXEL_OUT = 0, +} + +DisplayPlaneAlphaFlagsKHR :: distinct bit_set[DisplayPlaneAlphaFlagKHR; Flags] +DisplayPlaneAlphaFlagKHR :: enum Flags { + OPAQUE = 0, + GLOBAL = 1, + PER_PIXEL = 2, + PER_PIXEL_PREMULTIPLIED = 3, +} + +DisplayPowerStateEXT :: enum c.int { + OFF = 0, + SUSPEND = 1, + ON = 2, +} + +DriverId :: enum c.int { + AMD_PROPRIETARY = 1, + AMD_OPEN_SOURCE = 2, + MESA_RADV = 3, + NVIDIA_PROPRIETARY = 4, + INTEL_PROPRIETARY_WINDOWS = 5, + INTEL_OPEN_SOURCE_MESA = 6, + IMAGINATION_PROPRIETARY = 7, + QUALCOMM_PROPRIETARY = 8, + ARM_PROPRIETARY = 9, + GOOGLE_SWIFTSHADER = 10, + GGP_PROPRIETARY = 11, + BROADCOM_PROPRIETARY = 12, + MESA_LLVMPIPE = 13, + MOLTENVK = 14, + COREAVI_PROPRIETARY = 15, + JUICE_PROPRIETARY = 16, + VERISILICON_PROPRIETARY = 17, + AMD_PROPRIETARY_KHR = AMD_PROPRIETARY, + AMD_OPEN_SOURCE_KHR = AMD_OPEN_SOURCE, + MESA_RADV_KHR = MESA_RADV, + NVIDIA_PROPRIETARY_KHR = NVIDIA_PROPRIETARY, + INTEL_PROPRIETARY_WINDOWS_KHR = INTEL_PROPRIETARY_WINDOWS, + INTEL_OPEN_SOURCE_MESA_KHR = INTEL_OPEN_SOURCE_MESA, + IMAGINATION_PROPRIETARY_KHR = IMAGINATION_PROPRIETARY, + QUALCOMM_PROPRIETARY_KHR = QUALCOMM_PROPRIETARY, + ARM_PROPRIETARY_KHR = ARM_PROPRIETARY, + GOOGLE_SWIFTSHADER_KHR = GOOGLE_SWIFTSHADER, + GGP_PROPRIETARY_KHR = GGP_PROPRIETARY, + BROADCOM_PROPRIETARY_KHR = BROADCOM_PROPRIETARY, +} + +DynamicState :: enum c.int { + VIEWPORT = 0, + SCISSOR = 1, + LINE_WIDTH = 2, + DEPTH_BIAS = 3, + BLEND_CONSTANTS = 4, + DEPTH_BOUNDS = 5, + STENCIL_COMPARE_MASK = 6, + STENCIL_WRITE_MASK = 7, + STENCIL_REFERENCE = 8, + VIEWPORT_W_SCALING_NV = 1000087000, + DISCARD_RECTANGLE_EXT = 1000099000, + SAMPLE_LOCATIONS_EXT = 1000143000, + RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000, + VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004, + VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006, + EXCLUSIVE_SCISSOR_NV = 1000205001, + FRAGMENT_SHADING_RATE_KHR = 1000226000, + LINE_STIPPLE_EXT = 1000259000, + CULL_MODE_EXT = 1000267000, + FRONT_FACE_EXT = 1000267001, + PRIMITIVE_TOPOLOGY_EXT = 1000267002, + VIEWPORT_WITH_COUNT_EXT = 1000267003, + SCISSOR_WITH_COUNT_EXT = 1000267004, + VERTEX_INPUT_BINDING_STRIDE_EXT = 1000267005, + DEPTH_TEST_ENABLE_EXT = 1000267006, + DEPTH_WRITE_ENABLE_EXT = 1000267007, + DEPTH_COMPARE_OP_EXT = 1000267008, + DEPTH_BOUNDS_TEST_ENABLE_EXT = 1000267009, + STENCIL_TEST_ENABLE_EXT = 1000267010, + STENCIL_OP_EXT = 1000267011, + VERTEX_INPUT_EXT = 1000352000, + PATCH_CONTROL_POINTS_EXT = 1000377000, + RASTERIZER_DISCARD_ENABLE_EXT = 1000377001, + DEPTH_BIAS_ENABLE_EXT = 1000377002, + LOGIC_OP_EXT = 1000377003, + PRIMITIVE_RESTART_ENABLE_EXT = 1000377004, + COLOR_WRITE_ENABLE_EXT = 1000381000, +} + +EventCreateFlags :: distinct bit_set[EventCreateFlag; Flags] +EventCreateFlag :: enum Flags { + DEVICE_ONLY_KHR = 0, +} + +ExternalFenceFeatureFlags :: distinct bit_set[ExternalFenceFeatureFlag; Flags] +ExternalFenceFeatureFlag :: enum Flags { + EXPORTABLE = 0, + IMPORTABLE = 1, + EXPORTABLE_KHR = EXPORTABLE, + IMPORTABLE_KHR = IMPORTABLE, +} + +ExternalFenceHandleTypeFlags :: distinct bit_set[ExternalFenceHandleTypeFlag; Flags] +ExternalFenceHandleTypeFlag :: enum Flags { + OPAQUE_FD = 0, + OPAQUE_WIN32 = 1, + OPAQUE_WIN32_KMT = 2, + SYNC_FD = 3, + OPAQUE_FD_KHR = OPAQUE_FD, + OPAQUE_WIN32_KHR = OPAQUE_WIN32, + OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, + SYNC_FD_KHR = SYNC_FD, +} + +ExternalMemoryFeatureFlags :: distinct bit_set[ExternalMemoryFeatureFlag; Flags] +ExternalMemoryFeatureFlag :: enum Flags { + DEDICATED_ONLY = 0, + EXPORTABLE = 1, + IMPORTABLE = 2, + DEDICATED_ONLY_KHR = DEDICATED_ONLY, + EXPORTABLE_KHR = EXPORTABLE, + IMPORTABLE_KHR = IMPORTABLE, +} + +ExternalMemoryFeatureFlagsNV :: distinct bit_set[ExternalMemoryFeatureFlagNV; Flags] +ExternalMemoryFeatureFlagNV :: enum Flags { + DEDICATED_ONLY = 0, + EXPORTABLE = 1, + IMPORTABLE = 2, +} + +ExternalMemoryHandleTypeFlags :: distinct bit_set[ExternalMemoryHandleTypeFlag; Flags] +ExternalMemoryHandleTypeFlag :: enum Flags { + OPAQUE_FD = 0, + OPAQUE_WIN32 = 1, + OPAQUE_WIN32_KMT = 2, + D3D11_TEXTURE = 3, + D3D11_TEXTURE_KMT = 4, + D3D12_HEAP = 5, + D3D12_RESOURCE = 6, + DMA_BUF_EXT = 9, + ANDROID_HARDWARE_BUFFER_ANDROID = 10, + HOST_ALLOCATION_EXT = 7, + HOST_MAPPED_FOREIGN_MEMORY_EXT = 8, + ZIRCON_VMO_FUCHSIA = 11, + RDMA_ADDRESS_NV = 12, + OPAQUE_FD_KHR = OPAQUE_FD, + OPAQUE_WIN32_KHR = OPAQUE_WIN32, + OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, + D3D11_TEXTURE_KHR = D3D11_TEXTURE, + D3D11_TEXTURE_KMT_KHR = D3D11_TEXTURE_KMT, + D3D12_HEAP_KHR = D3D12_HEAP, + D3D12_RESOURCE_KHR = D3D12_RESOURCE, +} + +ExternalMemoryHandleTypeFlagsNV :: distinct bit_set[ExternalMemoryHandleTypeFlagNV; Flags] +ExternalMemoryHandleTypeFlagNV :: enum Flags { + OPAQUE_WIN32 = 0, + OPAQUE_WIN32_KMT = 1, + D3D11_IMAGE = 2, + D3D11_IMAGE_KMT = 3, +} + +ExternalSemaphoreFeatureFlags :: distinct bit_set[ExternalSemaphoreFeatureFlag; Flags] +ExternalSemaphoreFeatureFlag :: enum Flags { + EXPORTABLE = 0, + IMPORTABLE = 1, + EXPORTABLE_KHR = EXPORTABLE, + IMPORTABLE_KHR = IMPORTABLE, +} + +ExternalSemaphoreHandleTypeFlags :: distinct bit_set[ExternalSemaphoreHandleTypeFlag; Flags] +ExternalSemaphoreHandleTypeFlag :: enum Flags { + OPAQUE_FD = 0, + OPAQUE_WIN32 = 1, + OPAQUE_WIN32_KMT = 2, + D3D12_FENCE = 3, + SYNC_FD = 4, + ZIRCON_EVENT_FUCHSIA = 7, + D3D11_FENCE = D3D12_FENCE, + OPAQUE_FD_KHR = OPAQUE_FD, + OPAQUE_WIN32_KHR = OPAQUE_WIN32, + OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, + D3D12_FENCE_KHR = D3D12_FENCE, + SYNC_FD_KHR = SYNC_FD, +} + +FenceCreateFlags :: distinct bit_set[FenceCreateFlag; Flags] +FenceCreateFlag :: enum Flags { + SIGNALED = 0, +} + +FenceImportFlags :: distinct bit_set[FenceImportFlag; Flags] +FenceImportFlag :: enum Flags { + TEMPORARY = 0, + TEMPORARY_KHR = TEMPORARY, +} + +Filter :: enum c.int { + NEAREST = 0, + LINEAR = 1, + CUBIC_IMG = 1000015000, + CUBIC_EXT = CUBIC_IMG, +} + +Format :: enum c.int { + UNDEFINED = 0, + R4G4_UNORM_PACK8 = 1, + R4G4B4A4_UNORM_PACK16 = 2, + B4G4R4A4_UNORM_PACK16 = 3, + R5G6B5_UNORM_PACK16 = 4, + B5G6R5_UNORM_PACK16 = 5, + R5G5B5A1_UNORM_PACK16 = 6, + B5G5R5A1_UNORM_PACK16 = 7, + A1R5G5B5_UNORM_PACK16 = 8, + R8_UNORM = 9, + R8_SNORM = 10, + R8_USCALED = 11, + R8_SSCALED = 12, + R8_UINT = 13, + R8_SINT = 14, + R8_SRGB = 15, + R8G8_UNORM = 16, + R8G8_SNORM = 17, + R8G8_USCALED = 18, + R8G8_SSCALED = 19, + R8G8_UINT = 20, + R8G8_SINT = 21, + R8G8_SRGB = 22, + R8G8B8_UNORM = 23, + R8G8B8_SNORM = 24, + R8G8B8_USCALED = 25, + R8G8B8_SSCALED = 26, + R8G8B8_UINT = 27, + R8G8B8_SINT = 28, + R8G8B8_SRGB = 29, + B8G8R8_UNORM = 30, + B8G8R8_SNORM = 31, + B8G8R8_USCALED = 32, + B8G8R8_SSCALED = 33, + B8G8R8_UINT = 34, + B8G8R8_SINT = 35, + B8G8R8_SRGB = 36, + R8G8B8A8_UNORM = 37, + R8G8B8A8_SNORM = 38, + R8G8B8A8_USCALED = 39, + R8G8B8A8_SSCALED = 40, + R8G8B8A8_UINT = 41, + R8G8B8A8_SINT = 42, + R8G8B8A8_SRGB = 43, + B8G8R8A8_UNORM = 44, + B8G8R8A8_SNORM = 45, + B8G8R8A8_USCALED = 46, + B8G8R8A8_SSCALED = 47, + B8G8R8A8_UINT = 48, + B8G8R8A8_SINT = 49, + B8G8R8A8_SRGB = 50, + A8B8G8R8_UNORM_PACK32 = 51, + A8B8G8R8_SNORM_PACK32 = 52, + A8B8G8R8_USCALED_PACK32 = 53, + A8B8G8R8_SSCALED_PACK32 = 54, + A8B8G8R8_UINT_PACK32 = 55, + A8B8G8R8_SINT_PACK32 = 56, + A8B8G8R8_SRGB_PACK32 = 57, + A2R10G10B10_UNORM_PACK32 = 58, + A2R10G10B10_SNORM_PACK32 = 59, + A2R10G10B10_USCALED_PACK32 = 60, + A2R10G10B10_SSCALED_PACK32 = 61, + A2R10G10B10_UINT_PACK32 = 62, + A2R10G10B10_SINT_PACK32 = 63, + A2B10G10R10_UNORM_PACK32 = 64, + A2B10G10R10_SNORM_PACK32 = 65, + A2B10G10R10_USCALED_PACK32 = 66, + A2B10G10R10_SSCALED_PACK32 = 67, + A2B10G10R10_UINT_PACK32 = 68, + A2B10G10R10_SINT_PACK32 = 69, + R16_UNORM = 70, + R16_SNORM = 71, + R16_USCALED = 72, + R16_SSCALED = 73, + R16_UINT = 74, + R16_SINT = 75, + R16_SFLOAT = 76, + R16G16_UNORM = 77, + R16G16_SNORM = 78, + R16G16_USCALED = 79, + R16G16_SSCALED = 80, + R16G16_UINT = 81, + R16G16_SINT = 82, + R16G16_SFLOAT = 83, + R16G16B16_UNORM = 84, + R16G16B16_SNORM = 85, + R16G16B16_USCALED = 86, + R16G16B16_SSCALED = 87, + R16G16B16_UINT = 88, + R16G16B16_SINT = 89, + R16G16B16_SFLOAT = 90, + R16G16B16A16_UNORM = 91, + R16G16B16A16_SNORM = 92, + R16G16B16A16_USCALED = 93, + R16G16B16A16_SSCALED = 94, + R16G16B16A16_UINT = 95, + R16G16B16A16_SINT = 96, + R16G16B16A16_SFLOAT = 97, + R32_UINT = 98, + R32_SINT = 99, + R32_SFLOAT = 100, + R32G32_UINT = 101, + R32G32_SINT = 102, + R32G32_SFLOAT = 103, + R32G32B32_UINT = 104, + R32G32B32_SINT = 105, + R32G32B32_SFLOAT = 106, + R32G32B32A32_UINT = 107, + R32G32B32A32_SINT = 108, + R32G32B32A32_SFLOAT = 109, + R64_UINT = 110, + R64_SINT = 111, + R64_SFLOAT = 112, + R64G64_UINT = 113, + R64G64_SINT = 114, + R64G64_SFLOAT = 115, + R64G64B64_UINT = 116, + R64G64B64_SINT = 117, + R64G64B64_SFLOAT = 118, + R64G64B64A64_UINT = 119, + R64G64B64A64_SINT = 120, + R64G64B64A64_SFLOAT = 121, + B10G11R11_UFLOAT_PACK32 = 122, + E5B9G9R9_UFLOAT_PACK32 = 123, + D16_UNORM = 124, + X8_D24_UNORM_PACK32 = 125, + D32_SFLOAT = 126, + S8_UINT = 127, + D16_UNORM_S8_UINT = 128, + D24_UNORM_S8_UINT = 129, + D32_SFLOAT_S8_UINT = 130, + BC1_RGB_UNORM_BLOCK = 131, + BC1_RGB_SRGB_BLOCK = 132, + BC1_RGBA_UNORM_BLOCK = 133, + BC1_RGBA_SRGB_BLOCK = 134, + BC2_UNORM_BLOCK = 135, + BC2_SRGB_BLOCK = 136, + BC3_UNORM_BLOCK = 137, + BC3_SRGB_BLOCK = 138, + BC4_UNORM_BLOCK = 139, + BC4_SNORM_BLOCK = 140, + BC5_UNORM_BLOCK = 141, + BC5_SNORM_BLOCK = 142, + BC6H_UFLOAT_BLOCK = 143, + BC6H_SFLOAT_BLOCK = 144, + BC7_UNORM_BLOCK = 145, + BC7_SRGB_BLOCK = 146, + ETC2_R8G8B8_UNORM_BLOCK = 147, + ETC2_R8G8B8_SRGB_BLOCK = 148, + ETC2_R8G8B8A1_UNORM_BLOCK = 149, + ETC2_R8G8B8A1_SRGB_BLOCK = 150, + ETC2_R8G8B8A8_UNORM_BLOCK = 151, + ETC2_R8G8B8A8_SRGB_BLOCK = 152, + EAC_R11_UNORM_BLOCK = 153, + EAC_R11_SNORM_BLOCK = 154, + EAC_R11G11_UNORM_BLOCK = 155, + EAC_R11G11_SNORM_BLOCK = 156, + ASTC_4x4_UNORM_BLOCK = 157, + ASTC_4x4_SRGB_BLOCK = 158, + ASTC_5x4_UNORM_BLOCK = 159, + ASTC_5x4_SRGB_BLOCK = 160, + ASTC_5x5_UNORM_BLOCK = 161, + ASTC_5x5_SRGB_BLOCK = 162, + ASTC_6x5_UNORM_BLOCK = 163, + ASTC_6x5_SRGB_BLOCK = 164, + ASTC_6x6_UNORM_BLOCK = 165, + ASTC_6x6_SRGB_BLOCK = 166, + ASTC_8x5_UNORM_BLOCK = 167, + ASTC_8x5_SRGB_BLOCK = 168, + ASTC_8x6_UNORM_BLOCK = 169, + ASTC_8x6_SRGB_BLOCK = 170, + ASTC_8x8_UNORM_BLOCK = 171, + ASTC_8x8_SRGB_BLOCK = 172, + ASTC_10x5_UNORM_BLOCK = 173, + ASTC_10x5_SRGB_BLOCK = 174, + ASTC_10x6_UNORM_BLOCK = 175, + ASTC_10x6_SRGB_BLOCK = 176, + ASTC_10x8_UNORM_BLOCK = 177, + ASTC_10x8_SRGB_BLOCK = 178, + ASTC_10x10_UNORM_BLOCK = 179, + ASTC_10x10_SRGB_BLOCK = 180, + ASTC_12x10_UNORM_BLOCK = 181, + ASTC_12x10_SRGB_BLOCK = 182, + ASTC_12x12_UNORM_BLOCK = 183, + ASTC_12x12_SRGB_BLOCK = 184, + G8B8G8R8_422_UNORM = 1000156000, + B8G8R8G8_422_UNORM = 1000156001, + G8_B8_R8_3PLANE_420_UNORM = 1000156002, + G8_B8R8_2PLANE_420_UNORM = 1000156003, + G8_B8_R8_3PLANE_422_UNORM = 1000156004, + G8_B8R8_2PLANE_422_UNORM = 1000156005, + G8_B8_R8_3PLANE_444_UNORM = 1000156006, + R10X6_UNORM_PACK16 = 1000156007, + R10X6G10X6_UNORM_2PACK16 = 1000156008, + R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 1000156009, + G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 1000156010, + B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 1000156011, + G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 1000156012, + G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 1000156013, + G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 1000156014, + G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 1000156015, + G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 1000156016, + R12X4_UNORM_PACK16 = 1000156017, + R12X4G12X4_UNORM_2PACK16 = 1000156018, + R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 1000156019, + G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 1000156020, + B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 1000156021, + G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 1000156022, + G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 1000156023, + G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 1000156024, + G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 1000156025, + G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 1000156026, + G16B16G16R16_422_UNORM = 1000156027, + B16G16R16G16_422_UNORM = 1000156028, + G16_B16_R16_3PLANE_420_UNORM = 1000156029, + G16_B16R16_2PLANE_420_UNORM = 1000156030, + G16_B16_R16_3PLANE_422_UNORM = 1000156031, + G16_B16R16_2PLANE_422_UNORM = 1000156032, + G16_B16_R16_3PLANE_444_UNORM = 1000156033, + PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000, + PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001, + PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002, + PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003, + PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004, + PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005, + PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006, + PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007, + ASTC_4x4_SFLOAT_BLOCK_EXT = 1000066000, + ASTC_5x4_SFLOAT_BLOCK_EXT = 1000066001, + ASTC_5x5_SFLOAT_BLOCK_EXT = 1000066002, + ASTC_6x5_SFLOAT_BLOCK_EXT = 1000066003, + ASTC_6x6_SFLOAT_BLOCK_EXT = 1000066004, + ASTC_8x5_SFLOAT_BLOCK_EXT = 1000066005, + ASTC_8x6_SFLOAT_BLOCK_EXT = 1000066006, + ASTC_8x8_SFLOAT_BLOCK_EXT = 1000066007, + ASTC_10x5_SFLOAT_BLOCK_EXT = 1000066008, + ASTC_10x6_SFLOAT_BLOCK_EXT = 1000066009, + ASTC_10x8_SFLOAT_BLOCK_EXT = 1000066010, + ASTC_10x10_SFLOAT_BLOCK_EXT = 1000066011, + ASTC_12x10_SFLOAT_BLOCK_EXT = 1000066012, + ASTC_12x12_SFLOAT_BLOCK_EXT = 1000066013, + G8_B8R8_2PLANE_444_UNORM_EXT = 1000330000, + G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT = 1000330001, + G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT = 1000330002, + G16_B16R16_2PLANE_444_UNORM_EXT = 1000330003, + A4R4G4B4_UNORM_PACK16_EXT = 1000340000, + A4B4G4R4_UNORM_PACK16_EXT = 1000340001, + G8B8G8R8_422_UNORM_KHR = G8B8G8R8_422_UNORM, + B8G8R8G8_422_UNORM_KHR = B8G8R8G8_422_UNORM, + G8_B8_R8_3PLANE_420_UNORM_KHR = G8_B8_R8_3PLANE_420_UNORM, + G8_B8R8_2PLANE_420_UNORM_KHR = G8_B8R8_2PLANE_420_UNORM, + G8_B8_R8_3PLANE_422_UNORM_KHR = G8_B8_R8_3PLANE_422_UNORM, + G8_B8R8_2PLANE_422_UNORM_KHR = G8_B8R8_2PLANE_422_UNORM, + G8_B8_R8_3PLANE_444_UNORM_KHR = G8_B8_R8_3PLANE_444_UNORM, + R10X6_UNORM_PACK16_KHR = R10X6_UNORM_PACK16, + R10X6G10X6_UNORM_2PACK16_KHR = R10X6G10X6_UNORM_2PACK16, + R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = R10X6G10X6B10X6A10X6_UNORM_4PACK16, + G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = G10X6B10X6G10X6R10X6_422_UNORM_4PACK16, + B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = B10X6G10X6R10X6G10X6_422_UNORM_4PACK16, + G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16, + G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16, + G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16, + G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16, + G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16, + R12X4_UNORM_PACK16_KHR = R12X4_UNORM_PACK16, + R12X4G12X4_UNORM_2PACK16_KHR = R12X4G12X4_UNORM_2PACK16, + R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = R12X4G12X4B12X4A12X4_UNORM_4PACK16, + G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = G12X4B12X4G12X4R12X4_422_UNORM_4PACK16, + B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = B12X4G12X4R12X4G12X4_422_UNORM_4PACK16, + G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16, + G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16, + G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16, + G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16, + G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16, + G16B16G16R16_422_UNORM_KHR = G16B16G16R16_422_UNORM, + B16G16R16G16_422_UNORM_KHR = B16G16R16G16_422_UNORM, + G16_B16_R16_3PLANE_420_UNORM_KHR = G16_B16_R16_3PLANE_420_UNORM, + G16_B16R16_2PLANE_420_UNORM_KHR = G16_B16R16_2PLANE_420_UNORM, + G16_B16_R16_3PLANE_422_UNORM_KHR = G16_B16_R16_3PLANE_422_UNORM, + G16_B16R16_2PLANE_422_UNORM_KHR = G16_B16R16_2PLANE_422_UNORM, + G16_B16_R16_3PLANE_444_UNORM_KHR = G16_B16_R16_3PLANE_444_UNORM, +} + +FormatFeatureFlags :: distinct bit_set[FormatFeatureFlag; Flags] +FormatFeatureFlag :: enum Flags { + SAMPLED_IMAGE = 0, + STORAGE_IMAGE = 1, + STORAGE_IMAGE_ATOMIC = 2, + UNIFORM_TEXEL_BUFFER = 3, + STORAGE_TEXEL_BUFFER = 4, + STORAGE_TEXEL_BUFFER_ATOMIC = 5, + VERTEX_BUFFER = 6, + COLOR_ATTACHMENT = 7, + COLOR_ATTACHMENT_BLEND = 8, + DEPTH_STENCIL_ATTACHMENT = 9, + BLIT_SRC = 10, + BLIT_DST = 11, + SAMPLED_IMAGE_FILTER_LINEAR = 12, + TRANSFER_SRC = 14, + TRANSFER_DST = 15, + MIDPOINT_CHROMA_SAMPLES = 17, + SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER = 18, + SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER = 19, + SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT = 20, + SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE = 21, + DISJOINT = 22, + COSITED_CHROMA_SAMPLES = 23, + SAMPLED_IMAGE_FILTER_MINMAX = 16, + SAMPLED_IMAGE_FILTER_CUBIC_IMG = 13, + VIDEO_DECODE_OUTPUT_KHR = 25, + VIDEO_DECODE_DPB_KHR = 26, + ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR = 29, + FRAGMENT_DENSITY_MAP_EXT = 24, + FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 30, + VIDEO_ENCODE_INPUT_KHR = 27, + VIDEO_ENCODE_DPB_KHR = 28, + TRANSFER_SRC_KHR = TRANSFER_SRC, + TRANSFER_DST_KHR = TRANSFER_DST, + SAMPLED_IMAGE_FILTER_MINMAX_EXT = SAMPLED_IMAGE_FILTER_MINMAX, + MIDPOINT_CHROMA_SAMPLES_KHR = MIDPOINT_CHROMA_SAMPLES, + SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER, + SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER, + SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT, + SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE, + DISJOINT_KHR = DISJOINT, + COSITED_CHROMA_SAMPLES_KHR = COSITED_CHROMA_SAMPLES, + SAMPLED_IMAGE_FILTER_CUBIC_EXT = SAMPLED_IMAGE_FILTER_CUBIC_IMG, +} + +FragmentShadingRateCombinerOpKHR :: enum c.int { + KEEP = 0, + REPLACE = 1, + MIN = 2, + MAX = 3, + MUL = 4, +} + +FragmentShadingRateNV :: enum c.int { + _1_INVOCATION_PER_PIXEL = 0, + _1_INVOCATION_PER_1X2_PIXELS = 1, + _1_INVOCATION_PER_2X1_PIXELS = 4, + _1_INVOCATION_PER_2X2_PIXELS = 5, + _1_INVOCATION_PER_2X4_PIXELS = 6, + _1_INVOCATION_PER_4X2_PIXELS = 9, + _1_INVOCATION_PER_4X4_PIXELS = 10, + _2_INVOCATIONS_PER_PIXEL = 11, + _4_INVOCATIONS_PER_PIXEL = 12, + _8_INVOCATIONS_PER_PIXEL = 13, + _16_INVOCATIONS_PER_PIXEL = 14, + NO_INVOCATIONS = 15, +} + +FragmentShadingRateTypeNV :: enum c.int { + FRAGMENT_SIZE = 0, + ENUMS = 1, +} + +FramebufferCreateFlags :: distinct bit_set[FramebufferCreateFlag; Flags] +FramebufferCreateFlag :: enum Flags { + IMAGELESS = 0, + IMAGELESS_KHR = IMAGELESS, +} + +FrontFace :: enum c.int { + COUNTER_CLOCKWISE = 0, + CLOCKWISE = 1, +} + +FullScreenExclusiveEXT :: enum c.int { + DEFAULT = 0, + ALLOWED = 1, + DISALLOWED = 2, + APPLICATION_CONTROLLED = 3, +} + +GeometryFlagsKHR :: distinct bit_set[GeometryFlagKHR; Flags] +GeometryFlagKHR :: enum Flags { + OPAQUE = 0, + NO_DUPLICATE_ANY_HIT_INVOCATION = 1, + OPAQUE_NV = OPAQUE, + NO_DUPLICATE_ANY_HIT_INVOCATION_NV = NO_DUPLICATE_ANY_HIT_INVOCATION, +} + +GeometryInstanceFlagsKHR :: distinct bit_set[GeometryInstanceFlagKHR; Flags] +GeometryInstanceFlagKHR :: enum Flags { + TRIANGLE_FACING_CULL_DISABLE = 0, + TRIANGLE_FLIP_FACING = 1, + FORCE_OPAQUE = 2, + FORCE_NO_OPAQUE = 3, + TRIANGLE_FRONT_COUNTERCLOCKWISE = TRIANGLE_FLIP_FACING, + TRIANGLE_CULL_DISABLE_NV = TRIANGLE_FACING_CULL_DISABLE, + TRIANGLE_FRONT_COUNTERCLOCKWISE_NV = TRIANGLE_FRONT_COUNTERCLOCKWISE, + FORCE_OPAQUE_NV = FORCE_OPAQUE, + FORCE_NO_OPAQUE_NV = FORCE_NO_OPAQUE, +} + +GeometryTypeKHR :: enum c.int { + TRIANGLES = 0, + AABBS = 1, + INSTANCES = 2, + TRIANGLES_NV = TRIANGLES, + AABBS_NV = AABBS, +} + +ImageAspectFlags :: distinct bit_set[ImageAspectFlag; Flags] +ImageAspectFlag :: enum Flags { + COLOR = 0, + DEPTH = 1, + STENCIL = 2, + METADATA = 3, + PLANE_0 = 4, + PLANE_1 = 5, + PLANE_2 = 6, + MEMORY_PLANE_0_EXT = 7, + MEMORY_PLANE_1_EXT = 8, + MEMORY_PLANE_2_EXT = 9, + MEMORY_PLANE_3_EXT = 10, + PLANE_0_KHR = PLANE_0, + PLANE_1_KHR = PLANE_1, + PLANE_2_KHR = PLANE_2, +} + +ImageCreateFlags :: distinct bit_set[ImageCreateFlag; Flags] +ImageCreateFlag :: enum Flags { + SPARSE_BINDING = 0, + SPARSE_RESIDENCY = 1, + SPARSE_ALIASED = 2, + MUTABLE_FORMAT = 3, + CUBE_COMPATIBLE = 4, + ALIAS = 10, + SPLIT_INSTANCE_BIND_REGIONS = 6, + D2_ARRAY_COMPATIBLE = 5, + BLOCK_TEXEL_VIEW_COMPATIBLE = 7, + EXTENDED_USAGE = 8, + PROTECTED = 11, + DISJOINT = 9, + CORNER_SAMPLED_NV = 13, + SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_EXT = 12, + SUBSAMPLED_EXT = 14, + SPLIT_INSTANCE_BIND_REGIONS_KHR = SPLIT_INSTANCE_BIND_REGIONS, + D2_ARRAY_COMPATIBLE_KHR = D2_ARRAY_COMPATIBLE, + BLOCK_TEXEL_VIEW_COMPATIBLE_KHR = BLOCK_TEXEL_VIEW_COMPATIBLE, + EXTENDED_USAGE_KHR = EXTENDED_USAGE, + DISJOINT_KHR = DISJOINT, + ALIAS_KHR = ALIAS, +} + +ImageLayout :: enum c.int { + UNDEFINED = 0, + GENERAL = 1, + COLOR_ATTACHMENT_OPTIMAL = 2, + DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3, + DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4, + SHADER_READ_ONLY_OPTIMAL = 5, + TRANSFER_SRC_OPTIMAL = 6, + TRANSFER_DST_OPTIMAL = 7, + PREINITIALIZED = 8, + DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL = 1000117000, + DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL = 1000117001, + DEPTH_ATTACHMENT_OPTIMAL = 1000241000, + DEPTH_READ_ONLY_OPTIMAL = 1000241001, + STENCIL_ATTACHMENT_OPTIMAL = 1000241002, + STENCIL_READ_ONLY_OPTIMAL = 1000241003, + PRESENT_SRC_KHR = 1000001002, + VIDEO_DECODE_DST_KHR = 1000024000, + VIDEO_DECODE_SRC_KHR = 1000024001, + VIDEO_DECODE_DPB_KHR = 1000024002, + SHARED_PRESENT_KHR = 1000111000, + FRAGMENT_DENSITY_MAP_OPTIMAL_EXT = 1000218000, + FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR = 1000164003, + VIDEO_ENCODE_DST_KHR = 1000299000, + VIDEO_ENCODE_SRC_KHR = 1000299001, + VIDEO_ENCODE_DPB_KHR = 1000299002, + READ_ONLY_OPTIMAL_KHR = 1000314000, + ATTACHMENT_OPTIMAL_KHR = 1000314001, + DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, + DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, + SHADING_RATE_OPTIMAL_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR, + DEPTH_ATTACHMENT_OPTIMAL_KHR = DEPTH_ATTACHMENT_OPTIMAL, + DEPTH_READ_ONLY_OPTIMAL_KHR = DEPTH_READ_ONLY_OPTIMAL, + STENCIL_ATTACHMENT_OPTIMAL_KHR = STENCIL_ATTACHMENT_OPTIMAL, + STENCIL_READ_ONLY_OPTIMAL_KHR = STENCIL_READ_ONLY_OPTIMAL, +} + +ImageTiling :: enum c.int { + OPTIMAL = 0, + LINEAR = 1, + DRM_FORMAT_MODIFIER_EXT = 1000158000, +} + +ImageType :: enum c.int { + D1 = 0, + D2 = 1, + D3 = 2, +} + +ImageUsageFlags :: distinct bit_set[ImageUsageFlag; Flags] +ImageUsageFlag :: enum Flags { + TRANSFER_SRC = 0, + TRANSFER_DST = 1, + SAMPLED = 2, + STORAGE = 3, + COLOR_ATTACHMENT = 4, + DEPTH_STENCIL_ATTACHMENT = 5, + TRANSIENT_ATTACHMENT = 6, + INPUT_ATTACHMENT = 7, + VIDEO_DECODE_DST_KHR = 10, + VIDEO_DECODE_SRC_KHR = 11, + VIDEO_DECODE_DPB_KHR = 12, + FRAGMENT_DENSITY_MAP_EXT = 9, + FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 8, + VIDEO_ENCODE_DST_KHR = 13, + VIDEO_ENCODE_SRC_KHR = 14, + VIDEO_ENCODE_DPB_KHR = 15, + INVOCATION_MASK_HUAWEI = 18, + SHADING_RATE_IMAGE_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_KHR, +} + +ImageViewCreateFlags :: distinct bit_set[ImageViewCreateFlag; Flags] +ImageViewCreateFlag :: enum Flags { + FRAGMENT_DENSITY_MAP_DYNAMIC_EXT = 0, + FRAGMENT_DENSITY_MAP_DEFERRED_EXT = 1, +} + +ImageViewType :: enum c.int { + D1 = 0, + D2 = 1, + D3 = 2, + CUBE = 3, + D1_ARRAY = 4, + D2_ARRAY = 5, + CUBE_ARRAY = 6, +} + +IndexType :: enum c.int { + UINT16 = 0, + UINT32 = 1, + NONE_KHR = 1000165000, + UINT8_EXT = 1000265000, + NONE_NV = NONE_KHR, +} + +IndirectCommandsLayoutUsageFlagsNV :: distinct bit_set[IndirectCommandsLayoutUsageFlagNV; Flags] +IndirectCommandsLayoutUsageFlagNV :: enum Flags { + EXPLICIT_PREPROCESS = 0, + INDEXED_SEQUENCES = 1, + UNORDERED_SEQUENCES = 2, +} + +IndirectCommandsTokenTypeNV :: enum c.int { + SHADER_GROUP = 0, + STATE_FLAGS = 1, + INDEX_BUFFER = 2, + VERTEX_BUFFER = 3, + PUSH_CONSTANT = 4, + DRAW_INDEXED = 5, + DRAW = 6, + DRAW_TASKS = 7, +} + +IndirectStateFlagsNV :: distinct bit_set[IndirectStateFlagNV; Flags] +IndirectStateFlagNV :: enum Flags { + FLAG_FRONTFACE = 0, +} + +InternalAllocationType :: enum c.int { + EXECUTABLE = 0, +} + +LineRasterizationModeEXT :: enum c.int { + DEFAULT = 0, + RECTANGULAR = 1, + BRESENHAM = 2, + RECTANGULAR_SMOOTH = 3, +} + +LogicOp :: enum c.int { + CLEAR = 0, + AND = 1, + AND_REVERSE = 2, + COPY = 3, + AND_INVERTED = 4, + NO_OP = 5, + XOR = 6, + OR = 7, + NOR = 8, + EQUIVALENT = 9, + INVERT = 10, + OR_REVERSE = 11, + COPY_INVERTED = 12, + OR_INVERTED = 13, + NAND = 14, + SET = 15, +} + +MemoryAllocateFlags :: distinct bit_set[MemoryAllocateFlag; Flags] +MemoryAllocateFlag :: enum Flags { + DEVICE_MASK = 0, + DEVICE_ADDRESS = 1, + DEVICE_ADDRESS_CAPTURE_REPLAY = 2, + DEVICE_MASK_KHR = DEVICE_MASK, + DEVICE_ADDRESS_KHR = DEVICE_ADDRESS, + DEVICE_ADDRESS_CAPTURE_REPLAY_KHR = DEVICE_ADDRESS_CAPTURE_REPLAY, +} + +MemoryHeapFlags :: distinct bit_set[MemoryHeapFlag; Flags] +MemoryHeapFlag :: enum Flags { + DEVICE_LOCAL = 0, + MULTI_INSTANCE = 1, + MULTI_INSTANCE_KHR = MULTI_INSTANCE, +} + +MemoryOverallocationBehaviorAMD :: enum c.int { + DEFAULT = 0, + ALLOWED = 1, + DISALLOWED = 2, +} + +MemoryPropertyFlags :: distinct bit_set[MemoryPropertyFlag; Flags] +MemoryPropertyFlag :: enum Flags { + DEVICE_LOCAL = 0, + HOST_VISIBLE = 1, + HOST_COHERENT = 2, + HOST_CACHED = 3, + LAZILY_ALLOCATED = 4, + PROTECTED = 5, + DEVICE_COHERENT_AMD = 6, + DEVICE_UNCACHED_AMD = 7, + RDMA_CAPABLE_NV = 8, +} + +ObjectType :: enum c.int { + UNKNOWN = 0, + INSTANCE = 1, + PHYSICAL_DEVICE = 2, + DEVICE = 3, + QUEUE = 4, + SEMAPHORE = 5, + COMMAND_BUFFER = 6, + FENCE = 7, + DEVICE_MEMORY = 8, + BUFFER = 9, + IMAGE = 10, + EVENT = 11, + QUERY_POOL = 12, + BUFFER_VIEW = 13, + IMAGE_VIEW = 14, + SHADER_MODULE = 15, + PIPELINE_CACHE = 16, + PIPELINE_LAYOUT = 17, + RENDER_PASS = 18, + PIPELINE = 19, + DESCRIPTOR_SET_LAYOUT = 20, + SAMPLER = 21, + DESCRIPTOR_POOL = 22, + DESCRIPTOR_SET = 23, + FRAMEBUFFER = 24, + COMMAND_POOL = 25, + SAMPLER_YCBCR_CONVERSION = 1000156000, + DESCRIPTOR_UPDATE_TEMPLATE = 1000085000, + SURFACE_KHR = 1000000000, + SWAPCHAIN_KHR = 1000001000, + DISPLAY_KHR = 1000002000, + DISPLAY_MODE_KHR = 1000002001, + DEBUG_REPORT_CALLBACK_EXT = 1000011000, + VIDEO_SESSION_KHR = 1000023000, + VIDEO_SESSION_PARAMETERS_KHR = 1000023001, + CU_MODULE_NVX = 1000029000, + CU_FUNCTION_NVX = 1000029001, + DEBUG_UTILS_MESSENGER_EXT = 1000128000, + ACCELERATION_STRUCTURE_KHR = 1000150000, + VALIDATION_CACHE_EXT = 1000160000, + ACCELERATION_STRUCTURE_NV = 1000165000, + PERFORMANCE_CONFIGURATION_INTEL = 1000210000, + DEFERRED_OPERATION_KHR = 1000268000, + INDIRECT_COMMANDS_LAYOUT_NV = 1000277000, + PRIVATE_DATA_SLOT_EXT = 1000295000, + DESCRIPTOR_UPDATE_TEMPLATE_KHR = DESCRIPTOR_UPDATE_TEMPLATE, + SAMPLER_YCBCR_CONVERSION_KHR = SAMPLER_YCBCR_CONVERSION, +} + +PeerMemoryFeatureFlags :: distinct bit_set[PeerMemoryFeatureFlag; Flags] +PeerMemoryFeatureFlag :: enum Flags { + COPY_SRC = 0, + COPY_DST = 1, + GENERIC_SRC = 2, + GENERIC_DST = 3, + COPY_SRC_KHR = COPY_SRC, + COPY_DST_KHR = COPY_DST, + GENERIC_SRC_KHR = GENERIC_SRC, + GENERIC_DST_KHR = GENERIC_DST, +} + +PerformanceConfigurationTypeINTEL :: enum c.int { + PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0, +} + +PerformanceCounterDescriptionFlagsKHR :: distinct bit_set[PerformanceCounterDescriptionFlagKHR; Flags] +PerformanceCounterDescriptionFlagKHR :: enum Flags { + PERFORMANCE_IMPACTING = 0, + CONCURRENTLY_IMPACTED = 1, +} + +PerformanceCounterScopeKHR :: enum c.int { + COMMAND_BUFFER = 0, + RENDER_PASS = 1, + COMMAND = 2, + QUERY_SCOPE_COMMAND_BUFFER = COMMAND_BUFFER, + QUERY_SCOPE_RENDER_PASS = RENDER_PASS, + QUERY_SCOPE_COMMAND = COMMAND, +} + +PerformanceCounterStorageKHR :: enum c.int { + INT32 = 0, + INT64 = 1, + UINT32 = 2, + UINT64 = 3, + FLOAT32 = 4, + FLOAT64 = 5, +} + +PerformanceCounterUnitKHR :: enum c.int { + GENERIC = 0, + PERCENTAGE = 1, + NANOSECONDS = 2, + BYTES = 3, + BYTES_PER_SECOND = 4, + KELVIN = 5, + WATTS = 6, + VOLTS = 7, + AMPS = 8, + HERTZ = 9, + CYCLES = 10, +} + +PerformanceOverrideTypeINTEL :: enum c.int { + PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL = 0, + PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = 1, +} + +PerformanceParameterTypeINTEL :: enum c.int { + PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL = 0, + PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL = 1, +} + +PerformanceValueTypeINTEL :: enum c.int { + PERFORMANCE_VALUE_TYPE_UINT32_INTEL = 0, + PERFORMANCE_VALUE_TYPE_UINT64_INTEL = 1, + PERFORMANCE_VALUE_TYPE_FLOAT_INTEL = 2, + PERFORMANCE_VALUE_TYPE_BOOL_INTEL = 3, + PERFORMANCE_VALUE_TYPE_STRING_INTEL = 4, +} + +PhysicalDeviceType :: enum c.int { + OTHER = 0, + INTEGRATED_GPU = 1, + DISCRETE_GPU = 2, + VIRTUAL_GPU = 3, + CPU = 4, +} + +PipelineBindPoint :: enum c.int { + GRAPHICS = 0, + COMPUTE = 1, + RAY_TRACING_KHR = 1000165000, + SUBPASS_SHADING_HUAWEI = 1000369003, + RAY_TRACING_NV = RAY_TRACING_KHR, +} + +PipelineCacheCreateFlags :: distinct bit_set[PipelineCacheCreateFlag; Flags] +PipelineCacheCreateFlag :: enum Flags { + EXTERNALLY_SYNCHRONIZED_EXT = 0, +} + +PipelineCacheHeaderVersion :: enum c.int { + ONE = 1, +} + +PipelineCompilerControlFlagsAMD :: distinct bit_set[PipelineCompilerControlFlagAMD; Flags] +PipelineCompilerControlFlagAMD :: enum Flags { +} + +PipelineCreateFlags :: distinct bit_set[PipelineCreateFlag; Flags] +PipelineCreateFlag :: enum Flags { + DISABLE_OPTIMIZATION = 0, + ALLOW_DERIVATIVES = 1, + DERIVATIVE = 2, + VIEW_INDEX_FROM_DEVICE_INDEX = 3, + DISPATCH_BASE = 4, + RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_KHR = 14, + RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_KHR = 15, + RAY_TRACING_NO_NULL_MISS_SHADERS_KHR = 16, + RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_KHR = 17, + RAY_TRACING_SKIP_TRIANGLES_KHR = 12, + RAY_TRACING_SKIP_AABBS_KHR = 13, + RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_KHR = 19, + DEFER_COMPILE_NV = 5, + CAPTURE_STATISTICS_KHR = 6, + CAPTURE_INTERNAL_REPRESENTATIONS_KHR = 7, + INDIRECT_BINDABLE_NV = 18, + LIBRARY_KHR = 11, + FAIL_ON_PIPELINE_COMPILE_REQUIRED_EXT = 8, + EARLY_RETURN_ON_FAILURE_EXT = 9, + RAY_TRACING_ALLOW_MOTION_NV = 20, + VIEW_INDEX_FROM_DEVICE_INDEX_KHR = VIEW_INDEX_FROM_DEVICE_INDEX, + DISPATCH_BASE_KHR = DISPATCH_BASE, +} + +PipelineCreationFeedbackFlagsEXT :: distinct bit_set[PipelineCreationFeedbackFlagEXT; Flags] +PipelineCreationFeedbackFlagEXT :: enum Flags { + VALID = 0, + APPLICATION_PIPELINE_CACHE_HIT = 1, + BASE_PIPELINE_ACCELERATION = 2, +} + +PipelineExecutableStatisticFormatKHR :: enum c.int { + BOOL32 = 0, + INT64 = 1, + UINT64 = 2, + FLOAT64 = 3, +} + +PipelineShaderStageCreateFlags :: distinct bit_set[PipelineShaderStageCreateFlag; Flags] +PipelineShaderStageCreateFlag :: enum Flags { + ALLOW_VARYING_SUBGROUP_SIZE_EXT = 0, + REQUIRE_FULL_SUBGROUPS_EXT = 1, +} + +PipelineStageFlags :: distinct bit_set[PipelineStageFlag; Flags] +PipelineStageFlag :: enum Flags { + TOP_OF_PIPE = 0, + DRAW_INDIRECT = 1, + VERTEX_INPUT = 2, + VERTEX_SHADER = 3, + TESSELLATION_CONTROL_SHADER = 4, + TESSELLATION_EVALUATION_SHADER = 5, + GEOMETRY_SHADER = 6, + FRAGMENT_SHADER = 7, + EARLY_FRAGMENT_TESTS = 8, + LATE_FRAGMENT_TESTS = 9, + COLOR_ATTACHMENT_OUTPUT = 10, + COMPUTE_SHADER = 11, + TRANSFER = 12, + BOTTOM_OF_PIPE = 13, + HOST = 14, + ALL_GRAPHICS = 15, + ALL_COMMANDS = 16, + TRANSFORM_FEEDBACK_EXT = 24, + CONDITIONAL_RENDERING_EXT = 18, + ACCELERATION_STRUCTURE_BUILD_KHR = 25, + RAY_TRACING_SHADER_KHR = 21, + TASK_SHADER_NV = 19, + MESH_SHADER_NV = 20, + FRAGMENT_DENSITY_PROCESS_EXT = 23, + FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 22, + COMMAND_PREPROCESS_NV = 17, + SHADING_RATE_IMAGE_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_KHR, + RAY_TRACING_SHADER_NV = RAY_TRACING_SHADER_KHR, + ACCELERATION_STRUCTURE_BUILD_NV = ACCELERATION_STRUCTURE_BUILD_KHR, +} + +PipelineStageFlags_NONE_KHR :: PipelineStageFlags{} + + +PointClippingBehavior :: enum c.int { + ALL_CLIP_PLANES = 0, + USER_CLIP_PLANES_ONLY = 1, + ALL_CLIP_PLANES_KHR = ALL_CLIP_PLANES, + USER_CLIP_PLANES_ONLY_KHR = USER_CLIP_PLANES_ONLY, +} + +PolygonMode :: enum c.int { + FILL = 0, + LINE = 1, + POINT = 2, + FILL_RECTANGLE_NV = 1000153000, +} + +PresentModeKHR :: enum c.int { + IMMEDIATE = 0, + MAILBOX = 1, + FIFO = 2, + FIFO_RELAXED = 3, + SHARED_DEMAND_REFRESH = 1000111000, + SHARED_CONTINUOUS_REFRESH = 1000111001, +} + +PrimitiveTopology :: enum c.int { + POINT_LIST = 0, + LINE_LIST = 1, + LINE_STRIP = 2, + TRIANGLE_LIST = 3, + TRIANGLE_STRIP = 4, + TRIANGLE_FAN = 5, + LINE_LIST_WITH_ADJACENCY = 6, + LINE_STRIP_WITH_ADJACENCY = 7, + TRIANGLE_LIST_WITH_ADJACENCY = 8, + TRIANGLE_STRIP_WITH_ADJACENCY = 9, + PATCH_LIST = 10, +} + +PrivateDataSlotCreateFlagsEXT :: distinct bit_set[PrivateDataSlotCreateFlagEXT; Flags] +PrivateDataSlotCreateFlagEXT :: enum Flags { +} + +ProvokingVertexModeEXT :: enum c.int { + FIRST_VERTEX = 0, + LAST_VERTEX = 1, +} + +QueryControlFlags :: distinct bit_set[QueryControlFlag; Flags] +QueryControlFlag :: enum Flags { + PRECISE = 0, +} + +QueryPipelineStatisticFlags :: distinct bit_set[QueryPipelineStatisticFlag; Flags] +QueryPipelineStatisticFlag :: enum Flags { + INPUT_ASSEMBLY_VERTICES = 0, + INPUT_ASSEMBLY_PRIMITIVES = 1, + VERTEX_SHADER_INVOCATIONS = 2, + GEOMETRY_SHADER_INVOCATIONS = 3, + GEOMETRY_SHADER_PRIMITIVES = 4, + CLIPPING_INVOCATIONS = 5, + CLIPPING_PRIMITIVES = 6, + FRAGMENT_SHADER_INVOCATIONS = 7, + TESSELLATION_CONTROL_SHADER_PATCHES = 8, + TESSELLATION_EVALUATION_SHADER_INVOCATIONS = 9, + COMPUTE_SHADER_INVOCATIONS = 10, +} + +QueryPoolSamplingModeINTEL :: enum c.int { + QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL = 0, +} + +QueryResultFlags :: distinct bit_set[QueryResultFlag; Flags] +QueryResultFlag :: enum Flags { + _64 = 0, + WAIT = 1, + WITH_AVAILABILITY = 2, + PARTIAL = 3, + WITH_STATUS_KHR = 4, +} + +QueryType :: enum c.int { + OCCLUSION = 0, + PIPELINE_STATISTICS = 1, + TIMESTAMP = 2, + RESULT_STATUS_ONLY_KHR = 1000023000, + TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004, + PERFORMANCE_QUERY_KHR = 1000116000, + ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000, + ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001, + ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000, + PERFORMANCE_QUERY_INTEL = 1000210000, + VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR = 1000299000, +} + +QueueFlags :: distinct bit_set[QueueFlag; Flags] +QueueFlag :: enum Flags { + GRAPHICS = 0, + COMPUTE = 1, + TRANSFER = 2, + SPARSE_BINDING = 3, + PROTECTED = 4, + VIDEO_DECODE_KHR = 5, + VIDEO_ENCODE_KHR = 6, +} + +QueueGlobalPriorityEXT :: enum c.int { + LOW = 128, + MEDIUM = 256, + HIGH = 512, + REALTIME = 1024, +} + +RasterizationOrderAMD :: enum c.int { + STRICT = 0, + RELAXED = 1, +} + +RayTracingShaderGroupTypeKHR :: enum c.int { + GENERAL = 0, + TRIANGLES_HIT_GROUP = 1, + PROCEDURAL_HIT_GROUP = 2, + GENERAL_NV = GENERAL, + TRIANGLES_HIT_GROUP_NV = TRIANGLES_HIT_GROUP, + PROCEDURAL_HIT_GROUP_NV = PROCEDURAL_HIT_GROUP, +} + +RenderPassCreateFlags :: distinct bit_set[RenderPassCreateFlag; Flags] +RenderPassCreateFlag :: enum Flags { + TRANSFORM_QCOM = 1, +} + +ResolveModeFlags :: distinct bit_set[ResolveModeFlag; Flags] +ResolveModeFlag :: enum Flags { + SAMPLE_ZERO = 0, + AVERAGE = 1, + MIN = 2, + MAX = 3, + SAMPLE_ZERO_KHR = SAMPLE_ZERO, + AVERAGE_KHR = AVERAGE, + MIN_KHR = MIN, + MAX_KHR = MAX, +} + +ResolveModeFlags_NONE :: ResolveModeFlags{} + + Result :: enum c.int { SUCCESS = 0, NOT_READY = 1, @@ -53,6 +1842,199 @@ Result :: enum c.int { ERROR_PIPELINE_COMPILE_REQUIRED_EXT = PIPELINE_COMPILE_REQUIRED_EXT, } +SampleCountFlags :: distinct bit_set[SampleCountFlag; Flags] +SampleCountFlag :: enum Flags { + _1 = 0, + _2 = 1, + _4 = 2, + _8 = 3, + _16 = 4, + _32 = 5, + _64 = 6, +} + +SamplerAddressMode :: enum c.int { + REPEAT = 0, + MIRRORED_REPEAT = 1, + CLAMP_TO_EDGE = 2, + CLAMP_TO_BORDER = 3, + MIRROR_CLAMP_TO_EDGE = 4, + MIRROR_CLAMP_TO_EDGE_KHR = MIRROR_CLAMP_TO_EDGE, +} + +SamplerCreateFlags :: distinct bit_set[SamplerCreateFlag; Flags] +SamplerCreateFlag :: enum Flags { + SUBSAMPLED_EXT = 0, + SUBSAMPLED_COARSE_RECONSTRUCTION_EXT = 1, +} + +SamplerMipmapMode :: enum c.int { + NEAREST = 0, + LINEAR = 1, +} + +SamplerReductionMode :: enum c.int { + WEIGHTED_AVERAGE = 0, + MIN = 1, + MAX = 2, + WEIGHTED_AVERAGE_EXT = WEIGHTED_AVERAGE, + MIN_EXT = MIN, + MAX_EXT = MAX, +} + +SamplerYcbcrModelConversion :: enum c.int { + RGB_IDENTITY = 0, + YCBCR_IDENTITY = 1, + YCBCR_709 = 2, + YCBCR_601 = 3, + YCBCR_2020 = 4, + RGB_IDENTITY_KHR = RGB_IDENTITY, + YCBCR_IDENTITY_KHR = YCBCR_IDENTITY, + YCBCR_709_KHR = YCBCR_709, + YCBCR_601_KHR = YCBCR_601, + YCBCR_2020_KHR = YCBCR_2020, +} + +SamplerYcbcrRange :: enum c.int { + ITU_FULL = 0, + ITU_NARROW = 1, + ITU_FULL_KHR = ITU_FULL, + ITU_NARROW_KHR = ITU_NARROW, +} + +ScopeNV :: enum c.int { + DEVICE = 1, + WORKGROUP = 2, + SUBGROUP = 3, + QUEUE_FAMILY = 5, +} + +SemaphoreImportFlags :: distinct bit_set[SemaphoreImportFlag; Flags] +SemaphoreImportFlag :: enum Flags { + TEMPORARY = 0, + TEMPORARY_KHR = TEMPORARY, +} + +SemaphoreType :: enum c.int { + BINARY = 0, + TIMELINE = 1, + BINARY_KHR = BINARY, + TIMELINE_KHR = TIMELINE, +} + +SemaphoreWaitFlags :: distinct bit_set[SemaphoreWaitFlag; Flags] +SemaphoreWaitFlag :: enum Flags { + ANY = 0, + ANY_KHR = ANY, +} + +ShaderCorePropertiesFlagsAMD :: distinct bit_set[ShaderCorePropertiesFlagAMD; Flags] +ShaderCorePropertiesFlagAMD :: enum Flags { +} + +ShaderFloatControlsIndependence :: enum c.int { + _32_BIT_ONLY = 0, + ALL = 1, + NONE = 2, + _32_BIT_ONLY_KHR = _32_BIT_ONLY, + ALL_KHR = ALL, +} + +ShaderGroupShaderKHR :: enum c.int { + GENERAL = 0, + CLOSEST_HIT = 1, + ANY_HIT = 2, + INTERSECTION = 3, +} + +ShaderInfoTypeAMD :: enum c.int { + STATISTICS = 0, + BINARY = 1, + DISASSEMBLY = 2, +} + +ShaderStageFlags :: distinct bit_set[ShaderStageFlag; Flags] +ShaderStageFlag :: enum Flags { + VERTEX = 0, + TESSELLATION_CONTROL = 1, + TESSELLATION_EVALUATION = 2, + GEOMETRY = 3, + FRAGMENT = 4, + COMPUTE = 5, + RAYGEN_KHR = 8, + ANY_HIT_KHR = 9, + CLOSEST_HIT_KHR = 10, + MISS_KHR = 11, + INTERSECTION_KHR = 12, + CALLABLE_KHR = 13, + TASK_NV = 6, + MESH_NV = 7, + SUBPASS_SHADING_HUAWEI = 14, + RAYGEN_NV = RAYGEN_KHR, + ANY_HIT_NV = ANY_HIT_KHR, + CLOSEST_HIT_NV = CLOSEST_HIT_KHR, + MISS_NV = MISS_KHR, + INTERSECTION_NV = INTERSECTION_KHR, + CALLABLE_NV = CALLABLE_KHR, + _MAX = 31, // Needed for the *_ALL bit set +} + +ShaderStageFlags_ALL_GRAPHICS :: ShaderStageFlags{.VERTEX, .TESSELLATION_CONTROL, .TESSELLATION_EVALUATION, .GEOMETRY, .FRAGMENT} +ShaderStageFlags_ALL :: ShaderStageFlags{.VERTEX, .TESSELLATION_CONTROL, .TESSELLATION_EVALUATION, .GEOMETRY, .FRAGMENT, .COMPUTE, .TASK_NV, .MESH_NV, .RAYGEN_KHR, .ANY_HIT_KHR, .CLOSEST_HIT_KHR, .MISS_KHR, .INTERSECTION_KHR, .CALLABLE_KHR, .SUBPASS_SHADING_HUAWEI, ShaderStageFlag(15), ShaderStageFlag(16), ShaderStageFlag(17), ShaderStageFlag(18), ShaderStageFlag(19), ShaderStageFlag(20), ShaderStageFlag(21), ShaderStageFlag(22), ShaderStageFlag(23), ShaderStageFlag(24), ShaderStageFlag(25), ShaderStageFlag(26), ShaderStageFlag(27), ShaderStageFlag(28), ShaderStageFlag(29), ShaderStageFlag(30)} + + +ShadingRatePaletteEntryNV :: enum c.int { + NO_INVOCATIONS = 0, + _16_INVOCATIONS_PER_PIXEL = 1, + _8_INVOCATIONS_PER_PIXEL = 2, + _4_INVOCATIONS_PER_PIXEL = 3, + _2_INVOCATIONS_PER_PIXEL = 4, + _1_INVOCATION_PER_PIXEL = 5, + _1_INVOCATION_PER_2X1_PIXELS = 6, + _1_INVOCATION_PER_1X2_PIXELS = 7, + _1_INVOCATION_PER_2X2_PIXELS = 8, + _1_INVOCATION_PER_4X2_PIXELS = 9, + _1_INVOCATION_PER_2X4_PIXELS = 10, + _1_INVOCATION_PER_4X4_PIXELS = 11, +} + +SharingMode :: enum c.int { + EXCLUSIVE = 0, + CONCURRENT = 1, +} + +SparseImageFormatFlags :: distinct bit_set[SparseImageFormatFlag; Flags] +SparseImageFormatFlag :: enum Flags { + SINGLE_MIPTAIL = 0, + ALIGNED_MIP_SIZE = 1, + NONSTANDARD_BLOCK_SIZE = 2, +} + +SparseMemoryBindFlags :: distinct bit_set[SparseMemoryBindFlag; Flags] +SparseMemoryBindFlag :: enum Flags { + METADATA = 0, +} + +StencilFaceFlags :: distinct bit_set[StencilFaceFlag; Flags] +StencilFaceFlag :: enum Flags { + FRONT = 0, + BACK = 1, +} + +StencilFaceFlags_FRONT_AND_BACK :: StencilFaceFlags{.FRONT, .BACK} + + +StencilOp :: enum c.int { + KEEP = 0, + ZERO = 1, + REPLACE = 2, + INCREMENT_AND_CLAMP = 3, + DECREMENT_AND_CLAMP = 4, + INVERT = 5, + INCREMENT_AND_WRAP = 6, + DECREMENT_AND_WRAP = 7, +} + StructureType :: enum c.int { APPLICATION_INFO = 0, INSTANCE_CREATE_INFO = 1, @@ -742,1286 +2724,6 @@ StructureType :: enum c.int { PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT = PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, } -ImageLayout :: enum c.int { - UNDEFINED = 0, - GENERAL = 1, - COLOR_ATTACHMENT_OPTIMAL = 2, - DEPTH_STENCIL_ATTACHMENT_OPTIMAL = 3, - DEPTH_STENCIL_READ_ONLY_OPTIMAL = 4, - SHADER_READ_ONLY_OPTIMAL = 5, - TRANSFER_SRC_OPTIMAL = 6, - TRANSFER_DST_OPTIMAL = 7, - PREINITIALIZED = 8, - DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL = 1000117000, - DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL = 1000117001, - DEPTH_ATTACHMENT_OPTIMAL = 1000241000, - DEPTH_READ_ONLY_OPTIMAL = 1000241001, - STENCIL_ATTACHMENT_OPTIMAL = 1000241002, - STENCIL_READ_ONLY_OPTIMAL = 1000241003, - PRESENT_SRC_KHR = 1000001002, - VIDEO_DECODE_DST_KHR = 1000024000, - VIDEO_DECODE_SRC_KHR = 1000024001, - VIDEO_DECODE_DPB_KHR = 1000024002, - SHARED_PRESENT_KHR = 1000111000, - FRAGMENT_DENSITY_MAP_OPTIMAL_EXT = 1000218000, - FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR = 1000164003, - VIDEO_ENCODE_DST_KHR = 1000299000, - VIDEO_ENCODE_SRC_KHR = 1000299001, - VIDEO_ENCODE_DPB_KHR = 1000299002, - READ_ONLY_OPTIMAL_KHR = 1000314000, - ATTACHMENT_OPTIMAL_KHR = 1000314001, - DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR = DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, - DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR = DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, - SHADING_RATE_OPTIMAL_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR, - DEPTH_ATTACHMENT_OPTIMAL_KHR = DEPTH_ATTACHMENT_OPTIMAL, - DEPTH_READ_ONLY_OPTIMAL_KHR = DEPTH_READ_ONLY_OPTIMAL, - STENCIL_ATTACHMENT_OPTIMAL_KHR = STENCIL_ATTACHMENT_OPTIMAL, - STENCIL_READ_ONLY_OPTIMAL_KHR = STENCIL_READ_ONLY_OPTIMAL, -} - -ObjectType :: enum c.int { - UNKNOWN = 0, - INSTANCE = 1, - PHYSICAL_DEVICE = 2, - DEVICE = 3, - QUEUE = 4, - SEMAPHORE = 5, - COMMAND_BUFFER = 6, - FENCE = 7, - DEVICE_MEMORY = 8, - BUFFER = 9, - IMAGE = 10, - EVENT = 11, - QUERY_POOL = 12, - BUFFER_VIEW = 13, - IMAGE_VIEW = 14, - SHADER_MODULE = 15, - PIPELINE_CACHE = 16, - PIPELINE_LAYOUT = 17, - RENDER_PASS = 18, - PIPELINE = 19, - DESCRIPTOR_SET_LAYOUT = 20, - SAMPLER = 21, - DESCRIPTOR_POOL = 22, - DESCRIPTOR_SET = 23, - FRAMEBUFFER = 24, - COMMAND_POOL = 25, - SAMPLER_YCBCR_CONVERSION = 1000156000, - DESCRIPTOR_UPDATE_TEMPLATE = 1000085000, - SURFACE_KHR = 1000000000, - SWAPCHAIN_KHR = 1000001000, - DISPLAY_KHR = 1000002000, - DISPLAY_MODE_KHR = 1000002001, - DEBUG_REPORT_CALLBACK_EXT = 1000011000, - VIDEO_SESSION_KHR = 1000023000, - VIDEO_SESSION_PARAMETERS_KHR = 1000023001, - CU_MODULE_NVX = 1000029000, - CU_FUNCTION_NVX = 1000029001, - DEBUG_UTILS_MESSENGER_EXT = 1000128000, - ACCELERATION_STRUCTURE_KHR = 1000150000, - VALIDATION_CACHE_EXT = 1000160000, - ACCELERATION_STRUCTURE_NV = 1000165000, - PERFORMANCE_CONFIGURATION_INTEL = 1000210000, - DEFERRED_OPERATION_KHR = 1000268000, - INDIRECT_COMMANDS_LAYOUT_NV = 1000277000, - PRIVATE_DATA_SLOT_EXT = 1000295000, - DESCRIPTOR_UPDATE_TEMPLATE_KHR = DESCRIPTOR_UPDATE_TEMPLATE, - SAMPLER_YCBCR_CONVERSION_KHR = SAMPLER_YCBCR_CONVERSION, -} - -PipelineCacheHeaderVersion :: enum c.int { - ONE = 1, -} - -VendorId :: enum c.int { - VIV = 0x10001, - VSI = 0x10002, - KAZAN = 0x10003, - CODEPLAY = 0x10004, - MESA = 0x10005, - POCL = 0x10006, -} - -SystemAllocationScope :: enum c.int { - COMMAND = 0, - OBJECT = 1, - CACHE = 2, - DEVICE = 3, - INSTANCE = 4, -} - -InternalAllocationType :: enum c.int { - EXECUTABLE = 0, -} - -Format :: enum c.int { - UNDEFINED = 0, - R4G4_UNORM_PACK8 = 1, - R4G4B4A4_UNORM_PACK16 = 2, - B4G4R4A4_UNORM_PACK16 = 3, - R5G6B5_UNORM_PACK16 = 4, - B5G6R5_UNORM_PACK16 = 5, - R5G5B5A1_UNORM_PACK16 = 6, - B5G5R5A1_UNORM_PACK16 = 7, - A1R5G5B5_UNORM_PACK16 = 8, - R8_UNORM = 9, - R8_SNORM = 10, - R8_USCALED = 11, - R8_SSCALED = 12, - R8_UINT = 13, - R8_SINT = 14, - R8_SRGB = 15, - R8G8_UNORM = 16, - R8G8_SNORM = 17, - R8G8_USCALED = 18, - R8G8_SSCALED = 19, - R8G8_UINT = 20, - R8G8_SINT = 21, - R8G8_SRGB = 22, - R8G8B8_UNORM = 23, - R8G8B8_SNORM = 24, - R8G8B8_USCALED = 25, - R8G8B8_SSCALED = 26, - R8G8B8_UINT = 27, - R8G8B8_SINT = 28, - R8G8B8_SRGB = 29, - B8G8R8_UNORM = 30, - B8G8R8_SNORM = 31, - B8G8R8_USCALED = 32, - B8G8R8_SSCALED = 33, - B8G8R8_UINT = 34, - B8G8R8_SINT = 35, - B8G8R8_SRGB = 36, - R8G8B8A8_UNORM = 37, - R8G8B8A8_SNORM = 38, - R8G8B8A8_USCALED = 39, - R8G8B8A8_SSCALED = 40, - R8G8B8A8_UINT = 41, - R8G8B8A8_SINT = 42, - R8G8B8A8_SRGB = 43, - B8G8R8A8_UNORM = 44, - B8G8R8A8_SNORM = 45, - B8G8R8A8_USCALED = 46, - B8G8R8A8_SSCALED = 47, - B8G8R8A8_UINT = 48, - B8G8R8A8_SINT = 49, - B8G8R8A8_SRGB = 50, - A8B8G8R8_UNORM_PACK32 = 51, - A8B8G8R8_SNORM_PACK32 = 52, - A8B8G8R8_USCALED_PACK32 = 53, - A8B8G8R8_SSCALED_PACK32 = 54, - A8B8G8R8_UINT_PACK32 = 55, - A8B8G8R8_SINT_PACK32 = 56, - A8B8G8R8_SRGB_PACK32 = 57, - A2R10G10B10_UNORM_PACK32 = 58, - A2R10G10B10_SNORM_PACK32 = 59, - A2R10G10B10_USCALED_PACK32 = 60, - A2R10G10B10_SSCALED_PACK32 = 61, - A2R10G10B10_UINT_PACK32 = 62, - A2R10G10B10_SINT_PACK32 = 63, - A2B10G10R10_UNORM_PACK32 = 64, - A2B10G10R10_SNORM_PACK32 = 65, - A2B10G10R10_USCALED_PACK32 = 66, - A2B10G10R10_SSCALED_PACK32 = 67, - A2B10G10R10_UINT_PACK32 = 68, - A2B10G10R10_SINT_PACK32 = 69, - R16_UNORM = 70, - R16_SNORM = 71, - R16_USCALED = 72, - R16_SSCALED = 73, - R16_UINT = 74, - R16_SINT = 75, - R16_SFLOAT = 76, - R16G16_UNORM = 77, - R16G16_SNORM = 78, - R16G16_USCALED = 79, - R16G16_SSCALED = 80, - R16G16_UINT = 81, - R16G16_SINT = 82, - R16G16_SFLOAT = 83, - R16G16B16_UNORM = 84, - R16G16B16_SNORM = 85, - R16G16B16_USCALED = 86, - R16G16B16_SSCALED = 87, - R16G16B16_UINT = 88, - R16G16B16_SINT = 89, - R16G16B16_SFLOAT = 90, - R16G16B16A16_UNORM = 91, - R16G16B16A16_SNORM = 92, - R16G16B16A16_USCALED = 93, - R16G16B16A16_SSCALED = 94, - R16G16B16A16_UINT = 95, - R16G16B16A16_SINT = 96, - R16G16B16A16_SFLOAT = 97, - R32_UINT = 98, - R32_SINT = 99, - R32_SFLOAT = 100, - R32G32_UINT = 101, - R32G32_SINT = 102, - R32G32_SFLOAT = 103, - R32G32B32_UINT = 104, - R32G32B32_SINT = 105, - R32G32B32_SFLOAT = 106, - R32G32B32A32_UINT = 107, - R32G32B32A32_SINT = 108, - R32G32B32A32_SFLOAT = 109, - R64_UINT = 110, - R64_SINT = 111, - R64_SFLOAT = 112, - R64G64_UINT = 113, - R64G64_SINT = 114, - R64G64_SFLOAT = 115, - R64G64B64_UINT = 116, - R64G64B64_SINT = 117, - R64G64B64_SFLOAT = 118, - R64G64B64A64_UINT = 119, - R64G64B64A64_SINT = 120, - R64G64B64A64_SFLOAT = 121, - B10G11R11_UFLOAT_PACK32 = 122, - E5B9G9R9_UFLOAT_PACK32 = 123, - D16_UNORM = 124, - X8_D24_UNORM_PACK32 = 125, - D32_SFLOAT = 126, - S8_UINT = 127, - D16_UNORM_S8_UINT = 128, - D24_UNORM_S8_UINT = 129, - D32_SFLOAT_S8_UINT = 130, - BC1_RGB_UNORM_BLOCK = 131, - BC1_RGB_SRGB_BLOCK = 132, - BC1_RGBA_UNORM_BLOCK = 133, - BC1_RGBA_SRGB_BLOCK = 134, - BC2_UNORM_BLOCK = 135, - BC2_SRGB_BLOCK = 136, - BC3_UNORM_BLOCK = 137, - BC3_SRGB_BLOCK = 138, - BC4_UNORM_BLOCK = 139, - BC4_SNORM_BLOCK = 140, - BC5_UNORM_BLOCK = 141, - BC5_SNORM_BLOCK = 142, - BC6H_UFLOAT_BLOCK = 143, - BC6H_SFLOAT_BLOCK = 144, - BC7_UNORM_BLOCK = 145, - BC7_SRGB_BLOCK = 146, - ETC2_R8G8B8_UNORM_BLOCK = 147, - ETC2_R8G8B8_SRGB_BLOCK = 148, - ETC2_R8G8B8A1_UNORM_BLOCK = 149, - ETC2_R8G8B8A1_SRGB_BLOCK = 150, - ETC2_R8G8B8A8_UNORM_BLOCK = 151, - ETC2_R8G8B8A8_SRGB_BLOCK = 152, - EAC_R11_UNORM_BLOCK = 153, - EAC_R11_SNORM_BLOCK = 154, - EAC_R11G11_UNORM_BLOCK = 155, - EAC_R11G11_SNORM_BLOCK = 156, - ASTC_4x4_UNORM_BLOCK = 157, - ASTC_4x4_SRGB_BLOCK = 158, - ASTC_5x4_UNORM_BLOCK = 159, - ASTC_5x4_SRGB_BLOCK = 160, - ASTC_5x5_UNORM_BLOCK = 161, - ASTC_5x5_SRGB_BLOCK = 162, - ASTC_6x5_UNORM_BLOCK = 163, - ASTC_6x5_SRGB_BLOCK = 164, - ASTC_6x6_UNORM_BLOCK = 165, - ASTC_6x6_SRGB_BLOCK = 166, - ASTC_8x5_UNORM_BLOCK = 167, - ASTC_8x5_SRGB_BLOCK = 168, - ASTC_8x6_UNORM_BLOCK = 169, - ASTC_8x6_SRGB_BLOCK = 170, - ASTC_8x8_UNORM_BLOCK = 171, - ASTC_8x8_SRGB_BLOCK = 172, - ASTC_10x5_UNORM_BLOCK = 173, - ASTC_10x5_SRGB_BLOCK = 174, - ASTC_10x6_UNORM_BLOCK = 175, - ASTC_10x6_SRGB_BLOCK = 176, - ASTC_10x8_UNORM_BLOCK = 177, - ASTC_10x8_SRGB_BLOCK = 178, - ASTC_10x10_UNORM_BLOCK = 179, - ASTC_10x10_SRGB_BLOCK = 180, - ASTC_12x10_UNORM_BLOCK = 181, - ASTC_12x10_SRGB_BLOCK = 182, - ASTC_12x12_UNORM_BLOCK = 183, - ASTC_12x12_SRGB_BLOCK = 184, - G8B8G8R8_422_UNORM = 1000156000, - B8G8R8G8_422_UNORM = 1000156001, - G8_B8_R8_3PLANE_420_UNORM = 1000156002, - G8_B8R8_2PLANE_420_UNORM = 1000156003, - G8_B8_R8_3PLANE_422_UNORM = 1000156004, - G8_B8R8_2PLANE_422_UNORM = 1000156005, - G8_B8_R8_3PLANE_444_UNORM = 1000156006, - R10X6_UNORM_PACK16 = 1000156007, - R10X6G10X6_UNORM_2PACK16 = 1000156008, - R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 1000156009, - G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 1000156010, - B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 1000156011, - G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 1000156012, - G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 1000156013, - G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 1000156014, - G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 1000156015, - G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 1000156016, - R12X4_UNORM_PACK16 = 1000156017, - R12X4G12X4_UNORM_2PACK16 = 1000156018, - R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 1000156019, - G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 1000156020, - B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 1000156021, - G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 1000156022, - G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 1000156023, - G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 1000156024, - G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 1000156025, - G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 1000156026, - G16B16G16R16_422_UNORM = 1000156027, - B16G16R16G16_422_UNORM = 1000156028, - G16_B16_R16_3PLANE_420_UNORM = 1000156029, - G16_B16R16_2PLANE_420_UNORM = 1000156030, - G16_B16_R16_3PLANE_422_UNORM = 1000156031, - G16_B16R16_2PLANE_422_UNORM = 1000156032, - G16_B16_R16_3PLANE_444_UNORM = 1000156033, - PVRTC1_2BPP_UNORM_BLOCK_IMG = 1000054000, - PVRTC1_4BPP_UNORM_BLOCK_IMG = 1000054001, - PVRTC2_2BPP_UNORM_BLOCK_IMG = 1000054002, - PVRTC2_4BPP_UNORM_BLOCK_IMG = 1000054003, - PVRTC1_2BPP_SRGB_BLOCK_IMG = 1000054004, - PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005, - PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006, - PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007, - ASTC_4x4_SFLOAT_BLOCK_EXT = 1000066000, - ASTC_5x4_SFLOAT_BLOCK_EXT = 1000066001, - ASTC_5x5_SFLOAT_BLOCK_EXT = 1000066002, - ASTC_6x5_SFLOAT_BLOCK_EXT = 1000066003, - ASTC_6x6_SFLOAT_BLOCK_EXT = 1000066004, - ASTC_8x5_SFLOAT_BLOCK_EXT = 1000066005, - ASTC_8x6_SFLOAT_BLOCK_EXT = 1000066006, - ASTC_8x8_SFLOAT_BLOCK_EXT = 1000066007, - ASTC_10x5_SFLOAT_BLOCK_EXT = 1000066008, - ASTC_10x6_SFLOAT_BLOCK_EXT = 1000066009, - ASTC_10x8_SFLOAT_BLOCK_EXT = 1000066010, - ASTC_10x10_SFLOAT_BLOCK_EXT = 1000066011, - ASTC_12x10_SFLOAT_BLOCK_EXT = 1000066012, - ASTC_12x12_SFLOAT_BLOCK_EXT = 1000066013, - G8_B8R8_2PLANE_444_UNORM_EXT = 1000330000, - G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT = 1000330001, - G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT = 1000330002, - G16_B16R16_2PLANE_444_UNORM_EXT = 1000330003, - A4R4G4B4_UNORM_PACK16_EXT = 1000340000, - A4B4G4R4_UNORM_PACK16_EXT = 1000340001, - G8B8G8R8_422_UNORM_KHR = G8B8G8R8_422_UNORM, - B8G8R8G8_422_UNORM_KHR = B8G8R8G8_422_UNORM, - G8_B8_R8_3PLANE_420_UNORM_KHR = G8_B8_R8_3PLANE_420_UNORM, - G8_B8R8_2PLANE_420_UNORM_KHR = G8_B8R8_2PLANE_420_UNORM, - G8_B8_R8_3PLANE_422_UNORM_KHR = G8_B8_R8_3PLANE_422_UNORM, - G8_B8R8_2PLANE_422_UNORM_KHR = G8_B8R8_2PLANE_422_UNORM, - G8_B8_R8_3PLANE_444_UNORM_KHR = G8_B8_R8_3PLANE_444_UNORM, - R10X6_UNORM_PACK16_KHR = R10X6_UNORM_PACK16, - R10X6G10X6_UNORM_2PACK16_KHR = R10X6G10X6_UNORM_2PACK16, - R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR = R10X6G10X6B10X6A10X6_UNORM_4PACK16, - G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR = G10X6B10X6G10X6R10X6_422_UNORM_4PACK16, - B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR = B10X6G10X6R10X6G10X6_422_UNORM_4PACK16, - G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16, - G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR = G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16, - G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16, - G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR = G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16, - G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR = G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16, - R12X4_UNORM_PACK16_KHR = R12X4_UNORM_PACK16, - R12X4G12X4_UNORM_2PACK16_KHR = R12X4G12X4_UNORM_2PACK16, - R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR = R12X4G12X4B12X4A12X4_UNORM_4PACK16, - G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR = G12X4B12X4G12X4R12X4_422_UNORM_4PACK16, - B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR = B12X4G12X4R12X4G12X4_422_UNORM_4PACK16, - G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16, - G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR = G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16, - G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16, - G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR = G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16, - G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR = G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16, - G16B16G16R16_422_UNORM_KHR = G16B16G16R16_422_UNORM, - B16G16R16G16_422_UNORM_KHR = B16G16R16G16_422_UNORM, - G16_B16_R16_3PLANE_420_UNORM_KHR = G16_B16_R16_3PLANE_420_UNORM, - G16_B16R16_2PLANE_420_UNORM_KHR = G16_B16R16_2PLANE_420_UNORM, - G16_B16_R16_3PLANE_422_UNORM_KHR = G16_B16_R16_3PLANE_422_UNORM, - G16_B16R16_2PLANE_422_UNORM_KHR = G16_B16R16_2PLANE_422_UNORM, - G16_B16_R16_3PLANE_444_UNORM_KHR = G16_B16_R16_3PLANE_444_UNORM, -} - -ImageTiling :: enum c.int { - OPTIMAL = 0, - LINEAR = 1, - DRM_FORMAT_MODIFIER_EXT = 1000158000, -} - -ImageType :: enum c.int { - D1 = 0, - D2 = 1, - D3 = 2, -} - -PhysicalDeviceType :: enum c.int { - OTHER = 0, - INTEGRATED_GPU = 1, - DISCRETE_GPU = 2, - VIRTUAL_GPU = 3, - CPU = 4, -} - -QueryType :: enum c.int { - OCCLUSION = 0, - PIPELINE_STATISTICS = 1, - TIMESTAMP = 2, - RESULT_STATUS_ONLY_KHR = 1000023000, - TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004, - PERFORMANCE_QUERY_KHR = 1000116000, - ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR = 1000150000, - ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR = 1000150001, - ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV = 1000165000, - PERFORMANCE_QUERY_INTEL = 1000210000, - VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR = 1000299000, -} - -SharingMode :: enum c.int { - EXCLUSIVE = 0, - CONCURRENT = 1, -} - -ComponentSwizzle :: enum c.int { - IDENTITY = 0, - ZERO = 1, - ONE = 2, - R = 3, - G = 4, - B = 5, - A = 6, -} - -ImageViewType :: enum c.int { - D1 = 0, - D2 = 1, - D3 = 2, - CUBE = 3, - D1_ARRAY = 4, - D2_ARRAY = 5, - CUBE_ARRAY = 6, -} - -BlendFactor :: enum c.int { - ZERO = 0, - ONE = 1, - SRC_COLOR = 2, - ONE_MINUS_SRC_COLOR = 3, - DST_COLOR = 4, - ONE_MINUS_DST_COLOR = 5, - SRC_ALPHA = 6, - ONE_MINUS_SRC_ALPHA = 7, - DST_ALPHA = 8, - ONE_MINUS_DST_ALPHA = 9, - CONSTANT_COLOR = 10, - ONE_MINUS_CONSTANT_COLOR = 11, - CONSTANT_ALPHA = 12, - ONE_MINUS_CONSTANT_ALPHA = 13, - SRC_ALPHA_SATURATE = 14, - SRC1_COLOR = 15, - ONE_MINUS_SRC1_COLOR = 16, - SRC1_ALPHA = 17, - ONE_MINUS_SRC1_ALPHA = 18, -} - -BlendOp :: enum c.int { - ADD = 0, - SUBTRACT = 1, - REVERSE_SUBTRACT = 2, - MIN = 3, - MAX = 4, - ZERO_EXT = 1000148000, - SRC_EXT = 1000148001, - DST_EXT = 1000148002, - SRC_OVER_EXT = 1000148003, - DST_OVER_EXT = 1000148004, - SRC_IN_EXT = 1000148005, - DST_IN_EXT = 1000148006, - SRC_OUT_EXT = 1000148007, - DST_OUT_EXT = 1000148008, - SRC_ATOP_EXT = 1000148009, - DST_ATOP_EXT = 1000148010, - XOR_EXT = 1000148011, - MULTIPLY_EXT = 1000148012, - SCREEN_EXT = 1000148013, - OVERLAY_EXT = 1000148014, - DARKEN_EXT = 1000148015, - LIGHTEN_EXT = 1000148016, - COLORDODGE_EXT = 1000148017, - COLORBURN_EXT = 1000148018, - HARDLIGHT_EXT = 1000148019, - SOFTLIGHT_EXT = 1000148020, - DIFFERENCE_EXT = 1000148021, - EXCLUSION_EXT = 1000148022, - INVERT_EXT = 1000148023, - INVERT_RGB_EXT = 1000148024, - LINEARDODGE_EXT = 1000148025, - LINEARBURN_EXT = 1000148026, - VIVIDLIGHT_EXT = 1000148027, - LINEARLIGHT_EXT = 1000148028, - PINLIGHT_EXT = 1000148029, - HARDMIX_EXT = 1000148030, - HSL_HUE_EXT = 1000148031, - HSL_SATURATION_EXT = 1000148032, - HSL_COLOR_EXT = 1000148033, - HSL_LUMINOSITY_EXT = 1000148034, - PLUS_EXT = 1000148035, - PLUS_CLAMPED_EXT = 1000148036, - PLUS_CLAMPED_ALPHA_EXT = 1000148037, - PLUS_DARKER_EXT = 1000148038, - MINUS_EXT = 1000148039, - MINUS_CLAMPED_EXT = 1000148040, - CONTRAST_EXT = 1000148041, - INVERT_OVG_EXT = 1000148042, - RED_EXT = 1000148043, - GREEN_EXT = 1000148044, - BLUE_EXT = 1000148045, -} - -CompareOp :: enum c.int { - NEVER = 0, - LESS = 1, - EQUAL = 2, - LESS_OR_EQUAL = 3, - GREATER = 4, - NOT_EQUAL = 5, - GREATER_OR_EQUAL = 6, - ALWAYS = 7, -} - -DynamicState :: enum c.int { - VIEWPORT = 0, - SCISSOR = 1, - LINE_WIDTH = 2, - DEPTH_BIAS = 3, - BLEND_CONSTANTS = 4, - DEPTH_BOUNDS = 5, - STENCIL_COMPARE_MASK = 6, - STENCIL_WRITE_MASK = 7, - STENCIL_REFERENCE = 8, - VIEWPORT_W_SCALING_NV = 1000087000, - DISCARD_RECTANGLE_EXT = 1000099000, - SAMPLE_LOCATIONS_EXT = 1000143000, - RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000, - VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004, - VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006, - EXCLUSIVE_SCISSOR_NV = 1000205001, - FRAGMENT_SHADING_RATE_KHR = 1000226000, - LINE_STIPPLE_EXT = 1000259000, - CULL_MODE_EXT = 1000267000, - FRONT_FACE_EXT = 1000267001, - PRIMITIVE_TOPOLOGY_EXT = 1000267002, - VIEWPORT_WITH_COUNT_EXT = 1000267003, - SCISSOR_WITH_COUNT_EXT = 1000267004, - VERTEX_INPUT_BINDING_STRIDE_EXT = 1000267005, - DEPTH_TEST_ENABLE_EXT = 1000267006, - DEPTH_WRITE_ENABLE_EXT = 1000267007, - DEPTH_COMPARE_OP_EXT = 1000267008, - DEPTH_BOUNDS_TEST_ENABLE_EXT = 1000267009, - STENCIL_TEST_ENABLE_EXT = 1000267010, - STENCIL_OP_EXT = 1000267011, - VERTEX_INPUT_EXT = 1000352000, - PATCH_CONTROL_POINTS_EXT = 1000377000, - RASTERIZER_DISCARD_ENABLE_EXT = 1000377001, - DEPTH_BIAS_ENABLE_EXT = 1000377002, - LOGIC_OP_EXT = 1000377003, - PRIMITIVE_RESTART_ENABLE_EXT = 1000377004, - COLOR_WRITE_ENABLE_EXT = 1000381000, -} - -FrontFace :: enum c.int { - COUNTER_CLOCKWISE = 0, - CLOCKWISE = 1, -} - -VertexInputRate :: enum c.int { - VERTEX = 0, - INSTANCE = 1, -} - -PrimitiveTopology :: enum c.int { - POINT_LIST = 0, - LINE_LIST = 1, - LINE_STRIP = 2, - TRIANGLE_LIST = 3, - TRIANGLE_STRIP = 4, - TRIANGLE_FAN = 5, - LINE_LIST_WITH_ADJACENCY = 6, - LINE_STRIP_WITH_ADJACENCY = 7, - TRIANGLE_LIST_WITH_ADJACENCY = 8, - TRIANGLE_STRIP_WITH_ADJACENCY = 9, - PATCH_LIST = 10, -} - -PolygonMode :: enum c.int { - FILL = 0, - LINE = 1, - POINT = 2, - FILL_RECTANGLE_NV = 1000153000, -} - -StencilOp :: enum c.int { - KEEP = 0, - ZERO = 1, - REPLACE = 2, - INCREMENT_AND_CLAMP = 3, - DECREMENT_AND_CLAMP = 4, - INVERT = 5, - INCREMENT_AND_WRAP = 6, - DECREMENT_AND_WRAP = 7, -} - -LogicOp :: enum c.int { - CLEAR = 0, - AND = 1, - AND_REVERSE = 2, - COPY = 3, - AND_INVERTED = 4, - NO_OP = 5, - XOR = 6, - OR = 7, - NOR = 8, - EQUIVALENT = 9, - INVERT = 10, - OR_REVERSE = 11, - COPY_INVERTED = 12, - OR_INVERTED = 13, - NAND = 14, - SET = 15, -} - -BorderColor :: enum c.int { - FLOAT_TRANSPARENT_BLACK = 0, - INT_TRANSPARENT_BLACK = 1, - FLOAT_OPAQUE_BLACK = 2, - INT_OPAQUE_BLACK = 3, - FLOAT_OPAQUE_WHITE = 4, - INT_OPAQUE_WHITE = 5, - FLOAT_CUSTOM_EXT = 1000287003, - INT_CUSTOM_EXT = 1000287004, -} - -Filter :: enum c.int { - NEAREST = 0, - LINEAR = 1, - CUBIC_IMG = 1000015000, - CUBIC_EXT = CUBIC_IMG, -} - -SamplerAddressMode :: enum c.int { - REPEAT = 0, - MIRRORED_REPEAT = 1, - CLAMP_TO_EDGE = 2, - CLAMP_TO_BORDER = 3, - MIRROR_CLAMP_TO_EDGE = 4, - MIRROR_CLAMP_TO_EDGE_KHR = MIRROR_CLAMP_TO_EDGE, -} - -SamplerMipmapMode :: enum c.int { - NEAREST = 0, - LINEAR = 1, -} - -DescriptorType :: enum c.int { - SAMPLER = 0, - COMBINED_IMAGE_SAMPLER = 1, - SAMPLED_IMAGE = 2, - STORAGE_IMAGE = 3, - UNIFORM_TEXEL_BUFFER = 4, - STORAGE_TEXEL_BUFFER = 5, - UNIFORM_BUFFER = 6, - STORAGE_BUFFER = 7, - UNIFORM_BUFFER_DYNAMIC = 8, - STORAGE_BUFFER_DYNAMIC = 9, - INPUT_ATTACHMENT = 10, - INLINE_UNIFORM_BLOCK_EXT = 1000138000, - ACCELERATION_STRUCTURE_KHR = 1000150000, - ACCELERATION_STRUCTURE_NV = 1000165000, - MUTABLE_VALVE = 1000351000, -} - -AttachmentLoadOp :: enum c.int { - LOAD = 0, - CLEAR = 1, - DONT_CARE = 2, - NONE_EXT = 1000400000, -} - -AttachmentStoreOp :: enum c.int { - STORE = 0, - DONT_CARE = 1, - NONE_EXT = 1000301000, - NONE_QCOM = NONE_EXT, -} - -PipelineBindPoint :: enum c.int { - GRAPHICS = 0, - COMPUTE = 1, - RAY_TRACING_KHR = 1000165000, - SUBPASS_SHADING_HUAWEI = 1000369003, - RAY_TRACING_NV = RAY_TRACING_KHR, -} - -CommandBufferLevel :: enum c.int { - PRIMARY = 0, - SECONDARY = 1, -} - -IndexType :: enum c.int { - UINT16 = 0, - UINT32 = 1, - NONE_KHR = 1000165000, - UINT8_EXT = 1000265000, - NONE_NV = NONE_KHR, -} - -SubpassContents :: enum c.int { - INLINE = 0, - SECONDARY_COMMAND_BUFFERS = 1, -} - -AccessFlags :: distinct bit_set[AccessFlag; Flags] -AccessFlag :: enum Flags { - INDIRECT_COMMAND_READ = 0, - INDEX_READ = 1, - VERTEX_ATTRIBUTE_READ = 2, - UNIFORM_READ = 3, - INPUT_ATTACHMENT_READ = 4, - SHADER_READ = 5, - SHADER_WRITE = 6, - COLOR_ATTACHMENT_READ = 7, - COLOR_ATTACHMENT_WRITE = 8, - DEPTH_STENCIL_ATTACHMENT_READ = 9, - DEPTH_STENCIL_ATTACHMENT_WRITE = 10, - TRANSFER_READ = 11, - TRANSFER_WRITE = 12, - HOST_READ = 13, - HOST_WRITE = 14, - MEMORY_READ = 15, - MEMORY_WRITE = 16, - TRANSFORM_FEEDBACK_WRITE_EXT = 25, - TRANSFORM_FEEDBACK_COUNTER_READ_EXT = 26, - TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT = 27, - CONDITIONAL_RENDERING_READ_EXT = 20, - COLOR_ATTACHMENT_READ_NONCOHERENT_EXT = 19, - ACCELERATION_STRUCTURE_READ_KHR = 21, - ACCELERATION_STRUCTURE_WRITE_KHR = 22, - FRAGMENT_DENSITY_MAP_READ_EXT = 24, - FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR = 23, - COMMAND_PREPROCESS_READ_NV = 17, - COMMAND_PREPROCESS_WRITE_NV = 18, - SHADING_RATE_IMAGE_READ_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR, - ACCELERATION_STRUCTURE_READ_NV = ACCELERATION_STRUCTURE_READ_KHR, - ACCELERATION_STRUCTURE_WRITE_NV = ACCELERATION_STRUCTURE_WRITE_KHR, -} - -AccessFlags_NONE_KHR :: AccessFlags{} - - -ImageAspectFlags :: distinct bit_set[ImageAspectFlag; Flags] -ImageAspectFlag :: enum Flags { - COLOR = 0, - DEPTH = 1, - STENCIL = 2, - METADATA = 3, - PLANE_0 = 4, - PLANE_1 = 5, - PLANE_2 = 6, - MEMORY_PLANE_0_EXT = 7, - MEMORY_PLANE_1_EXT = 8, - MEMORY_PLANE_2_EXT = 9, - MEMORY_PLANE_3_EXT = 10, - PLANE_0_KHR = PLANE_0, - PLANE_1_KHR = PLANE_1, - PLANE_2_KHR = PLANE_2, -} - -FormatFeatureFlags :: distinct bit_set[FormatFeatureFlag; Flags] -FormatFeatureFlag :: enum Flags { - SAMPLED_IMAGE = 0, - STORAGE_IMAGE = 1, - STORAGE_IMAGE_ATOMIC = 2, - UNIFORM_TEXEL_BUFFER = 3, - STORAGE_TEXEL_BUFFER = 4, - STORAGE_TEXEL_BUFFER_ATOMIC = 5, - VERTEX_BUFFER = 6, - COLOR_ATTACHMENT = 7, - COLOR_ATTACHMENT_BLEND = 8, - DEPTH_STENCIL_ATTACHMENT = 9, - BLIT_SRC = 10, - BLIT_DST = 11, - SAMPLED_IMAGE_FILTER_LINEAR = 12, - TRANSFER_SRC = 14, - TRANSFER_DST = 15, - MIDPOINT_CHROMA_SAMPLES = 17, - SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER = 18, - SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER = 19, - SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT = 20, - SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE = 21, - DISJOINT = 22, - COSITED_CHROMA_SAMPLES = 23, - SAMPLED_IMAGE_FILTER_MINMAX = 16, - SAMPLED_IMAGE_FILTER_CUBIC_IMG = 13, - VIDEO_DECODE_OUTPUT_KHR = 25, - VIDEO_DECODE_DPB_KHR = 26, - ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR = 29, - FRAGMENT_DENSITY_MAP_EXT = 24, - FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 30, - VIDEO_ENCODE_INPUT_KHR = 27, - VIDEO_ENCODE_DPB_KHR = 28, - TRANSFER_SRC_KHR = TRANSFER_SRC, - TRANSFER_DST_KHR = TRANSFER_DST, - SAMPLED_IMAGE_FILTER_MINMAX_EXT = SAMPLED_IMAGE_FILTER_MINMAX, - MIDPOINT_CHROMA_SAMPLES_KHR = MIDPOINT_CHROMA_SAMPLES, - SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER, - SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER, - SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT, - SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_KHR = SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE, - DISJOINT_KHR = DISJOINT, - COSITED_CHROMA_SAMPLES_KHR = COSITED_CHROMA_SAMPLES, - SAMPLED_IMAGE_FILTER_CUBIC_EXT = SAMPLED_IMAGE_FILTER_CUBIC_IMG, -} - -ImageCreateFlags :: distinct bit_set[ImageCreateFlag; Flags] -ImageCreateFlag :: enum Flags { - SPARSE_BINDING = 0, - SPARSE_RESIDENCY = 1, - SPARSE_ALIASED = 2, - MUTABLE_FORMAT = 3, - CUBE_COMPATIBLE = 4, - ALIAS = 10, - SPLIT_INSTANCE_BIND_REGIONS = 6, - D2_ARRAY_COMPATIBLE = 5, - BLOCK_TEXEL_VIEW_COMPATIBLE = 7, - EXTENDED_USAGE = 8, - PROTECTED = 11, - DISJOINT = 9, - CORNER_SAMPLED_NV = 13, - SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_EXT = 12, - SUBSAMPLED_EXT = 14, - SPLIT_INSTANCE_BIND_REGIONS_KHR = SPLIT_INSTANCE_BIND_REGIONS, - D2_ARRAY_COMPATIBLE_KHR = D2_ARRAY_COMPATIBLE, - BLOCK_TEXEL_VIEW_COMPATIBLE_KHR = BLOCK_TEXEL_VIEW_COMPATIBLE, - EXTENDED_USAGE_KHR = EXTENDED_USAGE, - DISJOINT_KHR = DISJOINT, - ALIAS_KHR = ALIAS, -} - -SampleCountFlags :: distinct bit_set[SampleCountFlag; Flags] -SampleCountFlag :: enum Flags { - _1 = 0, - _2 = 1, - _4 = 2, - _8 = 3, - _16 = 4, - _32 = 5, - _64 = 6, -} - -ImageUsageFlags :: distinct bit_set[ImageUsageFlag; Flags] -ImageUsageFlag :: enum Flags { - TRANSFER_SRC = 0, - TRANSFER_DST = 1, - SAMPLED = 2, - STORAGE = 3, - COLOR_ATTACHMENT = 4, - DEPTH_STENCIL_ATTACHMENT = 5, - TRANSIENT_ATTACHMENT = 6, - INPUT_ATTACHMENT = 7, - VIDEO_DECODE_DST_KHR = 10, - VIDEO_DECODE_SRC_KHR = 11, - VIDEO_DECODE_DPB_KHR = 12, - FRAGMENT_DENSITY_MAP_EXT = 9, - FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 8, - VIDEO_ENCODE_DST_KHR = 13, - VIDEO_ENCODE_SRC_KHR = 14, - VIDEO_ENCODE_DPB_KHR = 15, - INVOCATION_MASK_HUAWEI = 18, - SHADING_RATE_IMAGE_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_KHR, -} - -MemoryHeapFlags :: distinct bit_set[MemoryHeapFlag; Flags] -MemoryHeapFlag :: enum Flags { - DEVICE_LOCAL = 0, - MULTI_INSTANCE = 1, - MULTI_INSTANCE_KHR = MULTI_INSTANCE, -} - -MemoryPropertyFlags :: distinct bit_set[MemoryPropertyFlag; Flags] -MemoryPropertyFlag :: enum Flags { - DEVICE_LOCAL = 0, - HOST_VISIBLE = 1, - HOST_COHERENT = 2, - HOST_CACHED = 3, - LAZILY_ALLOCATED = 4, - PROTECTED = 5, - DEVICE_COHERENT_AMD = 6, - DEVICE_UNCACHED_AMD = 7, - RDMA_CAPABLE_NV = 8, -} - -QueueFlags :: distinct bit_set[QueueFlag; Flags] -QueueFlag :: enum Flags { - GRAPHICS = 0, - COMPUTE = 1, - TRANSFER = 2, - SPARSE_BINDING = 3, - PROTECTED = 4, - VIDEO_DECODE_KHR = 5, - VIDEO_ENCODE_KHR = 6, -} - -DeviceQueueCreateFlags :: distinct bit_set[DeviceQueueCreateFlag; Flags] -DeviceQueueCreateFlag :: enum Flags { - PROTECTED = 0, -} - -PipelineStageFlags :: distinct bit_set[PipelineStageFlag; Flags] -PipelineStageFlag :: enum Flags { - TOP_OF_PIPE = 0, - DRAW_INDIRECT = 1, - VERTEX_INPUT = 2, - VERTEX_SHADER = 3, - TESSELLATION_CONTROL_SHADER = 4, - TESSELLATION_EVALUATION_SHADER = 5, - GEOMETRY_SHADER = 6, - FRAGMENT_SHADER = 7, - EARLY_FRAGMENT_TESTS = 8, - LATE_FRAGMENT_TESTS = 9, - COLOR_ATTACHMENT_OUTPUT = 10, - COMPUTE_SHADER = 11, - TRANSFER = 12, - BOTTOM_OF_PIPE = 13, - HOST = 14, - ALL_GRAPHICS = 15, - ALL_COMMANDS = 16, - TRANSFORM_FEEDBACK_EXT = 24, - CONDITIONAL_RENDERING_EXT = 18, - ACCELERATION_STRUCTURE_BUILD_KHR = 25, - RAY_TRACING_SHADER_KHR = 21, - TASK_SHADER_NV = 19, - MESH_SHADER_NV = 20, - FRAGMENT_DENSITY_PROCESS_EXT = 23, - FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 22, - COMMAND_PREPROCESS_NV = 17, - SHADING_RATE_IMAGE_NV = FRAGMENT_SHADING_RATE_ATTACHMENT_KHR, - RAY_TRACING_SHADER_NV = RAY_TRACING_SHADER_KHR, - ACCELERATION_STRUCTURE_BUILD_NV = ACCELERATION_STRUCTURE_BUILD_KHR, -} - -PipelineStageFlags_NONE_KHR :: PipelineStageFlags{} - - -SparseMemoryBindFlags :: distinct bit_set[SparseMemoryBindFlag; Flags] -SparseMemoryBindFlag :: enum Flags { - METADATA = 0, -} - -SparseImageFormatFlags :: distinct bit_set[SparseImageFormatFlag; Flags] -SparseImageFormatFlag :: enum Flags { - SINGLE_MIPTAIL = 0, - ALIGNED_MIP_SIZE = 1, - NONSTANDARD_BLOCK_SIZE = 2, -} - -FenceCreateFlags :: distinct bit_set[FenceCreateFlag; Flags] -FenceCreateFlag :: enum Flags { - SIGNALED = 0, -} - -EventCreateFlags :: distinct bit_set[EventCreateFlag; Flags] -EventCreateFlag :: enum Flags { - DEVICE_ONLY_KHR = 0, -} - -QueryPipelineStatisticFlags :: distinct bit_set[QueryPipelineStatisticFlag; Flags] -QueryPipelineStatisticFlag :: enum Flags { - INPUT_ASSEMBLY_VERTICES = 0, - INPUT_ASSEMBLY_PRIMITIVES = 1, - VERTEX_SHADER_INVOCATIONS = 2, - GEOMETRY_SHADER_INVOCATIONS = 3, - GEOMETRY_SHADER_PRIMITIVES = 4, - CLIPPING_INVOCATIONS = 5, - CLIPPING_PRIMITIVES = 6, - FRAGMENT_SHADER_INVOCATIONS = 7, - TESSELLATION_CONTROL_SHADER_PATCHES = 8, - TESSELLATION_EVALUATION_SHADER_INVOCATIONS = 9, - COMPUTE_SHADER_INVOCATIONS = 10, -} - -QueryResultFlags :: distinct bit_set[QueryResultFlag; Flags] -QueryResultFlag :: enum Flags { - _64 = 0, - WAIT = 1, - WITH_AVAILABILITY = 2, - PARTIAL = 3, - WITH_STATUS_KHR = 4, -} - -BufferCreateFlags :: distinct bit_set[BufferCreateFlag; Flags] -BufferCreateFlag :: enum Flags { - SPARSE_BINDING = 0, - SPARSE_RESIDENCY = 1, - SPARSE_ALIASED = 2, - PROTECTED = 3, - DEVICE_ADDRESS_CAPTURE_REPLAY = 4, - DEVICE_ADDRESS_CAPTURE_REPLAY_EXT = DEVICE_ADDRESS_CAPTURE_REPLAY, - DEVICE_ADDRESS_CAPTURE_REPLAY_KHR = DEVICE_ADDRESS_CAPTURE_REPLAY, -} - -BufferUsageFlags :: distinct bit_set[BufferUsageFlag; Flags] -BufferUsageFlag :: enum Flags { - TRANSFER_SRC = 0, - TRANSFER_DST = 1, - UNIFORM_TEXEL_BUFFER = 2, - STORAGE_TEXEL_BUFFER = 3, - UNIFORM_BUFFER = 4, - STORAGE_BUFFER = 5, - INDEX_BUFFER = 6, - VERTEX_BUFFER = 7, - INDIRECT_BUFFER = 8, - SHADER_DEVICE_ADDRESS = 17, - VIDEO_DECODE_SRC_KHR = 13, - VIDEO_DECODE_DST_KHR = 14, - TRANSFORM_FEEDBACK_BUFFER_EXT = 11, - TRANSFORM_FEEDBACK_COUNTER_BUFFER_EXT = 12, - CONDITIONAL_RENDERING_EXT = 9, - ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR = 19, - ACCELERATION_STRUCTURE_STORAGE_KHR = 20, - SHADER_BINDING_TABLE_KHR = 10, - VIDEO_ENCODE_DST_KHR = 15, - VIDEO_ENCODE_SRC_KHR = 16, - RAY_TRACING_NV = SHADER_BINDING_TABLE_KHR, - SHADER_DEVICE_ADDRESS_EXT = SHADER_DEVICE_ADDRESS, - SHADER_DEVICE_ADDRESS_KHR = SHADER_DEVICE_ADDRESS, -} - -ImageViewCreateFlags :: distinct bit_set[ImageViewCreateFlag; Flags] -ImageViewCreateFlag :: enum Flags { - FRAGMENT_DENSITY_MAP_DYNAMIC_EXT = 0, - FRAGMENT_DENSITY_MAP_DEFERRED_EXT = 1, -} - -PipelineCacheCreateFlags :: distinct bit_set[PipelineCacheCreateFlag; Flags] -PipelineCacheCreateFlag :: enum Flags { - EXTERNALLY_SYNCHRONIZED_EXT = 0, -} - -ColorComponentFlags :: distinct bit_set[ColorComponentFlag; Flags] -ColorComponentFlag :: enum Flags { - R = 0, - G = 1, - B = 2, - A = 3, -} - -PipelineCreateFlags :: distinct bit_set[PipelineCreateFlag; Flags] -PipelineCreateFlag :: enum Flags { - DISABLE_OPTIMIZATION = 0, - ALLOW_DERIVATIVES = 1, - DERIVATIVE = 2, - VIEW_INDEX_FROM_DEVICE_INDEX = 3, - DISPATCH_BASE = 4, - RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_KHR = 14, - RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_KHR = 15, - RAY_TRACING_NO_NULL_MISS_SHADERS_KHR = 16, - RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_KHR = 17, - RAY_TRACING_SKIP_TRIANGLES_KHR = 12, - RAY_TRACING_SKIP_AABBS_KHR = 13, - RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_KHR = 19, - DEFER_COMPILE_NV = 5, - CAPTURE_STATISTICS_KHR = 6, - CAPTURE_INTERNAL_REPRESENTATIONS_KHR = 7, - INDIRECT_BINDABLE_NV = 18, - LIBRARY_KHR = 11, - FAIL_ON_PIPELINE_COMPILE_REQUIRED_EXT = 8, - EARLY_RETURN_ON_FAILURE_EXT = 9, - RAY_TRACING_ALLOW_MOTION_NV = 20, - VIEW_INDEX_FROM_DEVICE_INDEX_KHR = VIEW_INDEX_FROM_DEVICE_INDEX, - DISPATCH_BASE_KHR = DISPATCH_BASE, -} - -PipelineShaderStageCreateFlags :: distinct bit_set[PipelineShaderStageCreateFlag; Flags] -PipelineShaderStageCreateFlag :: enum Flags { - ALLOW_VARYING_SUBGROUP_SIZE_EXT = 0, - REQUIRE_FULL_SUBGROUPS_EXT = 1, -} - -ShaderStageFlags :: distinct bit_set[ShaderStageFlag; Flags] -ShaderStageFlag :: enum Flags { - VERTEX = 0, - TESSELLATION_CONTROL = 1, - TESSELLATION_EVALUATION = 2, - GEOMETRY = 3, - FRAGMENT = 4, - COMPUTE = 5, - RAYGEN_KHR = 8, - ANY_HIT_KHR = 9, - CLOSEST_HIT_KHR = 10, - MISS_KHR = 11, - INTERSECTION_KHR = 12, - CALLABLE_KHR = 13, - TASK_NV = 6, - MESH_NV = 7, - SUBPASS_SHADING_HUAWEI = 14, - RAYGEN_NV = RAYGEN_KHR, - ANY_HIT_NV = ANY_HIT_KHR, - CLOSEST_HIT_NV = CLOSEST_HIT_KHR, - MISS_NV = MISS_KHR, - INTERSECTION_NV = INTERSECTION_KHR, - CALLABLE_NV = CALLABLE_KHR, - _MAX = 31, // Needed for the *_ALL bit set -} - -ShaderStageFlags_ALL_GRAPHICS :: ShaderStageFlags{.VERTEX, .TESSELLATION_CONTROL, .TESSELLATION_EVALUATION, .GEOMETRY, .FRAGMENT} -ShaderStageFlags_ALL :: ShaderStageFlags{.VERTEX, .TESSELLATION_CONTROL, .TESSELLATION_EVALUATION, .GEOMETRY, .FRAGMENT, .COMPUTE, .TASK_NV, .MESH_NV, .RAYGEN_KHR, .ANY_HIT_KHR, .CLOSEST_HIT_KHR, .MISS_KHR, .INTERSECTION_KHR, .CALLABLE_KHR, .SUBPASS_SHADING_HUAWEI, ShaderStageFlag(15), ShaderStageFlag(16), ShaderStageFlag(17), ShaderStageFlag(18), ShaderStageFlag(19), ShaderStageFlag(20), ShaderStageFlag(21), ShaderStageFlag(22), ShaderStageFlag(23), ShaderStageFlag(24), ShaderStageFlag(25), ShaderStageFlag(26), ShaderStageFlag(27), ShaderStageFlag(28), ShaderStageFlag(29), ShaderStageFlag(30)} - - -CullModeFlags :: distinct bit_set[CullModeFlag; Flags] -CullModeFlag :: enum Flags { - FRONT = 0, - BACK = 1, -} - -CullModeFlags_NONE :: CullModeFlags{} -CullModeFlags_FRONT_AND_BACK :: CullModeFlags{.FRONT, .BACK} - - -SamplerCreateFlags :: distinct bit_set[SamplerCreateFlag; Flags] -SamplerCreateFlag :: enum Flags { - SUBSAMPLED_EXT = 0, - SUBSAMPLED_COARSE_RECONSTRUCTION_EXT = 1, -} - -DescriptorPoolCreateFlags :: distinct bit_set[DescriptorPoolCreateFlag; Flags] -DescriptorPoolCreateFlag :: enum Flags { - FREE_DESCRIPTOR_SET = 0, - UPDATE_AFTER_BIND = 1, - HOST_ONLY_VALVE = 2, - UPDATE_AFTER_BIND_EXT = UPDATE_AFTER_BIND, -} - -DescriptorSetLayoutCreateFlags :: distinct bit_set[DescriptorSetLayoutCreateFlag; Flags] -DescriptorSetLayoutCreateFlag :: enum Flags { - UPDATE_AFTER_BIND_POOL = 1, - PUSH_DESCRIPTOR_KHR = 0, - HOST_ONLY_POOL_VALVE = 2, - UPDATE_AFTER_BIND_POOL_EXT = UPDATE_AFTER_BIND_POOL, -} - -AttachmentDescriptionFlags :: distinct bit_set[AttachmentDescriptionFlag; Flags] -AttachmentDescriptionFlag :: enum Flags { - MAY_ALIAS = 0, -} - -DependencyFlags :: distinct bit_set[DependencyFlag; Flags] -DependencyFlag :: enum Flags { - BY_REGION = 0, - DEVICE_GROUP = 2, - VIEW_LOCAL = 1, - VIEW_LOCAL_KHR = VIEW_LOCAL, - DEVICE_GROUP_KHR = DEVICE_GROUP, -} - -FramebufferCreateFlags :: distinct bit_set[FramebufferCreateFlag; Flags] -FramebufferCreateFlag :: enum Flags { - IMAGELESS = 0, - IMAGELESS_KHR = IMAGELESS, -} - -RenderPassCreateFlags :: distinct bit_set[RenderPassCreateFlag; Flags] -RenderPassCreateFlag :: enum Flags { - TRANSFORM_QCOM = 1, -} - -SubpassDescriptionFlags :: distinct bit_set[SubpassDescriptionFlag; Flags] -SubpassDescriptionFlag :: enum Flags { - PER_VIEW_ATTRIBUTES_NVX = 0, - PER_VIEW_POSITION_X_ONLY_NVX = 1, - FRAGMENT_REGION_QCOM = 2, - SHADER_RESOLVE_QCOM = 3, -} - -CommandPoolCreateFlags :: distinct bit_set[CommandPoolCreateFlag; Flags] -CommandPoolCreateFlag :: enum Flags { - TRANSIENT = 0, - RESET_COMMAND_BUFFER = 1, - PROTECTED = 2, -} - -CommandPoolResetFlags :: distinct bit_set[CommandPoolResetFlag; Flags] -CommandPoolResetFlag :: enum Flags { - RELEASE_RESOURCES = 0, -} - -CommandBufferUsageFlags :: distinct bit_set[CommandBufferUsageFlag; Flags] -CommandBufferUsageFlag :: enum Flags { - ONE_TIME_SUBMIT = 0, - RENDER_PASS_CONTINUE = 1, - SIMULTANEOUS_USE = 2, -} - -QueryControlFlags :: distinct bit_set[QueryControlFlag; Flags] -QueryControlFlag :: enum Flags { - PRECISE = 0, -} - -CommandBufferResetFlags :: distinct bit_set[CommandBufferResetFlag; Flags] -CommandBufferResetFlag :: enum Flags { - RELEASE_RESOURCES = 0, -} - -StencilFaceFlags :: distinct bit_set[StencilFaceFlag; Flags] -StencilFaceFlag :: enum Flags { - FRONT = 0, - BACK = 1, -} - -StencilFaceFlags_FRONT_AND_BACK :: StencilFaceFlags{.FRONT, .BACK} - - -PointClippingBehavior :: enum c.int { - ALL_CLIP_PLANES = 0, - USER_CLIP_PLANES_ONLY = 1, - ALL_CLIP_PLANES_KHR = ALL_CLIP_PLANES, - USER_CLIP_PLANES_ONLY_KHR = USER_CLIP_PLANES_ONLY, -} - -TessellationDomainOrigin :: enum c.int { - UPPER_LEFT = 0, - LOWER_LEFT = 1, - UPPER_LEFT_KHR = UPPER_LEFT, - LOWER_LEFT_KHR = LOWER_LEFT, -} - -SamplerYcbcrModelConversion :: enum c.int { - RGB_IDENTITY = 0, - YCBCR_IDENTITY = 1, - YCBCR_709 = 2, - YCBCR_601 = 3, - YCBCR_2020 = 4, - RGB_IDENTITY_KHR = RGB_IDENTITY, - YCBCR_IDENTITY_KHR = YCBCR_IDENTITY, - YCBCR_709_KHR = YCBCR_709, - YCBCR_601_KHR = YCBCR_601, - YCBCR_2020_KHR = YCBCR_2020, -} - -SamplerYcbcrRange :: enum c.int { - ITU_FULL = 0, - ITU_NARROW = 1, - ITU_FULL_KHR = ITU_FULL, - ITU_NARROW_KHR = ITU_NARROW, -} - -ChromaLocation :: enum c.int { - COSITED_EVEN = 0, - MIDPOINT = 1, - COSITED_EVEN_KHR = COSITED_EVEN, - MIDPOINT_KHR = MIDPOINT, -} - -DescriptorUpdateTemplateType :: enum c.int { - DESCRIPTOR_SET = 0, - PUSH_DESCRIPTORS_KHR = 1, - DESCRIPTOR_SET_KHR = DESCRIPTOR_SET, -} - SubgroupFeatureFlags :: distinct bit_set[SubgroupFeatureFlag; Flags] SubgroupFeatureFlag :: enum Flags { BASIC = 0, @@ -2035,235 +2737,27 @@ SubgroupFeatureFlag :: enum Flags { PARTITIONED_NV = 8, } -PeerMemoryFeatureFlags :: distinct bit_set[PeerMemoryFeatureFlag; Flags] -PeerMemoryFeatureFlag :: enum Flags { - COPY_SRC = 0, - COPY_DST = 1, - GENERIC_SRC = 2, - GENERIC_DST = 3, - COPY_SRC_KHR = COPY_SRC, - COPY_DST_KHR = COPY_DST, - GENERIC_SRC_KHR = GENERIC_SRC, - GENERIC_DST_KHR = GENERIC_DST, +SubmitFlagsKHR :: distinct bit_set[SubmitFlagKHR; Flags] +SubmitFlagKHR :: enum Flags { + PROTECTED = 0, } -MemoryAllocateFlags :: distinct bit_set[MemoryAllocateFlag; Flags] -MemoryAllocateFlag :: enum Flags { - DEVICE_MASK = 0, - DEVICE_ADDRESS = 1, - DEVICE_ADDRESS_CAPTURE_REPLAY = 2, - DEVICE_MASK_KHR = DEVICE_MASK, - DEVICE_ADDRESS_KHR = DEVICE_ADDRESS, - DEVICE_ADDRESS_CAPTURE_REPLAY_KHR = DEVICE_ADDRESS_CAPTURE_REPLAY, +SubpassContents :: enum c.int { + INLINE = 0, + SECONDARY_COMMAND_BUFFERS = 1, } -ExternalMemoryHandleTypeFlags :: distinct bit_set[ExternalMemoryHandleTypeFlag; Flags] -ExternalMemoryHandleTypeFlag :: enum Flags { - OPAQUE_FD = 0, - OPAQUE_WIN32 = 1, - OPAQUE_WIN32_KMT = 2, - D3D11_TEXTURE = 3, - D3D11_TEXTURE_KMT = 4, - D3D12_HEAP = 5, - D3D12_RESOURCE = 6, - DMA_BUF_EXT = 9, - ANDROID_HARDWARE_BUFFER_ANDROID = 10, - HOST_ALLOCATION_EXT = 7, - HOST_MAPPED_FOREIGN_MEMORY_EXT = 8, - ZIRCON_VMO_FUCHSIA = 11, - RDMA_ADDRESS_NV = 12, - OPAQUE_FD_KHR = OPAQUE_FD, - OPAQUE_WIN32_KHR = OPAQUE_WIN32, - OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, - D3D11_TEXTURE_KHR = D3D11_TEXTURE, - D3D11_TEXTURE_KMT_KHR = D3D11_TEXTURE_KMT, - D3D12_HEAP_KHR = D3D12_HEAP, - D3D12_RESOURCE_KHR = D3D12_RESOURCE, +SubpassDescriptionFlags :: distinct bit_set[SubpassDescriptionFlag; Flags] +SubpassDescriptionFlag :: enum Flags { + PER_VIEW_ATTRIBUTES_NVX = 0, + PER_VIEW_POSITION_X_ONLY_NVX = 1, + FRAGMENT_REGION_QCOM = 2, + SHADER_RESOLVE_QCOM = 3, } -ExternalMemoryFeatureFlags :: distinct bit_set[ExternalMemoryFeatureFlag; Flags] -ExternalMemoryFeatureFlag :: enum Flags { - DEDICATED_ONLY = 0, - EXPORTABLE = 1, - IMPORTABLE = 2, - DEDICATED_ONLY_KHR = DEDICATED_ONLY, - EXPORTABLE_KHR = EXPORTABLE, - IMPORTABLE_KHR = IMPORTABLE, -} - -ExternalFenceHandleTypeFlags :: distinct bit_set[ExternalFenceHandleTypeFlag; Flags] -ExternalFenceHandleTypeFlag :: enum Flags { - OPAQUE_FD = 0, - OPAQUE_WIN32 = 1, - OPAQUE_WIN32_KMT = 2, - SYNC_FD = 3, - OPAQUE_FD_KHR = OPAQUE_FD, - OPAQUE_WIN32_KHR = OPAQUE_WIN32, - OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, - SYNC_FD_KHR = SYNC_FD, -} - -ExternalFenceFeatureFlags :: distinct bit_set[ExternalFenceFeatureFlag; Flags] -ExternalFenceFeatureFlag :: enum Flags { - EXPORTABLE = 0, - IMPORTABLE = 1, - EXPORTABLE_KHR = EXPORTABLE, - IMPORTABLE_KHR = IMPORTABLE, -} - -FenceImportFlags :: distinct bit_set[FenceImportFlag; Flags] -FenceImportFlag :: enum Flags { - TEMPORARY = 0, - TEMPORARY_KHR = TEMPORARY, -} - -SemaphoreImportFlags :: distinct bit_set[SemaphoreImportFlag; Flags] -SemaphoreImportFlag :: enum Flags { - TEMPORARY = 0, - TEMPORARY_KHR = TEMPORARY, -} - -ExternalSemaphoreHandleTypeFlags :: distinct bit_set[ExternalSemaphoreHandleTypeFlag; Flags] -ExternalSemaphoreHandleTypeFlag :: enum Flags { - OPAQUE_FD = 0, - OPAQUE_WIN32 = 1, - OPAQUE_WIN32_KMT = 2, - D3D12_FENCE = 3, - SYNC_FD = 4, - ZIRCON_EVENT_FUCHSIA = 7, - D3D11_FENCE = D3D12_FENCE, - OPAQUE_FD_KHR = OPAQUE_FD, - OPAQUE_WIN32_KHR = OPAQUE_WIN32, - OPAQUE_WIN32_KMT_KHR = OPAQUE_WIN32_KMT, - D3D12_FENCE_KHR = D3D12_FENCE, - SYNC_FD_KHR = SYNC_FD, -} - -ExternalSemaphoreFeatureFlags :: distinct bit_set[ExternalSemaphoreFeatureFlag; Flags] -ExternalSemaphoreFeatureFlag :: enum Flags { - EXPORTABLE = 0, - IMPORTABLE = 1, - EXPORTABLE_KHR = EXPORTABLE, - IMPORTABLE_KHR = IMPORTABLE, -} - -DriverId :: enum c.int { - AMD_PROPRIETARY = 1, - AMD_OPEN_SOURCE = 2, - MESA_RADV = 3, - NVIDIA_PROPRIETARY = 4, - INTEL_PROPRIETARY_WINDOWS = 5, - INTEL_OPEN_SOURCE_MESA = 6, - IMAGINATION_PROPRIETARY = 7, - QUALCOMM_PROPRIETARY = 8, - ARM_PROPRIETARY = 9, - GOOGLE_SWIFTSHADER = 10, - GGP_PROPRIETARY = 11, - BROADCOM_PROPRIETARY = 12, - MESA_LLVMPIPE = 13, - MOLTENVK = 14, - COREAVI_PROPRIETARY = 15, - JUICE_PROPRIETARY = 16, - VERISILICON_PROPRIETARY = 17, - AMD_PROPRIETARY_KHR = AMD_PROPRIETARY, - AMD_OPEN_SOURCE_KHR = AMD_OPEN_SOURCE, - MESA_RADV_KHR = MESA_RADV, - NVIDIA_PROPRIETARY_KHR = NVIDIA_PROPRIETARY, - INTEL_PROPRIETARY_WINDOWS_KHR = INTEL_PROPRIETARY_WINDOWS, - INTEL_OPEN_SOURCE_MESA_KHR = INTEL_OPEN_SOURCE_MESA, - IMAGINATION_PROPRIETARY_KHR = IMAGINATION_PROPRIETARY, - QUALCOMM_PROPRIETARY_KHR = QUALCOMM_PROPRIETARY, - ARM_PROPRIETARY_KHR = ARM_PROPRIETARY, - GOOGLE_SWIFTSHADER_KHR = GOOGLE_SWIFTSHADER, - GGP_PROPRIETARY_KHR = GGP_PROPRIETARY, - BROADCOM_PROPRIETARY_KHR = BROADCOM_PROPRIETARY, -} - -ShaderFloatControlsIndependence :: enum c.int { - _32_BIT_ONLY = 0, - ALL = 1, - NONE = 2, - _32_BIT_ONLY_KHR = _32_BIT_ONLY, - ALL_KHR = ALL, -} - -SamplerReductionMode :: enum c.int { - WEIGHTED_AVERAGE = 0, - MIN = 1, - MAX = 2, - WEIGHTED_AVERAGE_EXT = WEIGHTED_AVERAGE, - MIN_EXT = MIN, - MAX_EXT = MAX, -} - -SemaphoreType :: enum c.int { - BINARY = 0, - TIMELINE = 1, - BINARY_KHR = BINARY, - TIMELINE_KHR = TIMELINE, -} - -ResolveModeFlags :: distinct bit_set[ResolveModeFlag; Flags] -ResolveModeFlag :: enum Flags { - SAMPLE_ZERO = 0, - AVERAGE = 1, - MIN = 2, - MAX = 3, - SAMPLE_ZERO_KHR = SAMPLE_ZERO, - AVERAGE_KHR = AVERAGE, - MIN_KHR = MIN, - MAX_KHR = MAX, -} - -ResolveModeFlags_NONE :: ResolveModeFlags{} - - -DescriptorBindingFlags :: distinct bit_set[DescriptorBindingFlag; Flags] -DescriptorBindingFlag :: enum Flags { - UPDATE_AFTER_BIND = 0, - UPDATE_UNUSED_WHILE_PENDING = 1, - PARTIALLY_BOUND = 2, - VARIABLE_DESCRIPTOR_COUNT = 3, - UPDATE_AFTER_BIND_EXT = UPDATE_AFTER_BIND, - UPDATE_UNUSED_WHILE_PENDING_EXT = UPDATE_UNUSED_WHILE_PENDING, - PARTIALLY_BOUND_EXT = PARTIALLY_BOUND, - VARIABLE_DESCRIPTOR_COUNT_EXT = VARIABLE_DESCRIPTOR_COUNT, -} - -SemaphoreWaitFlags :: distinct bit_set[SemaphoreWaitFlag; Flags] -SemaphoreWaitFlag :: enum Flags { - ANY = 0, - ANY_KHR = ANY, -} - -PresentModeKHR :: enum c.int { - IMMEDIATE = 0, - MAILBOX = 1, - FIFO = 2, - FIFO_RELAXED = 3, - SHARED_DEMAND_REFRESH = 1000111000, - SHARED_CONTINUOUS_REFRESH = 1000111001, -} - -ColorSpaceKHR :: enum c.int { - SRGB_NONLINEAR = 0, - DISPLAY_P3_NONLINEAR_EXT = 1000104001, - EXTENDED_SRGB_LINEAR_EXT = 1000104002, - DISPLAY_P3_LINEAR_EXT = 1000104003, - DCI_P3_NONLINEAR_EXT = 1000104004, - BT709_LINEAR_EXT = 1000104005, - BT709_NONLINEAR_EXT = 1000104006, - BT2020_LINEAR_EXT = 1000104007, - HDR10_ST2084_EXT = 1000104008, - DOLBYVISION_EXT = 1000104009, - HDR10_HLG_EXT = 1000104010, - ADOBERGB_LINEAR_EXT = 1000104011, - ADOBERGB_NONLINEAR_EXT = 1000104012, - PASS_THROUGH_EXT = 1000104013, - EXTENDED_SRGB_NONLINEAR_EXT = 1000104014, - DISPLAY_NATIVE_AMD = 1000213000, - COLORSPACE_SRGB_NONLINEAR = SRGB_NONLINEAR, - DCI_P3_LINEAR_EXT = DISPLAY_P3_LINEAR_EXT, +SurfaceCounterFlagsEXT :: distinct bit_set[SurfaceCounterFlagEXT; Flags] +SurfaceCounterFlagEXT :: enum Flags { + VBLANK = 0, } SurfaceTransformFlagsKHR :: distinct bit_set[SurfaceTransformFlagKHR; Flags] @@ -2279,14 +2773,6 @@ SurfaceTransformFlagKHR :: enum Flags { INHERIT = 8, } -CompositeAlphaFlagsKHR :: distinct bit_set[CompositeAlphaFlagKHR; Flags] -CompositeAlphaFlagKHR :: enum Flags { - OPAQUE = 0, - PRE_MULTIPLIED = 1, - POST_MULTIPLIED = 2, - INHERIT = 3, -} - SwapchainCreateFlagsKHR :: distinct bit_set[SwapchainCreateFlagKHR; Flags] SwapchainCreateFlagKHR :: enum Flags { SPLIT_INSTANCE_BIND_REGIONS = 0, @@ -2294,354 +2780,19 @@ SwapchainCreateFlagKHR :: enum Flags { MUTABLE_FORMAT = 2, } -DeviceGroupPresentModeFlagsKHR :: distinct bit_set[DeviceGroupPresentModeFlagKHR; Flags] -DeviceGroupPresentModeFlagKHR :: enum Flags { - LOCAL = 0, - REMOTE = 1, - SUM = 2, - LOCAL_MULTI_DEVICE = 3, +SystemAllocationScope :: enum c.int { + COMMAND = 0, + OBJECT = 1, + CACHE = 2, + DEVICE = 3, + INSTANCE = 4, } -DisplayPlaneAlphaFlagsKHR :: distinct bit_set[DisplayPlaneAlphaFlagKHR; Flags] -DisplayPlaneAlphaFlagKHR :: enum Flags { - OPAQUE = 0, - GLOBAL = 1, - PER_PIXEL = 2, - PER_PIXEL_PREMULTIPLIED = 3, -} - -PerformanceCounterUnitKHR :: enum c.int { - GENERIC = 0, - PERCENTAGE = 1, - NANOSECONDS = 2, - BYTES = 3, - BYTES_PER_SECOND = 4, - KELVIN = 5, - WATTS = 6, - VOLTS = 7, - AMPS = 8, - HERTZ = 9, - CYCLES = 10, -} - -PerformanceCounterScopeKHR :: enum c.int { - COMMAND_BUFFER = 0, - RENDER_PASS = 1, - COMMAND = 2, - QUERY_SCOPE_COMMAND_BUFFER = COMMAND_BUFFER, - QUERY_SCOPE_RENDER_PASS = RENDER_PASS, - QUERY_SCOPE_COMMAND = COMMAND, -} - -PerformanceCounterStorageKHR :: enum c.int { - INT32 = 0, - INT64 = 1, - UINT32 = 2, - UINT64 = 3, - FLOAT32 = 4, - FLOAT64 = 5, -} - -PerformanceCounterDescriptionFlagsKHR :: distinct bit_set[PerformanceCounterDescriptionFlagKHR; Flags] -PerformanceCounterDescriptionFlagKHR :: enum Flags { - PERFORMANCE_IMPACTING = 0, - CONCURRENTLY_IMPACTED = 1, -} - -AcquireProfilingLockFlagsKHR :: distinct bit_set[AcquireProfilingLockFlagKHR; Flags] -AcquireProfilingLockFlagKHR :: enum Flags { -} - -FragmentShadingRateCombinerOpKHR :: enum c.int { - KEEP = 0, - REPLACE = 1, - MIN = 2, - MAX = 3, - MUL = 4, -} - -PipelineExecutableStatisticFormatKHR :: enum c.int { - BOOL32 = 0, - INT64 = 1, - UINT64 = 2, - FLOAT64 = 3, -} - -SubmitFlagsKHR :: distinct bit_set[SubmitFlagKHR; Flags] -SubmitFlagKHR :: enum Flags { - PROTECTED = 0, -} - -DebugReportObjectTypeEXT :: enum c.int { - UNKNOWN = 0, - INSTANCE = 1, - PHYSICAL_DEVICE = 2, - DEVICE = 3, - QUEUE = 4, - SEMAPHORE = 5, - COMMAND_BUFFER = 6, - FENCE = 7, - DEVICE_MEMORY = 8, - BUFFER = 9, - IMAGE = 10, - EVENT = 11, - QUERY_POOL = 12, - BUFFER_VIEW = 13, - IMAGE_VIEW = 14, - SHADER_MODULE = 15, - PIPELINE_CACHE = 16, - PIPELINE_LAYOUT = 17, - RENDER_PASS = 18, - PIPELINE = 19, - DESCRIPTOR_SET_LAYOUT = 20, - SAMPLER = 21, - DESCRIPTOR_POOL = 22, - DESCRIPTOR_SET = 23, - FRAMEBUFFER = 24, - COMMAND_POOL = 25, - SURFACE_KHR = 26, - SWAPCHAIN_KHR = 27, - DEBUG_REPORT_CALLBACK_EXT = 28, - DISPLAY_KHR = 29, - DISPLAY_MODE_KHR = 30, - VALIDATION_CACHE_EXT = 33, - SAMPLER_YCBCR_CONVERSION = 1000156000, - DESCRIPTOR_UPDATE_TEMPLATE = 1000085000, - CU_MODULE_NVX = 1000029000, - CU_FUNCTION_NVX = 1000029001, - ACCELERATION_STRUCTURE_KHR = 1000150000, - ACCELERATION_STRUCTURE_NV = 1000165000, - DEBUG_REPORT = DEBUG_REPORT_CALLBACK_EXT, - VALIDATION_CACHE = VALIDATION_CACHE_EXT, - DESCRIPTOR_UPDATE_TEMPLATE_KHR = DESCRIPTOR_UPDATE_TEMPLATE, - SAMPLER_YCBCR_CONVERSION_KHR = SAMPLER_YCBCR_CONVERSION, -} - -DebugReportFlagsEXT :: distinct bit_set[DebugReportFlagEXT; Flags] -DebugReportFlagEXT :: enum Flags { - INFORMATION = 0, - WARNING = 1, - PERFORMANCE_WARNING = 2, - ERROR = 3, - DEBUG = 4, -} - -RasterizationOrderAMD :: enum c.int { - STRICT = 0, - RELAXED = 1, -} - -ShaderInfoTypeAMD :: enum c.int { - STATISTICS = 0, - BINARY = 1, - DISASSEMBLY = 2, -} - -ExternalMemoryHandleTypeFlagsNV :: distinct bit_set[ExternalMemoryHandleTypeFlagNV; Flags] -ExternalMemoryHandleTypeFlagNV :: enum Flags { - OPAQUE_WIN32 = 0, - OPAQUE_WIN32_KMT = 1, - D3D11_IMAGE = 2, - D3D11_IMAGE_KMT = 3, -} - -ExternalMemoryFeatureFlagsNV :: distinct bit_set[ExternalMemoryFeatureFlagNV; Flags] -ExternalMemoryFeatureFlagNV :: enum Flags { - DEDICATED_ONLY = 0, - EXPORTABLE = 1, - IMPORTABLE = 2, -} - -ValidationCheckEXT :: enum c.int { - ALL = 0, - SHADERS = 1, -} - -ConditionalRenderingFlagsEXT :: distinct bit_set[ConditionalRenderingFlagEXT; Flags] -ConditionalRenderingFlagEXT :: enum Flags { - INVERTED = 0, -} - -SurfaceCounterFlagsEXT :: distinct bit_set[SurfaceCounterFlagEXT; Flags] -SurfaceCounterFlagEXT :: enum Flags { - VBLANK = 0, -} - -DisplayPowerStateEXT :: enum c.int { - OFF = 0, - SUSPEND = 1, - ON = 2, -} - -DeviceEventTypeEXT :: enum c.int { - DISPLAY_HOTPLUG = 0, -} - -DisplayEventTypeEXT :: enum c.int { - FIRST_PIXEL_OUT = 0, -} - -ViewportCoordinateSwizzleNV :: enum c.int { - POSITIVE_X = 0, - NEGATIVE_X = 1, - POSITIVE_Y = 2, - NEGATIVE_Y = 3, - POSITIVE_Z = 4, - NEGATIVE_Z = 5, - POSITIVE_W = 6, - NEGATIVE_W = 7, -} - -DiscardRectangleModeEXT :: enum c.int { - INCLUSIVE = 0, - EXCLUSIVE = 1, -} - -ConservativeRasterizationModeEXT :: enum c.int { - DISABLED = 0, - OVERESTIMATE = 1, - UNDERESTIMATE = 2, -} - -DebugUtilsMessageSeverityFlagsEXT :: distinct bit_set[DebugUtilsMessageSeverityFlagEXT; Flags] -DebugUtilsMessageSeverityFlagEXT :: enum Flags { - VERBOSE = 0, - INFO = 4, - WARNING = 8, - ERROR = 12, -} - -DebugUtilsMessageTypeFlagsEXT :: distinct bit_set[DebugUtilsMessageTypeFlagEXT; Flags] -DebugUtilsMessageTypeFlagEXT :: enum Flags { - GENERAL = 0, - VALIDATION = 1, - PERFORMANCE = 2, -} - -BlendOverlapEXT :: enum c.int { - UNCORRELATED = 0, - DISJOINT = 1, - CONJOINT = 2, -} - -CoverageModulationModeNV :: enum c.int { - NONE = 0, - RGB = 1, - ALPHA = 2, - RGBA = 3, -} - -ValidationCacheHeaderVersionEXT :: enum c.int { - ONE = 1, -} - -ShadingRatePaletteEntryNV :: enum c.int { - NO_INVOCATIONS = 0, - _16_INVOCATIONS_PER_PIXEL = 1, - _8_INVOCATIONS_PER_PIXEL = 2, - _4_INVOCATIONS_PER_PIXEL = 3, - _2_INVOCATIONS_PER_PIXEL = 4, - _1_INVOCATION_PER_PIXEL = 5, - _1_INVOCATION_PER_2X1_PIXELS = 6, - _1_INVOCATION_PER_1X2_PIXELS = 7, - _1_INVOCATION_PER_2X2_PIXELS = 8, - _1_INVOCATION_PER_4X2_PIXELS = 9, - _1_INVOCATION_PER_2X4_PIXELS = 10, - _1_INVOCATION_PER_4X4_PIXELS = 11, -} - -CoarseSampleOrderTypeNV :: enum c.int { - DEFAULT = 0, - CUSTOM = 1, - PIXEL_MAJOR = 2, - SAMPLE_MAJOR = 3, -} - -RayTracingShaderGroupTypeKHR :: enum c.int { - GENERAL = 0, - TRIANGLES_HIT_GROUP = 1, - PROCEDURAL_HIT_GROUP = 2, - GENERAL_NV = GENERAL, - TRIANGLES_HIT_GROUP_NV = TRIANGLES_HIT_GROUP, - PROCEDURAL_HIT_GROUP_NV = PROCEDURAL_HIT_GROUP, -} - -GeometryTypeKHR :: enum c.int { - TRIANGLES = 0, - AABBS = 1, - INSTANCES = 2, - TRIANGLES_NV = TRIANGLES, - AABBS_NV = AABBS, -} - -AccelerationStructureTypeKHR :: enum c.int { - TOP_LEVEL = 0, - BOTTOM_LEVEL = 1, - GENERIC = 2, - TOP_LEVEL_NV = TOP_LEVEL, - BOTTOM_LEVEL_NV = BOTTOM_LEVEL, -} - -CopyAccelerationStructureModeKHR :: enum c.int { - CLONE = 0, - COMPACT = 1, - SERIALIZE = 2, - DESERIALIZE = 3, - CLONE_NV = CLONE, - COMPACT_NV = COMPACT, -} - -AccelerationStructureMemoryRequirementsTypeNV :: enum c.int { - OBJECT = 0, - BUILD_SCRATCH = 1, - UPDATE_SCRATCH = 2, -} - -GeometryFlagsKHR :: distinct bit_set[GeometryFlagKHR; Flags] -GeometryFlagKHR :: enum Flags { - OPAQUE = 0, - NO_DUPLICATE_ANY_HIT_INVOCATION = 1, - OPAQUE_NV = OPAQUE, - NO_DUPLICATE_ANY_HIT_INVOCATION_NV = NO_DUPLICATE_ANY_HIT_INVOCATION, -} - -GeometryInstanceFlagsKHR :: distinct bit_set[GeometryInstanceFlagKHR; Flags] -GeometryInstanceFlagKHR :: enum Flags { - TRIANGLE_FACING_CULL_DISABLE = 0, - TRIANGLE_FLIP_FACING = 1, - FORCE_OPAQUE = 2, - FORCE_NO_OPAQUE = 3, - TRIANGLE_FRONT_COUNTERCLOCKWISE = TRIANGLE_FLIP_FACING, - TRIANGLE_CULL_DISABLE_NV = TRIANGLE_FACING_CULL_DISABLE, - TRIANGLE_FRONT_COUNTERCLOCKWISE_NV = TRIANGLE_FRONT_COUNTERCLOCKWISE, - FORCE_OPAQUE_NV = FORCE_OPAQUE, - FORCE_NO_OPAQUE_NV = FORCE_NO_OPAQUE, -} - -BuildAccelerationStructureFlagsKHR :: distinct bit_set[BuildAccelerationStructureFlagKHR; Flags] -BuildAccelerationStructureFlagKHR :: enum Flags { - ALLOW_UPDATE = 0, - ALLOW_COMPACTION = 1, - PREFER_FAST_TRACE = 2, - PREFER_FAST_BUILD = 3, - LOW_MEMORY = 4, - MOTION_NV = 5, - ALLOW_UPDATE_NV = ALLOW_UPDATE, - ALLOW_COMPACTION_NV = ALLOW_COMPACTION, - PREFER_FAST_TRACE_NV = PREFER_FAST_TRACE, - PREFER_FAST_BUILD_NV = PREFER_FAST_BUILD, - LOW_MEMORY_NV = LOW_MEMORY, -} - -QueueGlobalPriorityEXT :: enum c.int { - LOW = 128, - MEDIUM = 256, - HIGH = 512, - REALTIME = 1024, -} - -PipelineCompilerControlFlagsAMD :: distinct bit_set[PipelineCompilerControlFlagAMD; Flags] -PipelineCompilerControlFlagAMD :: enum Flags { +TessellationDomainOrigin :: enum c.int { + UPPER_LEFT = 0, + LOWER_LEFT = 1, + UPPER_LEFT_KHR = UPPER_LEFT, + LOWER_LEFT_KHR = LOWER_LEFT, } TimeDomainEXT :: enum c.int { @@ -2651,49 +2802,6 @@ TimeDomainEXT :: enum c.int { QUERY_PERFORMANCE_COUNTER = 3, } -MemoryOverallocationBehaviorAMD :: enum c.int { - DEFAULT = 0, - ALLOWED = 1, - DISALLOWED = 2, -} - -PipelineCreationFeedbackFlagsEXT :: distinct bit_set[PipelineCreationFeedbackFlagEXT; Flags] -PipelineCreationFeedbackFlagEXT :: enum Flags { - VALID = 0, - APPLICATION_PIPELINE_CACHE_HIT = 1, - BASE_PIPELINE_ACCELERATION = 2, -} - -PerformanceConfigurationTypeINTEL :: enum c.int { - PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0, -} - -QueryPoolSamplingModeINTEL :: enum c.int { - QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL = 0, -} - -PerformanceOverrideTypeINTEL :: enum c.int { - PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL = 0, - PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = 1, -} - -PerformanceParameterTypeINTEL :: enum c.int { - PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL = 0, - PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL = 1, -} - -PerformanceValueTypeINTEL :: enum c.int { - PERFORMANCE_VALUE_TYPE_UINT32_INTEL = 0, - PERFORMANCE_VALUE_TYPE_UINT64_INTEL = 1, - PERFORMANCE_VALUE_TYPE_FLOAT_INTEL = 2, - PERFORMANCE_VALUE_TYPE_BOOL_INTEL = 3, - PERFORMANCE_VALUE_TYPE_STRING_INTEL = 4, -} - -ShaderCorePropertiesFlagsAMD :: distinct bit_set[ShaderCorePropertiesFlagAMD; Flags] -ShaderCorePropertiesFlagAMD :: enum Flags { -} - ToolPurposeFlagsEXT :: distinct bit_set[ToolPurposeFlagEXT; Flags] ToolPurposeFlagEXT :: enum Flags { VALIDATION = 0, @@ -2705,12 +2813,13 @@ ToolPurposeFlagEXT :: enum Flags { DEBUG_MARKERS = 6, } -ValidationFeatureEnableEXT :: enum c.int { - GPU_ASSISTED = 0, - GPU_ASSISTED_RESERVE_BINDING_SLOT = 1, - BEST_PRACTICES = 2, - DEBUG_PRINTF = 3, - SYNCHRONIZATION_VALIDATION = 4, +ValidationCacheHeaderVersionEXT :: enum c.int { + ONE = 1, +} + +ValidationCheckEXT :: enum c.int { + ALL = 0, + SHADERS = 1, } ValidationFeatureDisableEXT :: enum c.int { @@ -2724,229 +2833,120 @@ ValidationFeatureDisableEXT :: enum c.int { SHADER_VALIDATION_CACHE = 7, } -ComponentTypeNV :: enum c.int { - FLOAT16 = 0, - FLOAT32 = 1, - FLOAT64 = 2, - SINT8 = 3, - SINT16 = 4, - SINT32 = 5, - SINT64 = 6, - UINT8 = 7, - UINT16 = 8, - UINT32 = 9, - UINT64 = 10, +ValidationFeatureEnableEXT :: enum c.int { + GPU_ASSISTED = 0, + GPU_ASSISTED_RESERVE_BINDING_SLOT = 1, + BEST_PRACTICES = 2, + DEBUG_PRINTF = 3, + SYNCHRONIZATION_VALIDATION = 4, } -ScopeNV :: enum c.int { - DEVICE = 1, - WORKGROUP = 2, - SUBGROUP = 3, - QUEUE_FAMILY = 5, +VendorId :: enum c.int { + VIV = 0x10001, + VSI = 0x10002, + KAZAN = 0x10003, + CODEPLAY = 0x10004, + MESA = 0x10005, + POCL = 0x10006, } -CoverageReductionModeNV :: enum c.int { - MERGE = 0, - TRUNCATE = 1, +VertexInputRate :: enum c.int { + VERTEX = 0, + INSTANCE = 1, } -ProvokingVertexModeEXT :: enum c.int { - FIRST_VERTEX = 0, - LAST_VERTEX = 1, +ViewportCoordinateSwizzleNV :: enum c.int { + POSITIVE_X = 0, + NEGATIVE_X = 1, + POSITIVE_Y = 2, + NEGATIVE_Y = 3, + POSITIVE_Z = 4, + NEGATIVE_Z = 5, + POSITIVE_W = 6, + NEGATIVE_W = 7, } -LineRasterizationModeEXT :: enum c.int { - DEFAULT = 0, - RECTANGULAR = 1, - BRESENHAM = 2, - RECTANGULAR_SMOOTH = 3, -} - -IndirectCommandsTokenTypeNV :: enum c.int { - SHADER_GROUP = 0, - STATE_FLAGS = 1, - INDEX_BUFFER = 2, - VERTEX_BUFFER = 3, - PUSH_CONSTANT = 4, - DRAW_INDEXED = 5, - DRAW = 6, - DRAW_TASKS = 7, -} - -IndirectStateFlagsNV :: distinct bit_set[IndirectStateFlagNV; Flags] -IndirectStateFlagNV :: enum Flags { - FLAG_FRONTFACE = 0, -} - -IndirectCommandsLayoutUsageFlagsNV :: distinct bit_set[IndirectCommandsLayoutUsageFlagNV; Flags] -IndirectCommandsLayoutUsageFlagNV :: enum Flags { - EXPLICIT_PREPROCESS = 0, - INDEXED_SEQUENCES = 1, - UNORDERED_SEQUENCES = 2, -} - -DeviceMemoryReportEventTypeEXT :: enum c.int { - ALLOCATE = 0, - FREE = 1, - IMPORT = 2, - UNIMPORT = 3, - ALLOCATION_FAILED = 4, -} - -PrivateDataSlotCreateFlagsEXT :: distinct bit_set[PrivateDataSlotCreateFlagEXT; Flags] -PrivateDataSlotCreateFlagEXT :: enum Flags { -} - -DeviceDiagnosticsConfigFlagsNV :: distinct bit_set[DeviceDiagnosticsConfigFlagNV; Flags] -DeviceDiagnosticsConfigFlagNV :: enum Flags { - ENABLE_SHADER_DEBUG_INFO = 0, - ENABLE_RESOURCE_TRACKING = 1, - ENABLE_AUTOMATIC_CHECKPOINTS = 2, -} - -FragmentShadingRateTypeNV :: enum c.int { - FRAGMENT_SIZE = 0, - ENUMS = 1, -} - -FragmentShadingRateNV :: enum c.int { - _1_INVOCATION_PER_PIXEL = 0, - _1_INVOCATION_PER_1X2_PIXELS = 1, - _1_INVOCATION_PER_2X1_PIXELS = 4, - _1_INVOCATION_PER_2X2_PIXELS = 5, - _1_INVOCATION_PER_2X4_PIXELS = 6, - _1_INVOCATION_PER_4X2_PIXELS = 9, - _1_INVOCATION_PER_4X4_PIXELS = 10, - _2_INVOCATIONS_PER_PIXEL = 11, - _4_INVOCATIONS_PER_PIXEL = 12, - _8_INVOCATIONS_PER_PIXEL = 13, - _16_INVOCATIONS_PER_PIXEL = 14, - NO_INVOCATIONS = 15, -} - -AccelerationStructureMotionInstanceTypeNV :: enum c.int { - STATIC = 0, - MATRIX_MOTION = 1, - SRT_MOTION = 2, -} - -BuildAccelerationStructureModeKHR :: enum c.int { - BUILD = 0, - UPDATE = 1, -} - -AccelerationStructureBuildTypeKHR :: enum c.int { - HOST = 0, - DEVICE = 1, - HOST_OR_DEVICE = 2, -} - -AccelerationStructureCompatibilityKHR :: enum c.int { - COMPATIBLE = 0, - INCOMPATIBLE = 1, -} - -AccelerationStructureCreateFlagsKHR :: distinct bit_set[AccelerationStructureCreateFlagKHR; Flags] -AccelerationStructureCreateFlagKHR :: enum Flags { - DEVICE_ADDRESS_CAPTURE_REPLAY = 0, - MOTION_NV = 2, -} - -ShaderGroupShaderKHR :: enum c.int { - GENERAL = 0, - CLOSEST_HIT = 1, - ANY_HIT = 2, - INTERSECTION = 3, -} - -FullScreenExclusiveEXT :: enum c.int { - DEFAULT = 0, - ALLOWED = 1, - DISALLOWED = 2, - APPLICATION_CONTROLLED = 3, -} - -QueryPoolCreateFlags :: distinct bit_set[QueryPoolCreateFlag; Flags] -QueryPoolCreateFlag :: enum u32 {} -PipelineRasterizationStateStreamCreateFlagsEXT :: distinct bit_set[PipelineRasterizationStateStreamCreateFlagEXT; Flags] -PipelineRasterizationStateStreamCreateFlagEXT :: enum u32 {} -PipelineRasterizationDepthClipStateCreateFlagsEXT :: distinct bit_set[PipelineRasterizationDepthClipStateCreateFlagEXT; Flags] -PipelineRasterizationDepthClipStateCreateFlagEXT :: enum u32 {} -MetalSurfaceCreateFlagsEXT :: distinct bit_set[MetalSurfaceCreateFlagEXT; Flags] -MetalSurfaceCreateFlagEXT :: enum u32 {} -PipelineDynamicStateCreateFlags :: distinct bit_set[PipelineDynamicStateCreateFlag; Flags] -PipelineDynamicStateCreateFlag :: enum u32 {} -PipelineCoverageReductionStateCreateFlagsNV :: distinct bit_set[PipelineCoverageReductionStateCreateFlagNV; Flags] -PipelineCoverageReductionStateCreateFlagNV :: enum u32 {} -PipelineDiscardRectangleStateCreateFlagsEXT :: distinct bit_set[PipelineDiscardRectangleStateCreateFlagEXT; Flags] -PipelineDiscardRectangleStateCreateFlagEXT :: enum u32 {} -ShaderModuleCreateFlags :: distinct bit_set[ShaderModuleCreateFlag; Flags] -ShaderModuleCreateFlag :: enum u32 {} -DescriptorUpdateTemplateCreateFlags :: distinct bit_set[DescriptorUpdateTemplateCreateFlag; Flags] -DescriptorUpdateTemplateCreateFlag :: enum u32 {} -PipelineViewportSwizzleStateCreateFlagsNV :: distinct bit_set[PipelineViewportSwizzleStateCreateFlagNV; Flags] -PipelineViewportSwizzleStateCreateFlagNV :: enum u32 {} -PipelineRasterizationConservativeStateCreateFlagsEXT :: distinct bit_set[PipelineRasterizationConservativeStateCreateFlagEXT; Flags] -PipelineRasterizationConservativeStateCreateFlagEXT :: enum u32 {} -DisplayModeCreateFlagsKHR :: distinct bit_set[DisplayModeCreateFlagKHR; Flags] -DisplayModeCreateFlagKHR :: enum u32 {} -PipelineVertexInputStateCreateFlags :: distinct bit_set[PipelineVertexInputStateCreateFlag; Flags] -PipelineVertexInputStateCreateFlag :: enum u32 {} -Win32SurfaceCreateFlagsKHR :: distinct bit_set[Win32SurfaceCreateFlagKHR; Flags] -Win32SurfaceCreateFlagKHR :: enum u32 {} -ValidationCacheCreateFlagsEXT :: distinct bit_set[ValidationCacheCreateFlagEXT; Flags] -ValidationCacheCreateFlagEXT :: enum u32 {} -DebugUtilsMessengerCreateFlagsEXT :: distinct bit_set[DebugUtilsMessengerCreateFlagEXT; Flags] -DebugUtilsMessengerCreateFlagEXT :: enum u32 {} -PipelineInputAssemblyStateCreateFlags :: distinct bit_set[PipelineInputAssemblyStateCreateFlag; Flags] -PipelineInputAssemblyStateCreateFlag :: enum u32 {} -PipelineMultisampleStateCreateFlags :: distinct bit_set[PipelineMultisampleStateCreateFlag; Flags] -PipelineMultisampleStateCreateFlag :: enum u32 {} -PipelineRasterizationStateCreateFlags :: distinct bit_set[PipelineRasterizationStateCreateFlag; Flags] -PipelineRasterizationStateCreateFlag :: enum u32 {} -PipelineColorBlendStateCreateFlags :: distinct bit_set[PipelineColorBlendStateCreateFlag; Flags] -PipelineColorBlendStateCreateFlag :: enum u32 {} -PipelineCoverageToColorStateCreateFlagsNV :: distinct bit_set[PipelineCoverageToColorStateCreateFlagNV; Flags] -PipelineCoverageToColorStateCreateFlagNV :: enum u32 {} -InstanceCreateFlags :: distinct bit_set[InstanceCreateFlag; Flags] -InstanceCreateFlag :: enum u32 {} -DeviceCreateFlags :: distinct bit_set[DeviceCreateFlag; Flags] -DeviceCreateFlag :: enum u32 {} -AccelerationStructureMotionInfoFlagsNV :: distinct bit_set[AccelerationStructureMotionInfoFlagNV; Flags] -AccelerationStructureMotionInfoFlagNV :: enum u32 {} -AccelerationStructureMotionInstanceFlagsNV :: distinct bit_set[AccelerationStructureMotionInstanceFlagNV; Flags] -AccelerationStructureMotionInstanceFlagNV :: enum u32 {} -PipelineTessellationStateCreateFlags :: distinct bit_set[PipelineTessellationStateCreateFlag; Flags] -PipelineTessellationStateCreateFlag :: enum u32 {} DisplaySurfaceCreateFlagsKHR :: distinct bit_set[DisplaySurfaceCreateFlagKHR; Flags] DisplaySurfaceCreateFlagKHR :: enum u32 {} -CommandPoolTrimFlags :: distinct bit_set[CommandPoolTrimFlag; Flags] -CommandPoolTrimFlag :: enum u32 {} -IOSSurfaceCreateFlagsMVK :: distinct bit_set[IOSSurfaceCreateFlagMVK; Flags] -IOSSurfaceCreateFlagMVK :: enum u32 {} -PipelineCoverageModulationStateCreateFlagsNV :: distinct bit_set[PipelineCoverageModulationStateCreateFlagNV; Flags] -PipelineCoverageModulationStateCreateFlagNV :: enum u32 {} PipelineViewportStateCreateFlags :: distinct bit_set[PipelineViewportStateCreateFlag; Flags] PipelineViewportStateCreateFlag :: enum u32 {} -SemaphoreCreateFlags :: distinct bit_set[SemaphoreCreateFlag; Flags] -SemaphoreCreateFlag :: enum u32 {} -MemoryMapFlags :: distinct bit_set[MemoryMapFlag; Flags] -MemoryMapFlag :: enum u32 {} -BufferViewCreateFlags :: distinct bit_set[BufferViewCreateFlag; Flags] -BufferViewCreateFlag :: enum u32 {} -HeadlessSurfaceCreateFlagsEXT :: distinct bit_set[HeadlessSurfaceCreateFlagEXT; Flags] -HeadlessSurfaceCreateFlagEXT :: enum u32 {} +MetalSurfaceCreateFlagsEXT :: distinct bit_set[MetalSurfaceCreateFlagEXT; Flags] +MetalSurfaceCreateFlagEXT :: enum u32 {} DeviceMemoryReportFlagsEXT :: distinct bit_set[DeviceMemoryReportFlagEXT; Flags] DeviceMemoryReportFlagEXT :: enum u32 {} -PipelineDepthStencilStateCreateFlags :: distinct bit_set[PipelineDepthStencilStateCreateFlag; Flags] -PipelineDepthStencilStateCreateFlag :: enum u32 {} -PipelineLayoutCreateFlags :: distinct bit_set[PipelineLayoutCreateFlag; Flags] -PipelineLayoutCreateFlag :: enum u32 {} -DebugUtilsMessengerCallbackDataFlagsEXT :: distinct bit_set[DebugUtilsMessengerCallbackDataFlagEXT; Flags] -DebugUtilsMessengerCallbackDataFlagEXT :: enum u32 {} -DescriptorPoolResetFlags :: distinct bit_set[DescriptorPoolResetFlag; Flags] -DescriptorPoolResetFlag :: enum u32 {} +DescriptorUpdateTemplateCreateFlags :: distinct bit_set[DescriptorUpdateTemplateCreateFlag; Flags] +DescriptorUpdateTemplateCreateFlag :: enum u32 {} +PipelineInputAssemblyStateCreateFlags :: distinct bit_set[PipelineInputAssemblyStateCreateFlag; Flags] +PipelineInputAssemblyStateCreateFlag :: enum u32 {} MacOSSurfaceCreateFlagsMVK :: distinct bit_set[MacOSSurfaceCreateFlagMVK; Flags] MacOSSurfaceCreateFlagMVK :: enum u32 {} +CommandPoolTrimFlags :: distinct bit_set[CommandPoolTrimFlag; Flags] +CommandPoolTrimFlag :: enum u32 {} +PipelineRasterizationConservativeStateCreateFlagsEXT :: distinct bit_set[PipelineRasterizationConservativeStateCreateFlagEXT; Flags] +PipelineRasterizationConservativeStateCreateFlagEXT :: enum u32 {} +DescriptorPoolResetFlags :: distinct bit_set[DescriptorPoolResetFlag; Flags] +DescriptorPoolResetFlag :: enum u32 {} +AccelerationStructureMotionInstanceFlagsNV :: distinct bit_set[AccelerationStructureMotionInstanceFlagNV; Flags] +AccelerationStructureMotionInstanceFlagNV :: enum u32 {} +PipelineColorBlendStateCreateFlags :: distinct bit_set[PipelineColorBlendStateCreateFlag; Flags] +PipelineColorBlendStateCreateFlag :: enum u32 {} +PipelineRasterizationDepthClipStateCreateFlagsEXT :: distinct bit_set[PipelineRasterizationDepthClipStateCreateFlagEXT; Flags] +PipelineRasterizationDepthClipStateCreateFlagEXT :: enum u32 {} +DebugUtilsMessengerCallbackDataFlagsEXT :: distinct bit_set[DebugUtilsMessengerCallbackDataFlagEXT; Flags] +DebugUtilsMessengerCallbackDataFlagEXT :: enum u32 {} +PipelineCoverageReductionStateCreateFlagsNV :: distinct bit_set[PipelineCoverageReductionStateCreateFlagNV; Flags] +PipelineCoverageReductionStateCreateFlagNV :: enum u32 {} +PipelineTessellationStateCreateFlags :: distinct bit_set[PipelineTessellationStateCreateFlag; Flags] +PipelineTessellationStateCreateFlag :: enum u32 {} +DebugUtilsMessengerCreateFlagsEXT :: distinct bit_set[DebugUtilsMessengerCreateFlagEXT; Flags] +DebugUtilsMessengerCreateFlagEXT :: enum u32 {} +DisplayModeCreateFlagsKHR :: distinct bit_set[DisplayModeCreateFlagKHR; Flags] +DisplayModeCreateFlagKHR :: enum u32 {} +PipelineRasterizationStateStreamCreateFlagsEXT :: distinct bit_set[PipelineRasterizationStateStreamCreateFlagEXT; Flags] +PipelineRasterizationStateStreamCreateFlagEXT :: enum u32 {} +PipelineVertexInputStateCreateFlags :: distinct bit_set[PipelineVertexInputStateCreateFlag; Flags] +PipelineVertexInputStateCreateFlag :: enum u32 {} +InstanceCreateFlags :: distinct bit_set[InstanceCreateFlag; Flags] +InstanceCreateFlag :: enum u32 {} +PipelineMultisampleStateCreateFlags :: distinct bit_set[PipelineMultisampleStateCreateFlag; Flags] +PipelineMultisampleStateCreateFlag :: enum u32 {} +MemoryMapFlags :: distinct bit_set[MemoryMapFlag; Flags] +MemoryMapFlag :: enum u32 {} +PipelineLayoutCreateFlags :: distinct bit_set[PipelineLayoutCreateFlag; Flags] +PipelineLayoutCreateFlag :: enum u32 {} +PipelineCoverageModulationStateCreateFlagsNV :: distinct bit_set[PipelineCoverageModulationStateCreateFlagNV; Flags] +PipelineCoverageModulationStateCreateFlagNV :: enum u32 {} +PipelineRasterizationStateCreateFlags :: distinct bit_set[PipelineRasterizationStateCreateFlag; Flags] +PipelineRasterizationStateCreateFlag :: enum u32 {} +AccelerationStructureMotionInfoFlagsNV :: distinct bit_set[AccelerationStructureMotionInfoFlagNV; Flags] +AccelerationStructureMotionInfoFlagNV :: enum u32 {} +QueryPoolCreateFlags :: distinct bit_set[QueryPoolCreateFlag; Flags] +QueryPoolCreateFlag :: enum u32 {} +BufferViewCreateFlags :: distinct bit_set[BufferViewCreateFlag; Flags] +BufferViewCreateFlag :: enum u32 {} +PipelineDiscardRectangleStateCreateFlagsEXT :: distinct bit_set[PipelineDiscardRectangleStateCreateFlagEXT; Flags] +PipelineDiscardRectangleStateCreateFlagEXT :: enum u32 {} +DeviceCreateFlags :: distinct bit_set[DeviceCreateFlag; Flags] +DeviceCreateFlag :: enum u32 {} +PipelineDynamicStateCreateFlags :: distinct bit_set[PipelineDynamicStateCreateFlag; Flags] +PipelineDynamicStateCreateFlag :: enum u32 {} +SemaphoreCreateFlags :: distinct bit_set[SemaphoreCreateFlag; Flags] +SemaphoreCreateFlag :: enum u32 {} +ShaderModuleCreateFlags :: distinct bit_set[ShaderModuleCreateFlag; Flags] +ShaderModuleCreateFlag :: enum u32 {} +ValidationCacheCreateFlagsEXT :: distinct bit_set[ValidationCacheCreateFlagEXT; Flags] +ValidationCacheCreateFlagEXT :: enum u32 {} +Win32SurfaceCreateFlagsKHR :: distinct bit_set[Win32SurfaceCreateFlagKHR; Flags] +Win32SurfaceCreateFlagKHR :: enum u32 {} +PipelineDepthStencilStateCreateFlags :: distinct bit_set[PipelineDepthStencilStateCreateFlag; Flags] +PipelineDepthStencilStateCreateFlag :: enum u32 {} +IOSSurfaceCreateFlagsMVK :: distinct bit_set[IOSSurfaceCreateFlagMVK; Flags] +IOSSurfaceCreateFlagMVK :: enum u32 {} +PipelineViewportSwizzleStateCreateFlagsNV :: distinct bit_set[PipelineViewportSwizzleStateCreateFlagNV; Flags] +PipelineViewportSwizzleStateCreateFlagNV :: enum u32 {} +PipelineCoverageToColorStateCreateFlagsNV :: distinct bit_set[PipelineCoverageToColorStateCreateFlagNV; Flags] +PipelineCoverageToColorStateCreateFlagNV :: enum u32 {} +HeadlessSurfaceCreateFlagsEXT :: distinct bit_set[HeadlessSurfaceCreateFlagEXT; Flags] +HeadlessSurfaceCreateFlagEXT :: enum u32 {} diff --git a/vendor/vulkan/procedures.odin b/vendor/vulkan/procedures.odin index 8307c1c6a..b40523b6d 100644 --- a/vendor/vulkan/procedures.odin +++ b/vendor/vulkan/procedures.odin @@ -15,44 +15,44 @@ ProcReallocationFunction :: #type pro ProcVoidFunction :: #type proc "system" () ProcCreateInstance :: #type proc "system" (pCreateInfo: ^InstanceCreateInfo, pAllocator: ^AllocationCallbacks, pInstance: ^Instance) -> Result ProcDestroyInstance :: #type proc "system" (instance: Instance, pAllocator: ^AllocationCallbacks) -ProcEnumeratePhysicalDevices :: #type proc "system" (instance: Instance, pPhysicalDeviceCount: ^u32, pPhysicalDevices: ^PhysicalDevice) -> Result -ProcGetPhysicalDeviceFeatures :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: ^PhysicalDeviceFeatures) -ProcGetPhysicalDeviceFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: ^FormatProperties) -ProcGetPhysicalDeviceImageFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, tiling: ImageTiling, usage: ImageUsageFlags, flags: ImageCreateFlags, pImageFormatProperties: ^ImageFormatProperties) -> Result -ProcGetPhysicalDeviceProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: ^PhysicalDeviceProperties) -ProcGetPhysicalDeviceQueueFamilyProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: ^QueueFamilyProperties) -ProcGetPhysicalDeviceMemoryProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: ^PhysicalDeviceMemoryProperties) +ProcEnumeratePhysicalDevices :: #type proc "system" (instance: Instance, pPhysicalDeviceCount: ^u32, pPhysicalDevices: [^]PhysicalDevice) -> Result +ProcGetPhysicalDeviceFeatures :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: [^]PhysicalDeviceFeatures) +ProcGetPhysicalDeviceFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: [^]FormatProperties) +ProcGetPhysicalDeviceImageFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, tiling: ImageTiling, usage: ImageUsageFlags, flags: ImageCreateFlags, pImageFormatProperties: [^]ImageFormatProperties) -> Result +ProcGetPhysicalDeviceProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: [^]PhysicalDeviceProperties) +ProcGetPhysicalDeviceQueueFamilyProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: [^]QueueFamilyProperties) +ProcGetPhysicalDeviceMemoryProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: [^]PhysicalDeviceMemoryProperties) ProcGetInstanceProcAddr :: #type proc "system" (instance: Instance, pName: cstring) -> ProcVoidFunction ProcGetDeviceProcAddr :: #type proc "system" (device: Device, pName: cstring) -> ProcVoidFunction ProcCreateDevice :: #type proc "system" (physicalDevice: PhysicalDevice, pCreateInfo: ^DeviceCreateInfo, pAllocator: ^AllocationCallbacks, pDevice: ^Device) -> Result ProcDestroyDevice :: #type proc "system" (device: Device, pAllocator: ^AllocationCallbacks) -ProcEnumerateInstanceExtensionProperties :: #type proc "system" (pLayerName: cstring, pPropertyCount: ^u32, pProperties: ^ExtensionProperties) -> Result -ProcEnumerateDeviceExtensionProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pLayerName: cstring, pPropertyCount: ^u32, pProperties: ^ExtensionProperties) -> Result -ProcEnumerateInstanceLayerProperties :: #type proc "system" (pPropertyCount: ^u32, pProperties: ^LayerProperties) -> Result -ProcEnumerateDeviceLayerProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^LayerProperties) -> Result +ProcEnumerateInstanceExtensionProperties :: #type proc "system" (pLayerName: cstring, pPropertyCount: ^u32, pProperties: [^]ExtensionProperties) -> Result +ProcEnumerateDeviceExtensionProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pLayerName: cstring, pPropertyCount: ^u32, pProperties: [^]ExtensionProperties) -> Result +ProcEnumerateInstanceLayerProperties :: #type proc "system" (pPropertyCount: ^u32, pProperties: [^]LayerProperties) -> Result +ProcEnumerateDeviceLayerProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]LayerProperties) -> Result ProcGetDeviceQueue :: #type proc "system" (device: Device, queueFamilyIndex: u32, queueIndex: u32, pQueue: ^Queue) -ProcQueueSubmit :: #type proc "system" (queue: Queue, submitCount: u32, pSubmits: ^SubmitInfo, fence: Fence) -> Result +ProcQueueSubmit :: #type proc "system" (queue: Queue, submitCount: u32, pSubmits: [^]SubmitInfo, fence: Fence) -> Result ProcQueueWaitIdle :: #type proc "system" (queue: Queue) -> Result ProcDeviceWaitIdle :: #type proc "system" (device: Device) -> Result ProcAllocateMemory :: #type proc "system" (device: Device, pAllocateInfo: ^MemoryAllocateInfo, pAllocator: ^AllocationCallbacks, pMemory: ^DeviceMemory) -> Result ProcFreeMemory :: #type proc "system" (device: Device, memory: DeviceMemory, pAllocator: ^AllocationCallbacks) ProcMapMemory :: #type proc "system" (device: Device, memory: DeviceMemory, offset: DeviceSize, size: DeviceSize, flags: MemoryMapFlags, ppData: ^rawptr) -> Result ProcUnmapMemory :: #type proc "system" (device: Device, memory: DeviceMemory) -ProcFlushMappedMemoryRanges :: #type proc "system" (device: Device, memoryRangeCount: u32, pMemoryRanges: ^MappedMemoryRange) -> Result -ProcInvalidateMappedMemoryRanges :: #type proc "system" (device: Device, memoryRangeCount: u32, pMemoryRanges: ^MappedMemoryRange) -> Result -ProcGetDeviceMemoryCommitment :: #type proc "system" (device: Device, memory: DeviceMemory, pCommittedMemoryInBytes: ^DeviceSize) +ProcFlushMappedMemoryRanges :: #type proc "system" (device: Device, memoryRangeCount: u32, pMemoryRanges: [^]MappedMemoryRange) -> Result +ProcInvalidateMappedMemoryRanges :: #type proc "system" (device: Device, memoryRangeCount: u32, pMemoryRanges: [^]MappedMemoryRange) -> Result +ProcGetDeviceMemoryCommitment :: #type proc "system" (device: Device, memory: DeviceMemory, pCommittedMemoryInBytes: [^]DeviceSize) ProcBindBufferMemory :: #type proc "system" (device: Device, buffer: Buffer, memory: DeviceMemory, memoryOffset: DeviceSize) -> Result ProcBindImageMemory :: #type proc "system" (device: Device, image: Image, memory: DeviceMemory, memoryOffset: DeviceSize) -> Result -ProcGetBufferMemoryRequirements :: #type proc "system" (device: Device, buffer: Buffer, pMemoryRequirements: ^MemoryRequirements) -ProcGetImageMemoryRequirements :: #type proc "system" (device: Device, image: Image, pMemoryRequirements: ^MemoryRequirements) -ProcGetImageSparseMemoryRequirements :: #type proc "system" (device: Device, image: Image, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: ^SparseImageMemoryRequirements) -ProcGetPhysicalDeviceSparseImageFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, samples: SampleCountFlags, usage: ImageUsageFlags, tiling: ImageTiling, pPropertyCount: ^u32, pProperties: ^SparseImageFormatProperties) +ProcGetBufferMemoryRequirements :: #type proc "system" (device: Device, buffer: Buffer, pMemoryRequirements: [^]MemoryRequirements) +ProcGetImageMemoryRequirements :: #type proc "system" (device: Device, image: Image, pMemoryRequirements: [^]MemoryRequirements) +ProcGetImageSparseMemoryRequirements :: #type proc "system" (device: Device, image: Image, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: [^]SparseImageMemoryRequirements) +ProcGetPhysicalDeviceSparseImageFormatProperties :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, samples: SampleCountFlags, usage: ImageUsageFlags, tiling: ImageTiling, pPropertyCount: ^u32, pProperties: [^]SparseImageFormatProperties) ProcQueueBindSparse :: #type proc "system" (queue: Queue, bindInfoCount: u32, pBindInfo: ^BindSparseInfo, fence: Fence) -> Result ProcCreateFence :: #type proc "system" (device: Device, pCreateInfo: ^FenceCreateInfo, pAllocator: ^AllocationCallbacks, pFence: ^Fence) -> Result ProcDestroyFence :: #type proc "system" (device: Device, fence: Fence, pAllocator: ^AllocationCallbacks) -ProcResetFences :: #type proc "system" (device: Device, fenceCount: u32, pFences: ^Fence) -> Result +ProcResetFences :: #type proc "system" (device: Device, fenceCount: u32, pFences: [^]Fence) -> Result ProcGetFenceStatus :: #type proc "system" (device: Device, fence: Fence) -> Result -ProcWaitForFences :: #type proc "system" (device: Device, fenceCount: u32, pFences: ^Fence, waitAll: b32, timeout: u64) -> Result +ProcWaitForFences :: #type proc "system" (device: Device, fenceCount: u32, pFences: [^]Fence, waitAll: b32, timeout: u64) -> Result ProcCreateSemaphore :: #type proc "system" (device: Device, pCreateInfo: ^SemaphoreCreateInfo, pAllocator: ^AllocationCallbacks, pSemaphore: ^Semaphore) -> Result ProcDestroySemaphore :: #type proc "system" (device: Device, semaphore: Semaphore, pAllocator: ^AllocationCallbacks) ProcCreateEvent :: #type proc "system" (device: Device, pCreateInfo: ^EventCreateInfo, pAllocator: ^AllocationCallbacks, pEvent: ^Event) -> Result @@ -77,9 +77,9 @@ ProcDestroyShaderModule :: #type pro ProcCreatePipelineCache :: #type proc "system" (device: Device, pCreateInfo: ^PipelineCacheCreateInfo, pAllocator: ^AllocationCallbacks, pPipelineCache: ^PipelineCache) -> Result ProcDestroyPipelineCache :: #type proc "system" (device: Device, pipelineCache: PipelineCache, pAllocator: ^AllocationCallbacks) ProcGetPipelineCacheData :: #type proc "system" (device: Device, pipelineCache: PipelineCache, pDataSize: ^int, pData: rawptr) -> Result -ProcMergePipelineCaches :: #type proc "system" (device: Device, dstCache: PipelineCache, srcCacheCount: u32, pSrcCaches: ^PipelineCache) -> Result -ProcCreateGraphicsPipelines :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: ^GraphicsPipelineCreateInfo, pAllocator: ^AllocationCallbacks, pPipelines: ^Pipeline) -> Result -ProcCreateComputePipelines :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: ^ComputePipelineCreateInfo, pAllocator: ^AllocationCallbacks, pPipelines: ^Pipeline) -> Result +ProcMergePipelineCaches :: #type proc "system" (device: Device, dstCache: PipelineCache, srcCacheCount: u32, pSrcCaches: [^]PipelineCache) -> Result +ProcCreateGraphicsPipelines :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: [^]GraphicsPipelineCreateInfo, pAllocator: ^AllocationCallbacks, pPipelines: [^]Pipeline) -> Result +ProcCreateComputePipelines :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: [^]ComputePipelineCreateInfo, pAllocator: ^AllocationCallbacks, pPipelines: [^]Pipeline) -> Result ProcDestroyPipeline :: #type proc "system" (device: Device, pipeline: Pipeline, pAllocator: ^AllocationCallbacks) ProcCreatePipelineLayout :: #type proc "system" (device: Device, pCreateInfo: ^PipelineLayoutCreateInfo, pAllocator: ^AllocationCallbacks, pPipelineLayout: ^PipelineLayout) -> Result ProcDestroyPipelineLayout :: #type proc "system" (device: Device, pipelineLayout: PipelineLayout, pAllocator: ^AllocationCallbacks) @@ -90,25 +90,25 @@ ProcDestroyDescriptorSetLayout :: #type pro ProcCreateDescriptorPool :: #type proc "system" (device: Device, pCreateInfo: ^DescriptorPoolCreateInfo, pAllocator: ^AllocationCallbacks, pDescriptorPool: ^DescriptorPool) -> Result ProcDestroyDescriptorPool :: #type proc "system" (device: Device, descriptorPool: DescriptorPool, pAllocator: ^AllocationCallbacks) ProcResetDescriptorPool :: #type proc "system" (device: Device, descriptorPool: DescriptorPool, flags: DescriptorPoolResetFlags) -> Result -ProcAllocateDescriptorSets :: #type proc "system" (device: Device, pAllocateInfo: ^DescriptorSetAllocateInfo, pDescriptorSets: ^DescriptorSet) -> Result -ProcFreeDescriptorSets :: #type proc "system" (device: Device, descriptorPool: DescriptorPool, descriptorSetCount: u32, pDescriptorSets: ^DescriptorSet) -> Result -ProcUpdateDescriptorSets :: #type proc "system" (device: Device, descriptorWriteCount: u32, pDescriptorWrites: ^WriteDescriptorSet, descriptorCopyCount: u32, pDescriptorCopies: ^CopyDescriptorSet) +ProcAllocateDescriptorSets :: #type proc "system" (device: Device, pAllocateInfo: ^DescriptorSetAllocateInfo, pDescriptorSets: [^]DescriptorSet) -> Result +ProcFreeDescriptorSets :: #type proc "system" (device: Device, descriptorPool: DescriptorPool, descriptorSetCount: u32, pDescriptorSets: [^]DescriptorSet) -> Result +ProcUpdateDescriptorSets :: #type proc "system" (device: Device, descriptorWriteCount: u32, pDescriptorWrites: [^]WriteDescriptorSet, descriptorCopyCount: u32, pDescriptorCopies: [^]CopyDescriptorSet) ProcCreateFramebuffer :: #type proc "system" (device: Device, pCreateInfo: ^FramebufferCreateInfo, pAllocator: ^AllocationCallbacks, pFramebuffer: ^Framebuffer) -> Result ProcDestroyFramebuffer :: #type proc "system" (device: Device, framebuffer: Framebuffer, pAllocator: ^AllocationCallbacks) -ProcCreateRenderPass :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo, pAllocator: ^AllocationCallbacks, pRenderPass: ^RenderPass) -> Result +ProcCreateRenderPass :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo, pAllocator: ^AllocationCallbacks, pRenderPass: [^]RenderPass) -> Result ProcDestroyRenderPass :: #type proc "system" (device: Device, renderPass: RenderPass, pAllocator: ^AllocationCallbacks) ProcGetRenderAreaGranularity :: #type proc "system" (device: Device, renderPass: RenderPass, pGranularity: ^Extent2D) ProcCreateCommandPool :: #type proc "system" (device: Device, pCreateInfo: ^CommandPoolCreateInfo, pAllocator: ^AllocationCallbacks, pCommandPool: ^CommandPool) -> Result ProcDestroyCommandPool :: #type proc "system" (device: Device, commandPool: CommandPool, pAllocator: ^AllocationCallbacks) ProcResetCommandPool :: #type proc "system" (device: Device, commandPool: CommandPool, flags: CommandPoolResetFlags) -> Result -ProcAllocateCommandBuffers :: #type proc "system" (device: Device, pAllocateInfo: ^CommandBufferAllocateInfo, pCommandBuffers: ^CommandBuffer) -> Result -ProcFreeCommandBuffers :: #type proc "system" (device: Device, commandPool: CommandPool, commandBufferCount: u32, pCommandBuffers: ^CommandBuffer) +ProcAllocateCommandBuffers :: #type proc "system" (device: Device, pAllocateInfo: ^CommandBufferAllocateInfo, pCommandBuffers: [^]CommandBuffer) -> Result +ProcFreeCommandBuffers :: #type proc "system" (device: Device, commandPool: CommandPool, commandBufferCount: u32, pCommandBuffers: [^]CommandBuffer) ProcBeginCommandBuffer :: #type proc "system" (commandBuffer: CommandBuffer, pBeginInfo: ^CommandBufferBeginInfo) -> Result ProcEndCommandBuffer :: #type proc "system" (commandBuffer: CommandBuffer) -> Result ProcResetCommandBuffer :: #type proc "system" (commandBuffer: CommandBuffer, flags: CommandBufferResetFlags) -> Result ProcCmdBindPipeline :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, pipeline: Pipeline) -ProcCmdSetViewport :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pViewports: ^Viewport) -ProcCmdSetScissor :: #type proc "system" (commandBuffer: CommandBuffer, firstScissor: u32, scissorCount: u32, pScissors: ^Rect2D) +ProcCmdSetViewport :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pViewports: [^]Viewport) +ProcCmdSetScissor :: #type proc "system" (commandBuffer: CommandBuffer, firstScissor: u32, scissorCount: u32, pScissors: [^]Rect2D) ProcCmdSetLineWidth :: #type proc "system" (commandBuffer: CommandBuffer, lineWidth: f32) ProcCmdSetDepthBias :: #type proc "system" (commandBuffer: CommandBuffer, depthBiasConstantFactor: f32, depthBiasClamp: f32, depthBiasSlopeFactor: f32) ProcCmdSetBlendConstants :: #type proc "system" (commandBuffer: CommandBuffer) @@ -116,30 +116,30 @@ ProcCmdSetDepthBounds :: #type pro ProcCmdSetStencilCompareMask :: #type proc "system" (commandBuffer: CommandBuffer, faceMask: StencilFaceFlags, compareMask: u32) ProcCmdSetStencilWriteMask :: #type proc "system" (commandBuffer: CommandBuffer, faceMask: StencilFaceFlags, writeMask: u32) ProcCmdSetStencilReference :: #type proc "system" (commandBuffer: CommandBuffer, faceMask: StencilFaceFlags, reference: u32) -ProcCmdBindDescriptorSets :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, layout: PipelineLayout, firstSet: u32, descriptorSetCount: u32, pDescriptorSets: ^DescriptorSet, dynamicOffsetCount: u32, pDynamicOffsets: ^u32) +ProcCmdBindDescriptorSets :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, layout: PipelineLayout, firstSet: u32, descriptorSetCount: u32, pDescriptorSets: [^]DescriptorSet, dynamicOffsetCount: u32, pDynamicOffsets: [^]u32) ProcCmdBindIndexBuffer :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, indexType: IndexType) -ProcCmdBindVertexBuffers :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: ^Buffer, pOffsets: ^DeviceSize) +ProcCmdBindVertexBuffers :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: [^]Buffer, pOffsets: [^]DeviceSize) ProcCmdDraw :: #type proc "system" (commandBuffer: CommandBuffer, vertexCount: u32, instanceCount: u32, firstVertex: u32, firstInstance: u32) ProcCmdDrawIndexed :: #type proc "system" (commandBuffer: CommandBuffer, indexCount: u32, instanceCount: u32, firstIndex: u32, vertexOffset: i32, firstInstance: u32) ProcCmdDrawIndirect :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, drawCount: u32, stride: u32) ProcCmdDrawIndexedIndirect :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, drawCount: u32, stride: u32) ProcCmdDispatch :: #type proc "system" (commandBuffer: CommandBuffer, groupCountX: u32, groupCountY: u32, groupCountZ: u32) ProcCmdDispatchIndirect :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize) -ProcCmdCopyBuffer :: #type proc "system" (commandBuffer: CommandBuffer, srcBuffer: Buffer, dstBuffer: Buffer, regionCount: u32, pRegions: ^BufferCopy) -ProcCmdCopyImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: ^ImageCopy) -ProcCmdBlitImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: ^ImageBlit, filter: Filter) -ProcCmdCopyBufferToImage :: #type proc "system" (commandBuffer: CommandBuffer, srcBuffer: Buffer, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: ^BufferImageCopy) -ProcCmdCopyImageToBuffer :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstBuffer: Buffer, regionCount: u32, pRegions: ^BufferImageCopy) +ProcCmdCopyBuffer :: #type proc "system" (commandBuffer: CommandBuffer, srcBuffer: Buffer, dstBuffer: Buffer, regionCount: u32, pRegions: [^]BufferCopy) +ProcCmdCopyImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: [^]ImageCopy) +ProcCmdBlitImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: [^]ImageBlit, filter: Filter) +ProcCmdCopyBufferToImage :: #type proc "system" (commandBuffer: CommandBuffer, srcBuffer: Buffer, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: [^]BufferImageCopy) +ProcCmdCopyImageToBuffer :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstBuffer: Buffer, regionCount: u32, pRegions: [^]BufferImageCopy) ProcCmdUpdateBuffer :: #type proc "system" (commandBuffer: CommandBuffer, dstBuffer: Buffer, dstOffset: DeviceSize, dataSize: DeviceSize, pData: rawptr) ProcCmdFillBuffer :: #type proc "system" (commandBuffer: CommandBuffer, dstBuffer: Buffer, dstOffset: DeviceSize, size: DeviceSize, data: u32) -ProcCmdClearColorImage :: #type proc "system" (commandBuffer: CommandBuffer, image: Image, imageLayout: ImageLayout, pColor: ^ClearColorValue, rangeCount: u32, pRanges: ^ImageSubresourceRange) -ProcCmdClearDepthStencilImage :: #type proc "system" (commandBuffer: CommandBuffer, image: Image, imageLayout: ImageLayout, pDepthStencil: ^ClearDepthStencilValue, rangeCount: u32, pRanges: ^ImageSubresourceRange) -ProcCmdClearAttachments :: #type proc "system" (commandBuffer: CommandBuffer, attachmentCount: u32, pAttachments: ^ClearAttachment, rectCount: u32, pRects: ^ClearRect) -ProcCmdResolveImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: ^ImageResolve) +ProcCmdClearColorImage :: #type proc "system" (commandBuffer: CommandBuffer, image: Image, imageLayout: ImageLayout, pColor: ^ClearColorValue, rangeCount: u32, pRanges: [^]ImageSubresourceRange) +ProcCmdClearDepthStencilImage :: #type proc "system" (commandBuffer: CommandBuffer, image: Image, imageLayout: ImageLayout, pDepthStencil: ^ClearDepthStencilValue, rangeCount: u32, pRanges: [^]ImageSubresourceRange) +ProcCmdClearAttachments :: #type proc "system" (commandBuffer: CommandBuffer, attachmentCount: u32, pAttachments: [^]ClearAttachment, rectCount: u32, pRects: [^]ClearRect) +ProcCmdResolveImage :: #type proc "system" (commandBuffer: CommandBuffer, srcImage: Image, srcImageLayout: ImageLayout, dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, pRegions: [^]ImageResolve) ProcCmdSetEvent :: #type proc "system" (commandBuffer: CommandBuffer, event: Event, stageMask: PipelineStageFlags) ProcCmdResetEvent :: #type proc "system" (commandBuffer: CommandBuffer, event: Event, stageMask: PipelineStageFlags) -ProcCmdWaitEvents :: #type proc "system" (commandBuffer: CommandBuffer, eventCount: u32, pEvents: ^Event, srcStageMask: PipelineStageFlags, dstStageMask: PipelineStageFlags, memoryBarrierCount: u32, pMemoryBarriers: ^MemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: ^BufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: ^ImageMemoryBarrier) -ProcCmdPipelineBarrier :: #type proc "system" (commandBuffer: CommandBuffer, srcStageMask: PipelineStageFlags, dstStageMask: PipelineStageFlags, dependencyFlags: DependencyFlags, memoryBarrierCount: u32, pMemoryBarriers: ^MemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: ^BufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: ^ImageMemoryBarrier) +ProcCmdWaitEvents :: #type proc "system" (commandBuffer: CommandBuffer, eventCount: u32, pEvents: [^]Event, srcStageMask: PipelineStageFlags, dstStageMask: PipelineStageFlags, memoryBarrierCount: u32, pMemoryBarriers: [^]MemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: [^]BufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: [^]ImageMemoryBarrier) +ProcCmdPipelineBarrier :: #type proc "system" (commandBuffer: CommandBuffer, srcStageMask: PipelineStageFlags, dstStageMask: PipelineStageFlags, dependencyFlags: DependencyFlags, memoryBarrierCount: u32, pMemoryBarriers: [^]MemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: [^]BufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: [^]ImageMemoryBarrier) ProcCmdBeginQuery :: #type proc "system" (commandBuffer: CommandBuffer, queryPool: QueryPool, query: u32, flags: QueryControlFlags) ProcCmdEndQuery :: #type proc "system" (commandBuffer: CommandBuffer, queryPool: QueryPool, query: u32) ProcCmdResetQueryPool :: #type proc "system" (commandBuffer: CommandBuffer, queryPool: QueryPool, firstQuery: u32, queryCount: u32) @@ -149,24 +149,24 @@ ProcCmdPushConstants :: #type pro ProcCmdBeginRenderPass :: #type proc "system" (commandBuffer: CommandBuffer, pRenderPassBegin: ^RenderPassBeginInfo, contents: SubpassContents) ProcCmdNextSubpass :: #type proc "system" (commandBuffer: CommandBuffer, contents: SubpassContents) ProcCmdEndRenderPass :: #type proc "system" (commandBuffer: CommandBuffer) -ProcCmdExecuteCommands :: #type proc "system" (commandBuffer: CommandBuffer, commandBufferCount: u32, pCommandBuffers: ^CommandBuffer) +ProcCmdExecuteCommands :: #type proc "system" (commandBuffer: CommandBuffer, commandBufferCount: u32, pCommandBuffers: [^]CommandBuffer) ProcEnumerateInstanceVersion :: #type proc "system" (pApiVersion: ^u32) -> Result -ProcBindBufferMemory2 :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: ^BindBufferMemoryInfo) -> Result -ProcBindImageMemory2 :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: ^BindImageMemoryInfo) -> Result -ProcGetDeviceGroupPeerMemoryFeatures :: #type proc "system" (device: Device, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: ^PeerMemoryFeatureFlags) +ProcBindBufferMemory2 :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: [^]BindBufferMemoryInfo) -> Result +ProcBindImageMemory2 :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: [^]BindImageMemoryInfo) -> Result +ProcGetDeviceGroupPeerMemoryFeatures :: #type proc "system" (device: Device, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: [^]PeerMemoryFeatureFlags) ProcCmdSetDeviceMask :: #type proc "system" (commandBuffer: CommandBuffer, deviceMask: u32) ProcCmdDispatchBase :: #type proc "system" (commandBuffer: CommandBuffer, baseGroupX: u32, baseGroupY: u32, baseGroupZ: u32, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -ProcEnumeratePhysicalDeviceGroups :: #type proc "system" (instance: Instance, pPhysicalDeviceGroupCount: ^u32, pPhysicalDeviceGroupProperties: ^PhysicalDeviceGroupProperties) -> Result -ProcGetImageMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^ImageMemoryRequirementsInfo2, pMemoryRequirements: ^MemoryRequirements2) -ProcGetBufferMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^BufferMemoryRequirementsInfo2, pMemoryRequirements: ^MemoryRequirements2) -ProcGetImageSparseMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^ImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: ^SparseImageMemoryRequirements2) -ProcGetPhysicalDeviceFeatures2 :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: ^PhysicalDeviceFeatures2) -ProcGetPhysicalDeviceProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: ^PhysicalDeviceProperties2) -ProcGetPhysicalDeviceFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: ^FormatProperties2) -ProcGetPhysicalDeviceImageFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pImageFormatInfo: ^PhysicalDeviceImageFormatInfo2, pImageFormatProperties: ^ImageFormatProperties2) -> Result -ProcGetPhysicalDeviceQueueFamilyProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: ^QueueFamilyProperties2) -ProcGetPhysicalDeviceMemoryProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: ^PhysicalDeviceMemoryProperties2) -ProcGetPhysicalDeviceSparseImageFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pFormatInfo: ^PhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ^u32, pProperties: ^SparseImageFormatProperties2) +ProcEnumeratePhysicalDeviceGroups :: #type proc "system" (instance: Instance, pPhysicalDeviceGroupCount: ^u32, pPhysicalDeviceGroupProperties: [^]PhysicalDeviceGroupProperties) -> Result +ProcGetImageMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^ImageMemoryRequirementsInfo2, pMemoryRequirements: [^]MemoryRequirements2) +ProcGetBufferMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^BufferMemoryRequirementsInfo2, pMemoryRequirements: [^]MemoryRequirements2) +ProcGetImageSparseMemoryRequirements2 :: #type proc "system" (device: Device, pInfo: ^ImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: [^]SparseImageMemoryRequirements2) +ProcGetPhysicalDeviceFeatures2 :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: [^]PhysicalDeviceFeatures2) +ProcGetPhysicalDeviceProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: [^]PhysicalDeviceProperties2) +ProcGetPhysicalDeviceFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: [^]FormatProperties2) +ProcGetPhysicalDeviceImageFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pImageFormatInfo: ^PhysicalDeviceImageFormatInfo2, pImageFormatProperties: [^]ImageFormatProperties2) -> Result +ProcGetPhysicalDeviceQueueFamilyProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: [^]QueueFamilyProperties2) +ProcGetPhysicalDeviceMemoryProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: [^]PhysicalDeviceMemoryProperties2) +ProcGetPhysicalDeviceSparseImageFormatProperties2 :: #type proc "system" (physicalDevice: PhysicalDevice, pFormatInfo: ^PhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ^u32, pProperties: [^]SparseImageFormatProperties2) ProcTrimCommandPool :: #type proc "system" (device: Device, commandPool: CommandPool, flags: CommandPoolTrimFlags) ProcGetDeviceQueue2 :: #type proc "system" (device: Device, pQueueInfo: ^DeviceQueueInfo2, pQueue: ^Queue) ProcCreateSamplerYcbcrConversion :: #type proc "system" (device: Device, pCreateInfo: ^SamplerYcbcrConversionCreateInfo, pAllocator: ^AllocationCallbacks, pYcbcrConversion: ^SamplerYcbcrConversion) -> Result @@ -174,13 +174,13 @@ ProcDestroySamplerYcbcrConversion :: #type pro ProcCreateDescriptorUpdateTemplate :: #type proc "system" (device: Device, pCreateInfo: ^DescriptorUpdateTemplateCreateInfo, pAllocator: ^AllocationCallbacks, pDescriptorUpdateTemplate: ^DescriptorUpdateTemplate) -> Result ProcDestroyDescriptorUpdateTemplate :: #type proc "system" (device: Device, descriptorUpdateTemplate: DescriptorUpdateTemplate, pAllocator: ^AllocationCallbacks) ProcUpdateDescriptorSetWithTemplate :: #type proc "system" (device: Device, descriptorSet: DescriptorSet, descriptorUpdateTemplate: DescriptorUpdateTemplate, pData: rawptr) -ProcGetPhysicalDeviceExternalBufferProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalBufferInfo: ^PhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ^ExternalBufferProperties) -ProcGetPhysicalDeviceExternalFenceProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalFenceInfo: ^PhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ^ExternalFenceProperties) -ProcGetPhysicalDeviceExternalSemaphoreProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalSemaphoreInfo: ^PhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ^ExternalSemaphoreProperties) +ProcGetPhysicalDeviceExternalBufferProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalBufferInfo: ^PhysicalDeviceExternalBufferInfo, pExternalBufferProperties: [^]ExternalBufferProperties) +ProcGetPhysicalDeviceExternalFenceProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalFenceInfo: ^PhysicalDeviceExternalFenceInfo, pExternalFenceProperties: [^]ExternalFenceProperties) +ProcGetPhysicalDeviceExternalSemaphoreProperties :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalSemaphoreInfo: ^PhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: [^]ExternalSemaphoreProperties) ProcGetDescriptorSetLayoutSupport :: #type proc "system" (device: Device, pCreateInfo: ^DescriptorSetLayoutCreateInfo, pSupport: ^DescriptorSetLayoutSupport) ProcCmdDrawIndirectCount :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) ProcCmdDrawIndexedIndirectCount :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) -ProcCreateRenderPass2 :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo2, pAllocator: ^AllocationCallbacks, pRenderPass: ^RenderPass) -> Result +ProcCreateRenderPass2 :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo2, pAllocator: ^AllocationCallbacks, pRenderPass: [^]RenderPass) -> Result ProcCmdBeginRenderPass2 :: #type proc "system" (commandBuffer: CommandBuffer, pRenderPassBegin: ^RenderPassBeginInfo, pSubpassBeginInfo: ^SubpassBeginInfo) ProcCmdNextSubpass2 :: #type proc "system" (commandBuffer: CommandBuffer, pSubpassBeginInfo: ^SubpassBeginInfo, pSubpassEndInfo: ^SubpassEndInfo) ProcCmdEndRenderPass2 :: #type proc "system" (commandBuffer: CommandBuffer, pSubpassEndInfo: ^SubpassEndInfo) @@ -193,81 +193,81 @@ ProcGetBufferOpaqueCaptureAddress :: #type pro ProcGetDeviceMemoryOpaqueCaptureAddress :: #type proc "system" (device: Device, pInfo: ^DeviceMemoryOpaqueCaptureAddressInfo) -> u64 ProcDestroySurfaceKHR :: #type proc "system" (instance: Instance, surface: SurfaceKHR, pAllocator: ^AllocationCallbacks) ProcGetPhysicalDeviceSurfaceSupportKHR :: #type proc "system" (physicalDevice: PhysicalDevice, queueFamilyIndex: u32, surface: SurfaceKHR, pSupported: ^b32) -> Result -ProcGetPhysicalDeviceSurfaceCapabilitiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceCapabilities: ^SurfaceCapabilitiesKHR) -> Result -ProcGetPhysicalDeviceSurfaceFormatsKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceFormatCount: ^u32, pSurfaceFormats: ^SurfaceFormatKHR) -> Result -ProcGetPhysicalDeviceSurfacePresentModesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pPresentModeCount: ^u32, pPresentModes: ^PresentModeKHR) -> Result +ProcGetPhysicalDeviceSurfaceCapabilitiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceCapabilities: [^]SurfaceCapabilitiesKHR) -> Result +ProcGetPhysicalDeviceSurfaceFormatsKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceFormatCount: ^u32, pSurfaceFormats: [^]SurfaceFormatKHR) -> Result +ProcGetPhysicalDeviceSurfacePresentModesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pPresentModeCount: ^u32, pPresentModes: [^]PresentModeKHR) -> Result ProcCreateSwapchainKHR :: #type proc "system" (device: Device, pCreateInfo: ^SwapchainCreateInfoKHR, pAllocator: ^AllocationCallbacks, pSwapchain: ^SwapchainKHR) -> Result ProcDestroySwapchainKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pAllocator: ^AllocationCallbacks) -ProcGetSwapchainImagesKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pSwapchainImageCount: ^u32, pSwapchainImages: ^Image) -> Result +ProcGetSwapchainImagesKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pSwapchainImageCount: ^u32, pSwapchainImages: [^]Image) -> Result ProcAcquireNextImageKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR, timeout: u64, semaphore: Semaphore, fence: Fence, pImageIndex: ^u32) -> Result ProcQueuePresentKHR :: #type proc "system" (queue: Queue, pPresentInfo: ^PresentInfoKHR) -> Result -ProcGetDeviceGroupPresentCapabilitiesKHR :: #type proc "system" (device: Device, pDeviceGroupPresentCapabilities: ^DeviceGroupPresentCapabilitiesKHR) -> Result -ProcGetDeviceGroupSurfacePresentModesKHR :: #type proc "system" (device: Device, surface: SurfaceKHR, pModes: ^DeviceGroupPresentModeFlagsKHR) -> Result -ProcGetPhysicalDevicePresentRectanglesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pRectCount: ^u32, pRects: ^Rect2D) -> Result +ProcGetDeviceGroupPresentCapabilitiesKHR :: #type proc "system" (device: Device, pDeviceGroupPresentCapabilities: [^]DeviceGroupPresentCapabilitiesKHR) -> Result +ProcGetDeviceGroupSurfacePresentModesKHR :: #type proc "system" (device: Device, surface: SurfaceKHR, pModes: [^]DeviceGroupPresentModeFlagsKHR) -> Result +ProcGetPhysicalDevicePresentRectanglesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pRectCount: ^u32, pRects: [^]Rect2D) -> Result ProcAcquireNextImage2KHR :: #type proc "system" (device: Device, pAcquireInfo: ^AcquireNextImageInfoKHR, pImageIndex: ^u32) -> Result -ProcGetPhysicalDeviceDisplayPropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^DisplayPropertiesKHR) -> Result -ProcGetPhysicalDeviceDisplayPlanePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^DisplayPlanePropertiesKHR) -> Result -ProcGetDisplayPlaneSupportedDisplaysKHR :: #type proc "system" (physicalDevice: PhysicalDevice, planeIndex: u32, pDisplayCount: ^u32, pDisplays: ^DisplayKHR) -> Result -ProcGetDisplayModePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR, pPropertyCount: ^u32, pProperties: ^DisplayModePropertiesKHR) -> Result +ProcGetPhysicalDeviceDisplayPropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]DisplayPropertiesKHR) -> Result +ProcGetPhysicalDeviceDisplayPlanePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]DisplayPlanePropertiesKHR) -> Result +ProcGetDisplayPlaneSupportedDisplaysKHR :: #type proc "system" (physicalDevice: PhysicalDevice, planeIndex: u32, pDisplayCount: ^u32, pDisplays: [^]DisplayKHR) -> Result +ProcGetDisplayModePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR, pPropertyCount: ^u32, pProperties: [^]DisplayModePropertiesKHR) -> Result ProcCreateDisplayModeKHR :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR, pCreateInfo: ^DisplayModeCreateInfoKHR, pAllocator: ^AllocationCallbacks, pMode: ^DisplayModeKHR) -> Result -ProcGetDisplayPlaneCapabilitiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, mode: DisplayModeKHR, planeIndex: u32, pCapabilities: ^DisplayPlaneCapabilitiesKHR) -> Result +ProcGetDisplayPlaneCapabilitiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, mode: DisplayModeKHR, planeIndex: u32, pCapabilities: [^]DisplayPlaneCapabilitiesKHR) -> Result ProcCreateDisplayPlaneSurfaceKHR :: #type proc "system" (instance: Instance, pCreateInfo: ^DisplaySurfaceCreateInfoKHR, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result -ProcCreateSharedSwapchainsKHR :: #type proc "system" (device: Device, swapchainCount: u32, pCreateInfos: ^SwapchainCreateInfoKHR, pAllocator: ^AllocationCallbacks, pSwapchains: ^SwapchainKHR) -> Result -ProcGetPhysicalDeviceFeatures2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: ^PhysicalDeviceFeatures2) -ProcGetPhysicalDeviceProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: ^PhysicalDeviceProperties2) -ProcGetPhysicalDeviceFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: ^FormatProperties2) -ProcGetPhysicalDeviceImageFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pImageFormatInfo: ^PhysicalDeviceImageFormatInfo2, pImageFormatProperties: ^ImageFormatProperties2) -> Result -ProcGetPhysicalDeviceQueueFamilyProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: ^QueueFamilyProperties2) -ProcGetPhysicalDeviceMemoryProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: ^PhysicalDeviceMemoryProperties2) -ProcGetPhysicalDeviceSparseImageFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFormatInfo: ^PhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ^u32, pProperties: ^SparseImageFormatProperties2) -ProcGetDeviceGroupPeerMemoryFeaturesKHR :: #type proc "system" (device: Device, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: ^PeerMemoryFeatureFlags) +ProcCreateSharedSwapchainsKHR :: #type proc "system" (device: Device, swapchainCount: u32, pCreateInfos: [^]SwapchainCreateInfoKHR, pAllocator: ^AllocationCallbacks, pSwapchains: [^]SwapchainKHR) -> Result +ProcGetPhysicalDeviceFeatures2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFeatures: [^]PhysicalDeviceFeatures2) +ProcGetPhysicalDeviceProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pProperties: [^]PhysicalDeviceProperties2) +ProcGetPhysicalDeviceFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, pFormatProperties: [^]FormatProperties2) +ProcGetPhysicalDeviceImageFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pImageFormatInfo: ^PhysicalDeviceImageFormatInfo2, pImageFormatProperties: [^]ImageFormatProperties2) -> Result +ProcGetPhysicalDeviceQueueFamilyProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pQueueFamilyPropertyCount: ^u32, pQueueFamilyProperties: [^]QueueFamilyProperties2) +ProcGetPhysicalDeviceMemoryProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pMemoryProperties: [^]PhysicalDeviceMemoryProperties2) +ProcGetPhysicalDeviceSparseImageFormatProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFormatInfo: ^PhysicalDeviceSparseImageFormatInfo2, pPropertyCount: ^u32, pProperties: [^]SparseImageFormatProperties2) +ProcGetDeviceGroupPeerMemoryFeaturesKHR :: #type proc "system" (device: Device, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: [^]PeerMemoryFeatureFlags) ProcCmdSetDeviceMaskKHR :: #type proc "system" (commandBuffer: CommandBuffer, deviceMask: u32) ProcCmdDispatchBaseKHR :: #type proc "system" (commandBuffer: CommandBuffer, baseGroupX: u32, baseGroupY: u32, baseGroupZ: u32, groupCountX: u32, groupCountY: u32, groupCountZ: u32) ProcTrimCommandPoolKHR :: #type proc "system" (device: Device, commandPool: CommandPool, flags: CommandPoolTrimFlags) -ProcEnumeratePhysicalDeviceGroupsKHR :: #type proc "system" (instance: Instance, pPhysicalDeviceGroupCount: ^u32, pPhysicalDeviceGroupProperties: ^PhysicalDeviceGroupProperties) -> Result -ProcGetPhysicalDeviceExternalBufferPropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalBufferInfo: ^PhysicalDeviceExternalBufferInfo, pExternalBufferProperties: ^ExternalBufferProperties) +ProcEnumeratePhysicalDeviceGroupsKHR :: #type proc "system" (instance: Instance, pPhysicalDeviceGroupCount: ^u32, pPhysicalDeviceGroupProperties: [^]PhysicalDeviceGroupProperties) -> Result +ProcGetPhysicalDeviceExternalBufferPropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalBufferInfo: ^PhysicalDeviceExternalBufferInfo, pExternalBufferProperties: [^]ExternalBufferProperties) ProcGetMemoryFdKHR :: #type proc "system" (device: Device, pGetFdInfo: ^MemoryGetFdInfoKHR, pFd: ^c.int) -> Result -ProcGetMemoryFdPropertiesKHR :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, fd: c.int, pMemoryFdProperties: ^MemoryFdPropertiesKHR) -> Result -ProcGetPhysicalDeviceExternalSemaphorePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalSemaphoreInfo: ^PhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: ^ExternalSemaphoreProperties) +ProcGetMemoryFdPropertiesKHR :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, fd: c.int, pMemoryFdProperties: [^]MemoryFdPropertiesKHR) -> Result +ProcGetPhysicalDeviceExternalSemaphorePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalSemaphoreInfo: ^PhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: [^]ExternalSemaphoreProperties) ProcImportSemaphoreFdKHR :: #type proc "system" (device: Device, pImportSemaphoreFdInfo: ^ImportSemaphoreFdInfoKHR) -> Result ProcGetSemaphoreFdKHR :: #type proc "system" (device: Device, pGetFdInfo: ^SemaphoreGetFdInfoKHR, pFd: ^c.int) -> Result -ProcCmdPushDescriptorSetKHR :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, layout: PipelineLayout, set: u32, descriptorWriteCount: u32, pDescriptorWrites: ^WriteDescriptorSet) +ProcCmdPushDescriptorSetKHR :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, layout: PipelineLayout, set: u32, descriptorWriteCount: u32, pDescriptorWrites: [^]WriteDescriptorSet) ProcCmdPushDescriptorSetWithTemplateKHR :: #type proc "system" (commandBuffer: CommandBuffer, descriptorUpdateTemplate: DescriptorUpdateTemplate, layout: PipelineLayout, set: u32, pData: rawptr) ProcCreateDescriptorUpdateTemplateKHR :: #type proc "system" (device: Device, pCreateInfo: ^DescriptorUpdateTemplateCreateInfo, pAllocator: ^AllocationCallbacks, pDescriptorUpdateTemplate: ^DescriptorUpdateTemplate) -> Result ProcDestroyDescriptorUpdateTemplateKHR :: #type proc "system" (device: Device, descriptorUpdateTemplate: DescriptorUpdateTemplate, pAllocator: ^AllocationCallbacks) ProcUpdateDescriptorSetWithTemplateKHR :: #type proc "system" (device: Device, descriptorSet: DescriptorSet, descriptorUpdateTemplate: DescriptorUpdateTemplate, pData: rawptr) -ProcCreateRenderPass2KHR :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo2, pAllocator: ^AllocationCallbacks, pRenderPass: ^RenderPass) -> Result +ProcCreateRenderPass2KHR :: #type proc "system" (device: Device, pCreateInfo: ^RenderPassCreateInfo2, pAllocator: ^AllocationCallbacks, pRenderPass: [^]RenderPass) -> Result ProcCmdBeginRenderPass2KHR :: #type proc "system" (commandBuffer: CommandBuffer, pRenderPassBegin: ^RenderPassBeginInfo, pSubpassBeginInfo: ^SubpassBeginInfo) ProcCmdNextSubpass2KHR :: #type proc "system" (commandBuffer: CommandBuffer, pSubpassBeginInfo: ^SubpassBeginInfo, pSubpassEndInfo: ^SubpassEndInfo) ProcCmdEndRenderPass2KHR :: #type proc "system" (commandBuffer: CommandBuffer, pSubpassEndInfo: ^SubpassEndInfo) ProcGetSwapchainStatusKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR) -> Result -ProcGetPhysicalDeviceExternalFencePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalFenceInfo: ^PhysicalDeviceExternalFenceInfo, pExternalFenceProperties: ^ExternalFenceProperties) +ProcGetPhysicalDeviceExternalFencePropertiesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pExternalFenceInfo: ^PhysicalDeviceExternalFenceInfo, pExternalFenceProperties: [^]ExternalFenceProperties) ProcImportFenceFdKHR :: #type proc "system" (device: Device, pImportFenceFdInfo: ^ImportFenceFdInfoKHR) -> Result ProcGetFenceFdKHR :: #type proc "system" (device: Device, pGetFdInfo: ^FenceGetFdInfoKHR, pFd: ^c.int) -> Result -ProcEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: #type proc "system" (physicalDevice: PhysicalDevice, queueFamilyIndex: u32, pCounterCount: ^u32, pCounters: ^PerformanceCounterKHR, pCounterDescriptions: ^PerformanceCounterDescriptionKHR) -> Result -ProcGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPerformanceQueryCreateInfo: ^QueryPoolPerformanceCreateInfoKHR, pNumPasses: ^u32) +ProcEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: #type proc "system" (physicalDevice: PhysicalDevice, queueFamilyIndex: u32, pCounterCount: ^u32, pCounters: [^]PerformanceCounterKHR, pCounterDescriptions: [^]PerformanceCounterDescriptionKHR) -> Result +ProcGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPerformanceQueryCreateInfo: ^QueryPoolPerformanceCreateInfoKHR, pNumPasses: [^]u32) ProcAcquireProfilingLockKHR :: #type proc "system" (device: Device, pInfo: ^AcquireProfilingLockInfoKHR) -> Result ProcReleaseProfilingLockKHR :: #type proc "system" (device: Device) -ProcGetPhysicalDeviceSurfaceCapabilities2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: ^SurfaceCapabilities2KHR) -> Result -ProcGetPhysicalDeviceSurfaceFormats2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ^u32, pSurfaceFormats: ^SurfaceFormat2KHR) -> Result -ProcGetPhysicalDeviceDisplayProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^DisplayProperties2KHR) -> Result -ProcGetPhysicalDeviceDisplayPlaneProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^DisplayPlaneProperties2KHR) -> Result -ProcGetDisplayModeProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR, pPropertyCount: ^u32, pProperties: ^DisplayModeProperties2KHR) -> Result -ProcGetDisplayPlaneCapabilities2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pDisplayPlaneInfo: ^DisplayPlaneInfo2KHR, pCapabilities: ^DisplayPlaneCapabilities2KHR) -> Result -ProcGetImageMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^ImageMemoryRequirementsInfo2, pMemoryRequirements: ^MemoryRequirements2) -ProcGetBufferMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^BufferMemoryRequirementsInfo2, pMemoryRequirements: ^MemoryRequirements2) -ProcGetImageSparseMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^ImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: ^SparseImageMemoryRequirements2) +ProcGetPhysicalDeviceSurfaceCapabilities2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: [^]SurfaceCapabilities2KHR) -> Result +ProcGetPhysicalDeviceSurfaceFormats2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: ^u32, pSurfaceFormats: [^]SurfaceFormat2KHR) -> Result +ProcGetPhysicalDeviceDisplayProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]DisplayProperties2KHR) -> Result +ProcGetPhysicalDeviceDisplayPlaneProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]DisplayPlaneProperties2KHR) -> Result +ProcGetDisplayModeProperties2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR, pPropertyCount: ^u32, pProperties: [^]DisplayModeProperties2KHR) -> Result +ProcGetDisplayPlaneCapabilities2KHR :: #type proc "system" (physicalDevice: PhysicalDevice, pDisplayPlaneInfo: ^DisplayPlaneInfo2KHR, pCapabilities: [^]DisplayPlaneCapabilities2KHR) -> Result +ProcGetImageMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^ImageMemoryRequirementsInfo2, pMemoryRequirements: [^]MemoryRequirements2) +ProcGetBufferMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^BufferMemoryRequirementsInfo2, pMemoryRequirements: [^]MemoryRequirements2) +ProcGetImageSparseMemoryRequirements2KHR :: #type proc "system" (device: Device, pInfo: ^ImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: ^u32, pSparseMemoryRequirements: [^]SparseImageMemoryRequirements2) ProcCreateSamplerYcbcrConversionKHR :: #type proc "system" (device: Device, pCreateInfo: ^SamplerYcbcrConversionCreateInfo, pAllocator: ^AllocationCallbacks, pYcbcrConversion: ^SamplerYcbcrConversion) -> Result ProcDestroySamplerYcbcrConversionKHR :: #type proc "system" (device: Device, ycbcrConversion: SamplerYcbcrConversion, pAllocator: ^AllocationCallbacks) -ProcBindBufferMemory2KHR :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: ^BindBufferMemoryInfo) -> Result -ProcBindImageMemory2KHR :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: ^BindImageMemoryInfo) -> Result +ProcBindBufferMemory2KHR :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: [^]BindBufferMemoryInfo) -> Result +ProcBindImageMemory2KHR :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: [^]BindImageMemoryInfo) -> Result ProcGetDescriptorSetLayoutSupportKHR :: #type proc "system" (device: Device, pCreateInfo: ^DescriptorSetLayoutCreateInfo, pSupport: ^DescriptorSetLayoutSupport) ProcCmdDrawIndirectCountKHR :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) ProcCmdDrawIndexedIndirectCountKHR :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) ProcGetSemaphoreCounterValueKHR :: #type proc "system" (device: Device, semaphore: Semaphore, pValue: ^u64) -> Result ProcWaitSemaphoresKHR :: #type proc "system" (device: Device, pWaitInfo: ^SemaphoreWaitInfo, timeout: u64) -> Result ProcSignalSemaphoreKHR :: #type proc "system" (device: Device, pSignalInfo: ^SemaphoreSignalInfo) -> Result -ProcGetPhysicalDeviceFragmentShadingRatesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFragmentShadingRateCount: ^u32, pFragmentShadingRates: ^PhysicalDeviceFragmentShadingRateKHR) -> Result +ProcGetPhysicalDeviceFragmentShadingRatesKHR :: #type proc "system" (physicalDevice: PhysicalDevice, pFragmentShadingRateCount: ^u32, pFragmentShadingRates: [^]PhysicalDeviceFragmentShadingRateKHR) -> Result ProcCmdSetFragmentShadingRateKHR :: #type proc "system" (commandBuffer: CommandBuffer, pFragmentSize: ^Extent2D) ProcWaitForPresentKHR :: #type proc "system" (device: Device, swapchain: SwapchainKHR, presentId: u64, timeout: u64) -> Result ProcGetBufferDeviceAddressKHR :: #type proc "system" (device: Device, pInfo: ^BufferDeviceAddressInfo) -> DeviceAddress @@ -278,15 +278,15 @@ ProcDestroyDeferredOperationKHR :: #type pro ProcGetDeferredOperationMaxConcurrencyKHR :: #type proc "system" (device: Device, operation: DeferredOperationKHR) -> u32 ProcGetDeferredOperationResultKHR :: #type proc "system" (device: Device, operation: DeferredOperationKHR) -> Result ProcDeferredOperationJoinKHR :: #type proc "system" (device: Device, operation: DeferredOperationKHR) -> Result -ProcGetPipelineExecutablePropertiesKHR :: #type proc "system" (device: Device, pPipelineInfo: ^PipelineInfoKHR, pExecutableCount: ^u32, pProperties: ^PipelineExecutablePropertiesKHR) -> Result -ProcGetPipelineExecutableStatisticsKHR :: #type proc "system" (device: Device, pExecutableInfo: ^PipelineExecutableInfoKHR, pStatisticCount: ^u32, pStatistics: ^PipelineExecutableStatisticKHR) -> Result -ProcGetPipelineExecutableInternalRepresentationsKHR :: #type proc "system" (device: Device, pExecutableInfo: ^PipelineExecutableInfoKHR, pInternalRepresentationCount: ^u32, pInternalRepresentations: ^PipelineExecutableInternalRepresentationKHR) -> Result +ProcGetPipelineExecutablePropertiesKHR :: #type proc "system" (device: Device, pPipelineInfo: ^PipelineInfoKHR, pExecutableCount: ^u32, pProperties: [^]PipelineExecutablePropertiesKHR) -> Result +ProcGetPipelineExecutableStatisticsKHR :: #type proc "system" (device: Device, pExecutableInfo: ^PipelineExecutableInfoKHR, pStatisticCount: ^u32, pStatistics: [^]PipelineExecutableStatisticKHR) -> Result +ProcGetPipelineExecutableInternalRepresentationsKHR :: #type proc "system" (device: Device, pExecutableInfo: ^PipelineExecutableInfoKHR, pInternalRepresentationCount: ^u32, pInternalRepresentations: [^]PipelineExecutableInternalRepresentationKHR) -> Result ProcCmdSetEvent2KHR :: #type proc "system" (commandBuffer: CommandBuffer, event: Event, pDependencyInfo: ^DependencyInfoKHR) ProcCmdResetEvent2KHR :: #type proc "system" (commandBuffer: CommandBuffer, event: Event, stageMask: PipelineStageFlags2KHR) -ProcCmdWaitEvents2KHR :: #type proc "system" (commandBuffer: CommandBuffer, eventCount: u32, pEvents: ^Event, pDependencyInfos: ^DependencyInfoKHR) +ProcCmdWaitEvents2KHR :: #type proc "system" (commandBuffer: CommandBuffer, eventCount: u32, pEvents: [^]Event, pDependencyInfos: [^]DependencyInfoKHR) ProcCmdPipelineBarrier2KHR :: #type proc "system" (commandBuffer: CommandBuffer, pDependencyInfo: ^DependencyInfoKHR) ProcCmdWriteTimestamp2KHR :: #type proc "system" (commandBuffer: CommandBuffer, stage: PipelineStageFlags2KHR, queryPool: QueryPool, query: u32) -ProcQueueSubmit2KHR :: #type proc "system" (queue: Queue, submitCount: u32, pSubmits: ^SubmitInfo2KHR, fence: Fence) -> Result +ProcQueueSubmit2KHR :: #type proc "system" (queue: Queue, submitCount: u32, pSubmits: [^]SubmitInfo2KHR, fence: Fence) -> Result ProcCmdWriteBufferMarker2AMD :: #type proc "system" (commandBuffer: CommandBuffer, stage: PipelineStageFlags2KHR, dstBuffer: Buffer, dstOffset: DeviceSize, marker: u32) ProcGetQueueCheckpointData2NV :: #type proc "system" (queue: Queue, pCheckpointDataCount: ^u32, pCheckpointData: ^CheckpointData2NV) ProcCmdCopyBuffer2KHR :: #type proc "system" (commandBuffer: CommandBuffer, pCopyBufferInfo: ^CopyBufferInfo2KHR) @@ -304,9 +304,9 @@ ProcDebugMarkerSetObjectNameEXT :: #type pro ProcCmdDebugMarkerBeginEXT :: #type proc "system" (commandBuffer: CommandBuffer, pMarkerInfo: ^DebugMarkerMarkerInfoEXT) ProcCmdDebugMarkerEndEXT :: #type proc "system" (commandBuffer: CommandBuffer) ProcCmdDebugMarkerInsertEXT :: #type proc "system" (commandBuffer: CommandBuffer, pMarkerInfo: ^DebugMarkerMarkerInfoEXT) -ProcCmdBindTransformFeedbackBuffersEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: ^Buffer, pOffsets: ^DeviceSize, pSizes: ^DeviceSize) -ProcCmdBeginTransformFeedbackEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: ^Buffer, pCounterBufferOffsets: ^DeviceSize) -ProcCmdEndTransformFeedbackEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: ^Buffer, pCounterBufferOffsets: ^DeviceSize) +ProcCmdBindTransformFeedbackBuffersEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: [^]Buffer, pOffsets: [^]DeviceSize, pSizes: [^]DeviceSize) +ProcCmdBeginTransformFeedbackEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: [^]Buffer, pCounterBufferOffsets: [^]DeviceSize) +ProcCmdEndTransformFeedbackEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: [^]Buffer, pCounterBufferOffsets: [^]DeviceSize) ProcCmdBeginQueryIndexedEXT :: #type proc "system" (commandBuffer: CommandBuffer, queryPool: QueryPool, query: u32, flags: QueryControlFlags, index: u32) ProcCmdEndQueryIndexedEXT :: #type proc "system" (commandBuffer: CommandBuffer, queryPool: QueryPool, query: u32, index: u32) ProcCmdDrawIndirectByteCountEXT :: #type proc "system" (commandBuffer: CommandBuffer, instanceCount: u32, firstInstance: u32, counterBuffer: Buffer, counterBufferOffset: DeviceSize, counterOffset: u32, vertexStride: u32) @@ -316,24 +316,24 @@ ProcDestroyCuModuleNVX :: #type pro ProcDestroyCuFunctionNVX :: #type proc "system" (device: Device, function: CuFunctionNVX, pAllocator: ^AllocationCallbacks) ProcCmdCuLaunchKernelNVX :: #type proc "system" (commandBuffer: CommandBuffer, pLaunchInfo: ^CuLaunchInfoNVX) ProcGetImageViewHandleNVX :: #type proc "system" (device: Device, pInfo: ^ImageViewHandleInfoNVX) -> u32 -ProcGetImageViewAddressNVX :: #type proc "system" (device: Device, imageView: ImageView, pProperties: ^ImageViewAddressPropertiesNVX) -> Result +ProcGetImageViewAddressNVX :: #type proc "system" (device: Device, imageView: ImageView, pProperties: [^]ImageViewAddressPropertiesNVX) -> Result ProcCmdDrawIndirectCountAMD :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) ProcCmdDrawIndexedIndirectCountAMD :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) ProcGetShaderInfoAMD :: #type proc "system" (device: Device, pipeline: Pipeline, shaderStage: ShaderStageFlags, infoType: ShaderInfoTypeAMD, pInfoSize: ^int, pInfo: rawptr) -> Result -ProcGetPhysicalDeviceExternalImageFormatPropertiesNV :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, tiling: ImageTiling, usage: ImageUsageFlags, flags: ImageCreateFlags, externalHandleType: ExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: ^ExternalImageFormatPropertiesNV) -> Result +ProcGetPhysicalDeviceExternalImageFormatPropertiesNV :: #type proc "system" (physicalDevice: PhysicalDevice, format: Format, type: ImageType, tiling: ImageTiling, usage: ImageUsageFlags, flags: ImageCreateFlags, externalHandleType: ExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: [^]ExternalImageFormatPropertiesNV) -> Result ProcCmdBeginConditionalRenderingEXT :: #type proc "system" (commandBuffer: CommandBuffer, pConditionalRenderingBegin: ^ConditionalRenderingBeginInfoEXT) ProcCmdEndConditionalRenderingEXT :: #type proc "system" (commandBuffer: CommandBuffer) -ProcCmdSetViewportWScalingNV :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pViewportWScalings: ^ViewportWScalingNV) +ProcCmdSetViewportWScalingNV :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pViewportWScalings: [^]ViewportWScalingNV) ProcReleaseDisplayEXT :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR) -> Result -ProcGetPhysicalDeviceSurfaceCapabilities2EXT :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceCapabilities: ^SurfaceCapabilities2EXT) -> Result +ProcGetPhysicalDeviceSurfaceCapabilities2EXT :: #type proc "system" (physicalDevice: PhysicalDevice, surface: SurfaceKHR, pSurfaceCapabilities: [^]SurfaceCapabilities2EXT) -> Result ProcDisplayPowerControlEXT :: #type proc "system" (device: Device, display: DisplayKHR, pDisplayPowerInfo: ^DisplayPowerInfoEXT) -> Result ProcRegisterDeviceEventEXT :: #type proc "system" (device: Device, pDeviceEventInfo: ^DeviceEventInfoEXT, pAllocator: ^AllocationCallbacks, pFence: ^Fence) -> Result ProcRegisterDisplayEventEXT :: #type proc "system" (device: Device, display: DisplayKHR, pDisplayEventInfo: ^DisplayEventInfoEXT, pAllocator: ^AllocationCallbacks, pFence: ^Fence) -> Result ProcGetSwapchainCounterEXT :: #type proc "system" (device: Device, swapchain: SwapchainKHR, counter: SurfaceCounterFlagsEXT, pCounterValue: ^u64) -> Result -ProcGetRefreshCycleDurationGOOGLE :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pDisplayTimingProperties: ^RefreshCycleDurationGOOGLE) -> Result -ProcGetPastPresentationTimingGOOGLE :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pPresentationTimingCount: ^u32, pPresentationTimings: ^PastPresentationTimingGOOGLE) -> Result -ProcCmdSetDiscardRectangleEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstDiscardRectangle: u32, discardRectangleCount: u32, pDiscardRectangles: ^Rect2D) -ProcSetHdrMetadataEXT :: #type proc "system" (device: Device, swapchainCount: u32, pSwapchains: ^SwapchainKHR, pMetadata: ^HdrMetadataEXT) +ProcGetRefreshCycleDurationGOOGLE :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pDisplayTimingProperties: [^]RefreshCycleDurationGOOGLE) -> Result +ProcGetPastPresentationTimingGOOGLE :: #type proc "system" (device: Device, swapchain: SwapchainKHR, pPresentationTimingCount: ^u32, pPresentationTimings: [^]PastPresentationTimingGOOGLE) -> Result +ProcCmdSetDiscardRectangleEXT :: #type proc "system" (commandBuffer: CommandBuffer, firstDiscardRectangle: u32, discardRectangleCount: u32, pDiscardRectangles: [^]Rect2D) +ProcSetHdrMetadataEXT :: #type proc "system" (device: Device, swapchainCount: u32, pSwapchains: [^]SwapchainKHR, pMetadata: ^HdrMetadataEXT) ProcDebugUtilsMessengerCallbackEXT :: #type proc "system" (messageSeverity: DebugUtilsMessageSeverityFlagsEXT, messageTypes: DebugUtilsMessageTypeFlagsEXT, pCallbackData: ^DebugUtilsMessengerCallbackDataEXT, pUserData: rawptr) -> b32 ProcSetDebugUtilsObjectNameEXT :: #type proc "system" (device: Device, pNameInfo: ^DebugUtilsObjectNameInfoEXT) -> Result ProcSetDebugUtilsObjectTagEXT :: #type proc "system" (device: Device, pTagInfo: ^DebugUtilsObjectTagInfoEXT) -> Result @@ -347,36 +347,36 @@ ProcCreateDebugUtilsMessengerEXT :: #type pro ProcDestroyDebugUtilsMessengerEXT :: #type proc "system" (instance: Instance, messenger: DebugUtilsMessengerEXT, pAllocator: ^AllocationCallbacks) ProcSubmitDebugUtilsMessageEXT :: #type proc "system" (instance: Instance, messageSeverity: DebugUtilsMessageSeverityFlagsEXT, messageTypes: DebugUtilsMessageTypeFlagsEXT, pCallbackData: ^DebugUtilsMessengerCallbackDataEXT) ProcCmdSetSampleLocationsEXT :: #type proc "system" (commandBuffer: CommandBuffer, pSampleLocationsInfo: ^SampleLocationsInfoEXT) -ProcGetPhysicalDeviceMultisamplePropertiesEXT :: #type proc "system" (physicalDevice: PhysicalDevice, samples: SampleCountFlags, pMultisampleProperties: ^MultisamplePropertiesEXT) -ProcGetImageDrmFormatModifierPropertiesEXT :: #type proc "system" (device: Device, image: Image, pProperties: ^ImageDrmFormatModifierPropertiesEXT) -> Result +ProcGetPhysicalDeviceMultisamplePropertiesEXT :: #type proc "system" (physicalDevice: PhysicalDevice, samples: SampleCountFlags, pMultisampleProperties: [^]MultisamplePropertiesEXT) +ProcGetImageDrmFormatModifierPropertiesEXT :: #type proc "system" (device: Device, image: Image, pProperties: [^]ImageDrmFormatModifierPropertiesEXT) -> Result ProcCreateValidationCacheEXT :: #type proc "system" (device: Device, pCreateInfo: ^ValidationCacheCreateInfoEXT, pAllocator: ^AllocationCallbacks, pValidationCache: ^ValidationCacheEXT) -> Result ProcDestroyValidationCacheEXT :: #type proc "system" (device: Device, validationCache: ValidationCacheEXT, pAllocator: ^AllocationCallbacks) -ProcMergeValidationCachesEXT :: #type proc "system" (device: Device, dstCache: ValidationCacheEXT, srcCacheCount: u32, pSrcCaches: ^ValidationCacheEXT) -> Result +ProcMergeValidationCachesEXT :: #type proc "system" (device: Device, dstCache: ValidationCacheEXT, srcCacheCount: u32, pSrcCaches: [^]ValidationCacheEXT) -> Result ProcGetValidationCacheDataEXT :: #type proc "system" (device: Device, validationCache: ValidationCacheEXT, pDataSize: ^int, pData: rawptr) -> Result ProcCmdBindShadingRateImageNV :: #type proc "system" (commandBuffer: CommandBuffer, imageView: ImageView, imageLayout: ImageLayout) -ProcCmdSetViewportShadingRatePaletteNV :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pShadingRatePalettes: ^ShadingRatePaletteNV) -ProcCmdSetCoarseSampleOrderNV :: #type proc "system" (commandBuffer: CommandBuffer, sampleOrderType: CoarseSampleOrderTypeNV, customSampleOrderCount: u32, pCustomSampleOrders: ^CoarseSampleOrderCustomNV) +ProcCmdSetViewportShadingRatePaletteNV :: #type proc "system" (commandBuffer: CommandBuffer, firstViewport: u32, viewportCount: u32, pShadingRatePalettes: [^]ShadingRatePaletteNV) +ProcCmdSetCoarseSampleOrderNV :: #type proc "system" (commandBuffer: CommandBuffer, sampleOrderType: CoarseSampleOrderTypeNV, customSampleOrderCount: u32, pCustomSampleOrders: [^]CoarseSampleOrderCustomNV) ProcCreateAccelerationStructureNV :: #type proc "system" (device: Device, pCreateInfo: ^AccelerationStructureCreateInfoNV, pAllocator: ^AllocationCallbacks, pAccelerationStructure: ^AccelerationStructureNV) -> Result ProcDestroyAccelerationStructureNV :: #type proc "system" (device: Device, accelerationStructure: AccelerationStructureNV, pAllocator: ^AllocationCallbacks) -ProcGetAccelerationStructureMemoryRequirementsNV :: #type proc "system" (device: Device, pInfo: ^AccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: ^MemoryRequirements2KHR) -ProcBindAccelerationStructureMemoryNV :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: ^BindAccelerationStructureMemoryInfoNV) -> Result +ProcGetAccelerationStructureMemoryRequirementsNV :: #type proc "system" (device: Device, pInfo: ^AccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: [^]MemoryRequirements2KHR) +ProcBindAccelerationStructureMemoryNV :: #type proc "system" (device: Device, bindInfoCount: u32, pBindInfos: [^]BindAccelerationStructureMemoryInfoNV) -> Result ProcCmdBuildAccelerationStructureNV :: #type proc "system" (commandBuffer: CommandBuffer, pInfo: ^AccelerationStructureInfoNV, instanceData: Buffer, instanceOffset: DeviceSize, update: b32, dst: AccelerationStructureNV, src: AccelerationStructureNV, scratch: Buffer, scratchOffset: DeviceSize) ProcCmdCopyAccelerationStructureNV :: #type proc "system" (commandBuffer: CommandBuffer, dst: AccelerationStructureNV, src: AccelerationStructureNV, mode: CopyAccelerationStructureModeKHR) ProcCmdTraceRaysNV :: #type proc "system" (commandBuffer: CommandBuffer, raygenShaderBindingTableBuffer: Buffer, raygenShaderBindingOffset: DeviceSize, missShaderBindingTableBuffer: Buffer, missShaderBindingOffset: DeviceSize, missShaderBindingStride: DeviceSize, hitShaderBindingTableBuffer: Buffer, hitShaderBindingOffset: DeviceSize, hitShaderBindingStride: DeviceSize, callableShaderBindingTableBuffer: Buffer, callableShaderBindingOffset: DeviceSize, callableShaderBindingStride: DeviceSize, width: u32, height: u32, depth: u32) -ProcCreateRayTracingPipelinesNV :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: ^RayTracingPipelineCreateInfoNV, pAllocator: ^AllocationCallbacks, pPipelines: ^Pipeline) -> Result +ProcCreateRayTracingPipelinesNV :: #type proc "system" (device: Device, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: [^]RayTracingPipelineCreateInfoNV, pAllocator: ^AllocationCallbacks, pPipelines: [^]Pipeline) -> Result ProcGetRayTracingShaderGroupHandlesKHR :: #type proc "system" (device: Device, pipeline: Pipeline, firstGroup: u32, groupCount: u32, dataSize: int, pData: rawptr) -> Result ProcGetRayTracingShaderGroupHandlesNV :: #type proc "system" (device: Device, pipeline: Pipeline, firstGroup: u32, groupCount: u32, dataSize: int, pData: rawptr) -> Result ProcGetAccelerationStructureHandleNV :: #type proc "system" (device: Device, accelerationStructure: AccelerationStructureNV, dataSize: int, pData: rawptr) -> Result -ProcCmdWriteAccelerationStructuresPropertiesNV :: #type proc "system" (commandBuffer: CommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: ^AccelerationStructureNV, queryType: QueryType, queryPool: QueryPool, firstQuery: u32) +ProcCmdWriteAccelerationStructuresPropertiesNV :: #type proc "system" (commandBuffer: CommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: [^]AccelerationStructureNV, queryType: QueryType, queryPool: QueryPool, firstQuery: u32) ProcCompileDeferredNV :: #type proc "system" (device: Device, pipeline: Pipeline, shader: u32) -> Result -ProcGetMemoryHostPointerPropertiesEXT :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, pHostPointer: rawptr, pMemoryHostPointerProperties: ^MemoryHostPointerPropertiesEXT) -> Result +ProcGetMemoryHostPointerPropertiesEXT :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, pHostPointer: rawptr, pMemoryHostPointerProperties: [^]MemoryHostPointerPropertiesEXT) -> Result ProcCmdWriteBufferMarkerAMD :: #type proc "system" (commandBuffer: CommandBuffer, pipelineStage: PipelineStageFlags, dstBuffer: Buffer, dstOffset: DeviceSize, marker: u32) -ProcGetPhysicalDeviceCalibrateableTimeDomainsEXT :: #type proc "system" (physicalDevice: PhysicalDevice, pTimeDomainCount: ^u32, pTimeDomains: ^TimeDomainEXT) -> Result -ProcGetCalibratedTimestampsEXT :: #type proc "system" (device: Device, timestampCount: u32, pTimestampInfos: ^CalibratedTimestampInfoEXT, pTimestamps: ^u64, pMaxDeviation: ^u64) -> Result +ProcGetPhysicalDeviceCalibrateableTimeDomainsEXT :: #type proc "system" (physicalDevice: PhysicalDevice, pTimeDomainCount: ^u32, pTimeDomains: [^]TimeDomainEXT) -> Result +ProcGetCalibratedTimestampsEXT :: #type proc "system" (device: Device, timestampCount: u32, pTimestampInfos: [^]CalibratedTimestampInfoEXT, pTimestamps: [^]u64, pMaxDeviation: ^u64) -> Result ProcCmdDrawMeshTasksNV :: #type proc "system" (commandBuffer: CommandBuffer, taskCount: u32, firstTask: u32) ProcCmdDrawMeshTasksIndirectNV :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, drawCount: u32, stride: u32) ProcCmdDrawMeshTasksIndirectCountNV :: #type proc "system" (commandBuffer: CommandBuffer, buffer: Buffer, offset: DeviceSize, countBuffer: Buffer, countBufferOffset: DeviceSize, maxDrawCount: u32, stride: u32) -ProcCmdSetExclusiveScissorNV :: #type proc "system" (commandBuffer: CommandBuffer, firstExclusiveScissor: u32, exclusiveScissorCount: u32, pExclusiveScissors: ^Rect2D) +ProcCmdSetExclusiveScissorNV :: #type proc "system" (commandBuffer: CommandBuffer, firstExclusiveScissor: u32, exclusiveScissorCount: u32, pExclusiveScissors: [^]Rect2D) ProcCmdSetCheckpointNV :: #type proc "system" (commandBuffer: CommandBuffer, pCheckpointMarker: rawptr) ProcGetQueueCheckpointDataNV :: #type proc "system" (queue: Queue, pCheckpointDataCount: ^u32, pCheckpointData: ^CheckpointDataNV) ProcInitializePerformanceApiINTEL :: #type proc "system" (device: Device, pInitializeInfo: ^InitializePerformanceApiInfoINTEL) -> Result @@ -390,25 +390,25 @@ ProcQueueSetPerformanceConfigurationINTEL :: #type pro ProcGetPerformanceParameterINTEL :: #type proc "system" (device: Device, parameter: PerformanceParameterTypeINTEL, pValue: ^PerformanceValueINTEL) -> Result ProcSetLocalDimmingAMD :: #type proc "system" (device: Device, swapChain: SwapchainKHR, localDimmingEnable: b32) ProcGetBufferDeviceAddressEXT :: #type proc "system" (device: Device, pInfo: ^BufferDeviceAddressInfo) -> DeviceAddress -ProcGetPhysicalDeviceToolPropertiesEXT :: #type proc "system" (physicalDevice: PhysicalDevice, pToolCount: ^u32, pToolProperties: ^PhysicalDeviceToolPropertiesEXT) -> Result -ProcGetPhysicalDeviceCooperativeMatrixPropertiesNV :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: ^CooperativeMatrixPropertiesNV) -> Result -ProcGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV :: #type proc "system" (physicalDevice: PhysicalDevice, pCombinationCount: ^u32, pCombinations: ^FramebufferMixedSamplesCombinationNV) -> Result +ProcGetPhysicalDeviceToolPropertiesEXT :: #type proc "system" (physicalDevice: PhysicalDevice, pToolCount: ^u32, pToolProperties: [^]PhysicalDeviceToolPropertiesEXT) -> Result +ProcGetPhysicalDeviceCooperativeMatrixPropertiesNV :: #type proc "system" (physicalDevice: PhysicalDevice, pPropertyCount: ^u32, pProperties: [^]CooperativeMatrixPropertiesNV) -> Result +ProcGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV :: #type proc "system" (physicalDevice: PhysicalDevice, pCombinationCount: ^u32, pCombinations: [^]FramebufferMixedSamplesCombinationNV) -> Result ProcCreateHeadlessSurfaceEXT :: #type proc "system" (instance: Instance, pCreateInfo: ^HeadlessSurfaceCreateInfoEXT, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result ProcCmdSetLineStippleEXT :: #type proc "system" (commandBuffer: CommandBuffer, lineStippleFactor: u32, lineStipplePattern: u16) ProcResetQueryPoolEXT :: #type proc "system" (device: Device, queryPool: QueryPool, firstQuery: u32, queryCount: u32) ProcCmdSetCullModeEXT :: #type proc "system" (commandBuffer: CommandBuffer, cullMode: CullModeFlags) ProcCmdSetFrontFaceEXT :: #type proc "system" (commandBuffer: CommandBuffer, frontFace: FrontFace) ProcCmdSetPrimitiveTopologyEXT :: #type proc "system" (commandBuffer: CommandBuffer, primitiveTopology: PrimitiveTopology) -ProcCmdSetViewportWithCountEXT :: #type proc "system" (commandBuffer: CommandBuffer, viewportCount: u32, pViewports: ^Viewport) -ProcCmdSetScissorWithCountEXT :: #type proc "system" (commandBuffer: CommandBuffer, scissorCount: u32, pScissors: ^Rect2D) -ProcCmdBindVertexBuffers2EXT :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: ^Buffer, pOffsets: ^DeviceSize, pSizes: ^DeviceSize, pStrides: ^DeviceSize) +ProcCmdSetViewportWithCountEXT :: #type proc "system" (commandBuffer: CommandBuffer, viewportCount: u32, pViewports: [^]Viewport) +ProcCmdSetScissorWithCountEXT :: #type proc "system" (commandBuffer: CommandBuffer, scissorCount: u32, pScissors: [^]Rect2D) +ProcCmdBindVertexBuffers2EXT :: #type proc "system" (commandBuffer: CommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: [^]Buffer, pOffsets: [^]DeviceSize, pSizes: [^]DeviceSize, pStrides: [^]DeviceSize) ProcCmdSetDepthTestEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, depthTestEnable: b32) ProcCmdSetDepthWriteEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, depthWriteEnable: b32) ProcCmdSetDepthCompareOpEXT :: #type proc "system" (commandBuffer: CommandBuffer, depthCompareOp: CompareOp) ProcCmdSetDepthBoundsTestEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, depthBoundsTestEnable: b32) ProcCmdSetStencilTestEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, stencilTestEnable: b32) ProcCmdSetStencilOpEXT :: #type proc "system" (commandBuffer: CommandBuffer, faceMask: StencilFaceFlags, failOp: StencilOp, passOp: StencilOp, depthFailOp: StencilOp, compareOp: CompareOp) -ProcGetGeneratedCommandsMemoryRequirementsNV :: #type proc "system" (device: Device, pInfo: ^GeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: ^MemoryRequirements2) +ProcGetGeneratedCommandsMemoryRequirementsNV :: #type proc "system" (device: Device, pInfo: ^GeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: [^]MemoryRequirements2) ProcCmdPreprocessGeneratedCommandsNV :: #type proc "system" (commandBuffer: CommandBuffer, pGeneratedCommandsInfo: ^GeneratedCommandsInfoNV) ProcCmdExecuteGeneratedCommandsNV :: #type proc "system" (commandBuffer: CommandBuffer, isPreprocessed: b32, pGeneratedCommandsInfo: ^GeneratedCommandsInfoNV) ProcCmdBindPipelineShaderGroupNV :: #type proc "system" (commandBuffer: CommandBuffer, pipelineBindPoint: PipelineBindPoint, pipeline: Pipeline, groupIndex: u32) @@ -424,11 +424,11 @@ ProcGetPrivateDataEXT :: #type pro ProcCmdSetFragmentShadingRateEnumNV :: #type proc "system" (commandBuffer: CommandBuffer, shadingRate: FragmentShadingRateNV) ProcAcquireWinrtDisplayNV :: #type proc "system" (physicalDevice: PhysicalDevice, display: DisplayKHR) -> Result ProcGetWinrtDisplayNV :: #type proc "system" (physicalDevice: PhysicalDevice, deviceRelativeId: u32, pDisplay: ^DisplayKHR) -> Result -ProcCmdSetVertexInputEXT :: #type proc "system" (commandBuffer: CommandBuffer, vertexBindingDescriptionCount: u32, pVertexBindingDescriptions: ^VertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: u32, pVertexAttributeDescriptions: ^VertexInputAttributeDescription2EXT) +ProcCmdSetVertexInputEXT :: #type proc "system" (commandBuffer: CommandBuffer, vertexBindingDescriptionCount: u32, pVertexBindingDescriptions: [^]VertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: u32, pVertexAttributeDescriptions: [^]VertexInputAttributeDescription2EXT) ProcGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI :: #type proc "system" (device: Device, renderpass: RenderPass, pMaxWorkgroupSize: ^Extent2D) -> Result ProcCmdSubpassShadingHUAWEI :: #type proc "system" (commandBuffer: CommandBuffer) ProcCmdBindInvocationMaskHUAWEI :: #type proc "system" (commandBuffer: CommandBuffer, imageView: ImageView, imageLayout: ImageLayout) -ProcGetMemoryRemoteAddressNV :: #type proc "system" (device: Device, pMemoryGetRemoteAddressInfo: ^MemoryGetRemoteAddressInfoNV, pAddress: ^RemoteAddressNV) -> Result +ProcGetMemoryRemoteAddressNV :: #type proc "system" (device: Device, pMemoryGetRemoteAddressInfo: ^MemoryGetRemoteAddressInfoNV, pAddress: [^]RemoteAddressNV) -> Result ProcCmdSetPatchControlPointsEXT :: #type proc "system" (commandBuffer: CommandBuffer, patchControlPoints: u32) ProcCmdSetRasterizerDiscardEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, rasterizerDiscardEnable: b32) ProcCmdSetDepthBiasEnableEXT :: #type proc "system" (commandBuffer: CommandBuffer, depthBiasEnable: b32) @@ -439,39 +439,39 @@ ProcCmdDrawMultiIndexedEXT :: #type pro ProcSetDeviceMemoryPriorityEXT :: #type proc "system" (device: Device, memory: DeviceMemory, priority: f32) ProcCreateAccelerationStructureKHR :: #type proc "system" (device: Device, pCreateInfo: ^AccelerationStructureCreateInfoKHR, pAllocator: ^AllocationCallbacks, pAccelerationStructure: ^AccelerationStructureKHR) -> Result ProcDestroyAccelerationStructureKHR :: #type proc "system" (device: Device, accelerationStructure: AccelerationStructureKHR, pAllocator: ^AllocationCallbacks) -ProcCmdBuildAccelerationStructuresKHR :: #type proc "system" (commandBuffer: CommandBuffer, infoCount: u32, pInfos: ^AccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ^^AccelerationStructureBuildRangeInfoKHR) -ProcCmdBuildAccelerationStructuresIndirectKHR :: #type proc "system" (commandBuffer: CommandBuffer, infoCount: u32, pInfos: ^AccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: ^DeviceAddress, pIndirectStrides: ^u32, ppMaxPrimitiveCounts: ^^u32) -ProcBuildAccelerationStructuresKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, infoCount: u32, pInfos: ^AccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ^^AccelerationStructureBuildRangeInfoKHR) -> Result +ProcCmdBuildAccelerationStructuresKHR :: #type proc "system" (commandBuffer: CommandBuffer, infoCount: u32, pInfos: [^]AccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ^[^]AccelerationStructureBuildRangeInfoKHR) +ProcCmdBuildAccelerationStructuresIndirectKHR :: #type proc "system" (commandBuffer: CommandBuffer, infoCount: u32, pInfos: [^]AccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: [^]DeviceAddress, pIndirectStrides: [^]u32, ppMaxPrimitiveCounts: ^[^]u32) +ProcBuildAccelerationStructuresKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, infoCount: u32, pInfos: [^]AccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: ^[^]AccelerationStructureBuildRangeInfoKHR) -> Result ProcCopyAccelerationStructureKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, pInfo: ^CopyAccelerationStructureInfoKHR) -> Result ProcCopyAccelerationStructureToMemoryKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, pInfo: ^CopyAccelerationStructureToMemoryInfoKHR) -> Result ProcCopyMemoryToAccelerationStructureKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, pInfo: ^CopyMemoryToAccelerationStructureInfoKHR) -> Result -ProcWriteAccelerationStructuresPropertiesKHR :: #type proc "system" (device: Device, accelerationStructureCount: u32, pAccelerationStructures: ^AccelerationStructureKHR, queryType: QueryType, dataSize: int, pData: rawptr, stride: int) -> Result +ProcWriteAccelerationStructuresPropertiesKHR :: #type proc "system" (device: Device, accelerationStructureCount: u32, pAccelerationStructures: [^]AccelerationStructureKHR, queryType: QueryType, dataSize: int, pData: rawptr, stride: int) -> Result ProcCmdCopyAccelerationStructureKHR :: #type proc "system" (commandBuffer: CommandBuffer, pInfo: ^CopyAccelerationStructureInfoKHR) ProcCmdCopyAccelerationStructureToMemoryKHR :: #type proc "system" (commandBuffer: CommandBuffer, pInfo: ^CopyAccelerationStructureToMemoryInfoKHR) ProcCmdCopyMemoryToAccelerationStructureKHR :: #type proc "system" (commandBuffer: CommandBuffer, pInfo: ^CopyMemoryToAccelerationStructureInfoKHR) ProcGetAccelerationStructureDeviceAddressKHR :: #type proc "system" (device: Device, pInfo: ^AccelerationStructureDeviceAddressInfoKHR) -> DeviceAddress -ProcCmdWriteAccelerationStructuresPropertiesKHR :: #type proc "system" (commandBuffer: CommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: ^AccelerationStructureKHR, queryType: QueryType, queryPool: QueryPool, firstQuery: u32) +ProcCmdWriteAccelerationStructuresPropertiesKHR :: #type proc "system" (commandBuffer: CommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: [^]AccelerationStructureKHR, queryType: QueryType, queryPool: QueryPool, firstQuery: u32) ProcGetDeviceAccelerationStructureCompatibilityKHR :: #type proc "system" (device: Device, pVersionInfo: ^AccelerationStructureVersionInfoKHR, pCompatibility: ^AccelerationStructureCompatibilityKHR) -ProcGetAccelerationStructureBuildSizesKHR :: #type proc "system" (device: Device, buildType: AccelerationStructureBuildTypeKHR, pBuildInfo: ^AccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: ^u32, pSizeInfo: ^AccelerationStructureBuildSizesInfoKHR) -ProcCmdTraceRaysKHR :: #type proc "system" (commandBuffer: CommandBuffer, pRaygenShaderBindingTable: ^StridedDeviceAddressRegionKHR, pMissShaderBindingTable: ^StridedDeviceAddressRegionKHR, pHitShaderBindingTable: ^StridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ^StridedDeviceAddressRegionKHR, width: u32, height: u32, depth: u32) -ProcCreateRayTracingPipelinesKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: ^RayTracingPipelineCreateInfoKHR, pAllocator: ^AllocationCallbacks, pPipelines: ^Pipeline) -> Result +ProcGetAccelerationStructureBuildSizesKHR :: #type proc "system" (device: Device, buildType: AccelerationStructureBuildTypeKHR, pBuildInfo: ^AccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: [^]u32, pSizeInfo: ^AccelerationStructureBuildSizesInfoKHR) +ProcCmdTraceRaysKHR :: #type proc "system" (commandBuffer: CommandBuffer, pRaygenShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pMissShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pHitShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pCallableShaderBindingTable: [^]StridedDeviceAddressRegionKHR, width: u32, height: u32, depth: u32) +ProcCreateRayTracingPipelinesKHR :: #type proc "system" (device: Device, deferredOperation: DeferredOperationKHR, pipelineCache: PipelineCache, createInfoCount: u32, pCreateInfos: [^]RayTracingPipelineCreateInfoKHR, pAllocator: ^AllocationCallbacks, pPipelines: [^]Pipeline) -> Result ProcGetRayTracingCaptureReplayShaderGroupHandlesKHR :: #type proc "system" (device: Device, pipeline: Pipeline, firstGroup: u32, groupCount: u32, dataSize: int, pData: rawptr) -> Result -ProcCmdTraceRaysIndirectKHR :: #type proc "system" (commandBuffer: CommandBuffer, pRaygenShaderBindingTable: ^StridedDeviceAddressRegionKHR, pMissShaderBindingTable: ^StridedDeviceAddressRegionKHR, pHitShaderBindingTable: ^StridedDeviceAddressRegionKHR, pCallableShaderBindingTable: ^StridedDeviceAddressRegionKHR, indirectDeviceAddress: DeviceAddress) +ProcCmdTraceRaysIndirectKHR :: #type proc "system" (commandBuffer: CommandBuffer, pRaygenShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pMissShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pHitShaderBindingTable: [^]StridedDeviceAddressRegionKHR, pCallableShaderBindingTable: [^]StridedDeviceAddressRegionKHR, indirectDeviceAddress: DeviceAddress) ProcGetRayTracingShaderGroupStackSizeKHR :: #type proc "system" (device: Device, pipeline: Pipeline, group: u32, groupShader: ShaderGroupShaderKHR) -> DeviceSize ProcCmdSetRayTracingPipelineStackSizeKHR :: #type proc "system" (commandBuffer: CommandBuffer, pipelineStackSize: u32) ProcCreateWin32SurfaceKHR :: #type proc "system" (instance: Instance, pCreateInfo: ^Win32SurfaceCreateInfoKHR, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result ProcGetPhysicalDeviceWin32PresentationSupportKHR :: #type proc "system" (physicalDevice: PhysicalDevice, queueFamilyIndex: u32) -> b32 ProcGetMemoryWin32HandleKHR :: #type proc "system" (device: Device, pGetWin32HandleInfo: ^MemoryGetWin32HandleInfoKHR, pHandle: ^HANDLE) -> Result -ProcGetMemoryWin32HandlePropertiesKHR :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, handle: HANDLE, pMemoryWin32HandleProperties: ^MemoryWin32HandlePropertiesKHR) -> Result +ProcGetMemoryWin32HandlePropertiesKHR :: #type proc "system" (device: Device, handleType: ExternalMemoryHandleTypeFlags, handle: HANDLE, pMemoryWin32HandleProperties: [^]MemoryWin32HandlePropertiesKHR) -> Result ProcImportSemaphoreWin32HandleKHR :: #type proc "system" (device: Device, pImportSemaphoreWin32HandleInfo: ^ImportSemaphoreWin32HandleInfoKHR) -> Result ProcGetSemaphoreWin32HandleKHR :: #type proc "system" (device: Device, pGetWin32HandleInfo: ^SemaphoreGetWin32HandleInfoKHR, pHandle: ^HANDLE) -> Result ProcImportFenceWin32HandleKHR :: #type proc "system" (device: Device, pImportFenceWin32HandleInfo: ^ImportFenceWin32HandleInfoKHR) -> Result ProcGetFenceWin32HandleKHR :: #type proc "system" (device: Device, pGetWin32HandleInfo: ^FenceGetWin32HandleInfoKHR, pHandle: ^HANDLE) -> Result ProcGetMemoryWin32HandleNV :: #type proc "system" (device: Device, memory: DeviceMemory, handleType: ExternalMemoryHandleTypeFlagsNV, pHandle: ^HANDLE) -> Result -ProcGetPhysicalDeviceSurfacePresentModes2EXT :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ^u32, pPresentModes: ^PresentModeKHR) -> Result +ProcGetPhysicalDeviceSurfacePresentModes2EXT :: #type proc "system" (physicalDevice: PhysicalDevice, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pPresentModeCount: ^u32, pPresentModes: [^]PresentModeKHR) -> Result ProcAcquireFullScreenExclusiveModeEXT :: #type proc "system" (device: Device, swapchain: SwapchainKHR) -> Result ProcReleaseFullScreenExclusiveModeEXT :: #type proc "system" (device: Device, swapchain: SwapchainKHR) -> Result -ProcGetDeviceGroupSurfacePresentModes2EXT :: #type proc "system" (device: Device, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pModes: ^DeviceGroupPresentModeFlagsKHR) -> Result +ProcGetDeviceGroupSurfacePresentModes2EXT :: #type proc "system" (device: Device, pSurfaceInfo: ^PhysicalDeviceSurfaceInfo2KHR, pModes: [^]DeviceGroupPresentModeFlagsKHR) -> Result ProcCreateMetalSurfaceEXT :: #type proc "system" (instance: Instance, pCreateInfo: ^MetalSurfaceCreateInfoEXT, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result ProcCreateMacOSSurfaceMVK :: #type proc "system" (instance: Instance, pCreateInfo: ^MacOSSurfaceCreateInfoMVK, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result ProcCreateIOSSurfaceMVK :: #type proc "system" (instance: Instance, pCreateInfo: ^IOSSurfaceCreateInfoMVK, pAllocator: ^AllocationCallbacks, pSurface: ^SurfaceKHR) -> Result diff --git a/vendor/vulkan/structs.odin b/vendor/vulkan/structs.odin index 9ee8d1511..24d47489a 100644 --- a/vendor/vulkan/structs.odin +++ b/vendor/vulkan/structs.odin @@ -181,9 +181,9 @@ InstanceCreateInfo :: struct { flags: InstanceCreateFlags, pApplicationInfo: ^ApplicationInfo, enabledLayerCount: u32, - ppEnabledLayerNames: cstring_array, + ppEnabledLayerNames: [^]cstring, enabledExtensionCount: u32, - ppEnabledExtensionNames: cstring_array, + ppEnabledExtensionNames: [^]cstring, } MemoryHeap :: struct { @@ -403,7 +403,7 @@ DeviceQueueCreateInfo :: struct { flags: DeviceQueueCreateFlags, queueFamilyIndex: u32, queueCount: u32, - pQueuePriorities: ^f32, + pQueuePriorities: [^]f32, } DeviceCreateInfo :: struct { @@ -411,12 +411,12 @@ DeviceCreateInfo :: struct { pNext: rawptr, flags: DeviceCreateFlags, queueCreateInfoCount: u32, - pQueueCreateInfos: ^DeviceQueueCreateInfo, + pQueueCreateInfos: [^]DeviceQueueCreateInfo, enabledLayerCount: u32, - ppEnabledLayerNames: cstring_array, + ppEnabledLayerNames: [^]cstring, enabledExtensionCount: u32, - ppEnabledExtensionNames: cstring_array, - pEnabledFeatures: ^PhysicalDeviceFeatures, + ppEnabledExtensionNames: [^]cstring, + pEnabledFeatures: [^]PhysicalDeviceFeatures, } ExtensionProperties :: struct { @@ -435,12 +435,12 @@ SubmitInfo :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreCount: u32, - pWaitSemaphores: ^Semaphore, - pWaitDstStageMask: ^PipelineStageFlags, + pWaitSemaphores: [^]Semaphore, + pWaitDstStageMask: [^]PipelineStageFlags, commandBufferCount: u32, - pCommandBuffers: ^CommandBuffer, + pCommandBuffers: [^]CommandBuffer, signalSemaphoreCount: u32, - pSignalSemaphores: ^Semaphore, + pSignalSemaphores: [^]Semaphore, } MappedMemoryRange :: struct { @@ -475,13 +475,13 @@ SparseMemoryBind :: struct { SparseBufferMemoryBindInfo :: struct { buffer: Buffer, bindCount: u32, - pBinds: ^SparseMemoryBind, + pBinds: [^]SparseMemoryBind, } SparseImageOpaqueMemoryBindInfo :: struct { image: Image, bindCount: u32, - pBinds: ^SparseMemoryBind, + pBinds: [^]SparseMemoryBind, } ImageSubresource :: struct { @@ -502,22 +502,22 @@ SparseImageMemoryBind :: struct { SparseImageMemoryBindInfo :: struct { image: Image, bindCount: u32, - pBinds: ^SparseImageMemoryBind, + pBinds: [^]SparseImageMemoryBind, } BindSparseInfo :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreCount: u32, - pWaitSemaphores: ^Semaphore, + pWaitSemaphores: [^]Semaphore, bufferBindCount: u32, - pBufferBinds: ^SparseBufferMemoryBindInfo, + pBufferBinds: [^]SparseBufferMemoryBindInfo, imageOpaqueBindCount: u32, - pImageOpaqueBinds: ^SparseImageOpaqueMemoryBindInfo, + pImageOpaqueBinds: [^]SparseImageOpaqueMemoryBindInfo, imageBindCount: u32, - pImageBinds: ^SparseImageMemoryBindInfo, + pImageBinds: [^]SparseImageMemoryBindInfo, signalSemaphoreCount: u32, - pSignalSemaphores: ^Semaphore, + pSignalSemaphores: [^]Semaphore, } SparseImageFormatProperties :: struct { @@ -569,7 +569,7 @@ BufferCreateInfo :: struct { usage: BufferUsageFlags, sharingMode: SharingMode, queueFamilyIndexCount: u32, - pQueueFamilyIndices: ^u32, + pQueueFamilyIndices: [^]u32, } BufferViewCreateInfo :: struct { @@ -596,7 +596,7 @@ ImageCreateInfo :: struct { usage: ImageUsageFlags, sharingMode: SharingMode, queueFamilyIndexCount: u32, - pQueueFamilyIndices: ^u32, + pQueueFamilyIndices: [^]u32, initialLayout: ImageLayout, } @@ -650,7 +650,7 @@ SpecializationMapEntry :: struct { SpecializationInfo :: struct { mapEntryCount: u32, - pMapEntries: ^SpecializationMapEntry, + pMapEntries: [^]SpecializationMapEntry, dataSize: int, pData: rawptr, } @@ -693,9 +693,9 @@ PipelineVertexInputStateCreateInfo :: struct { pNext: rawptr, flags: PipelineVertexInputStateCreateFlags, vertexBindingDescriptionCount: u32, - pVertexBindingDescriptions: ^VertexInputBindingDescription, + pVertexBindingDescriptions: [^]VertexInputBindingDescription, vertexAttributeDescriptionCount: u32, - pVertexAttributeDescriptions: ^VertexInputAttributeDescription, + pVertexAttributeDescriptions: [^]VertexInputAttributeDescription, } PipelineInputAssemblyStateCreateInfo :: struct { @@ -727,9 +727,9 @@ PipelineViewportStateCreateInfo :: struct { pNext: rawptr, flags: PipelineViewportStateCreateFlags, viewportCount: u32, - pViewports: ^Viewport, + pViewports: [^]Viewport, scissorCount: u32, - pScissors: ^Rect2D, + pScissors: [^]Rect2D, } PipelineRasterizationStateCreateInfo :: struct { @@ -803,7 +803,7 @@ PipelineColorBlendStateCreateInfo :: struct { logicOpEnable: b32, logicOp: LogicOp, attachmentCount: u32, - pAttachments: ^PipelineColorBlendAttachmentState, + pAttachments: [^]PipelineColorBlendAttachmentState, blendConstants: [4]f32, } @@ -812,7 +812,7 @@ PipelineDynamicStateCreateInfo :: struct { pNext: rawptr, flags: PipelineDynamicStateCreateFlags, dynamicStateCount: u32, - pDynamicStates: ^DynamicState, + pDynamicStates: [^]DynamicState, } GraphicsPipelineCreateInfo :: struct { @@ -820,7 +820,7 @@ GraphicsPipelineCreateInfo :: struct { pNext: rawptr, flags: PipelineCreateFlags, stageCount: u32, - pStages: ^PipelineShaderStageCreateInfo, + pStages: [^]PipelineShaderStageCreateInfo, pVertexInputState: ^PipelineVertexInputStateCreateInfo, pInputAssemblyState: ^PipelineInputAssemblyStateCreateInfo, pTessellationState: ^PipelineTessellationStateCreateInfo, @@ -848,9 +848,9 @@ PipelineLayoutCreateInfo :: struct { pNext: rawptr, flags: PipelineLayoutCreateFlags, setLayoutCount: u32, - pSetLayouts: ^DescriptorSetLayout, + pSetLayouts: [^]DescriptorSetLayout, pushConstantRangeCount: u32, - pPushConstantRanges: ^PushConstantRange, + pPushConstantRanges: [^]PushConstantRange, } SamplerCreateInfo :: struct { @@ -909,7 +909,7 @@ DescriptorPoolCreateInfo :: struct { flags: DescriptorPoolCreateFlags, maxSets: u32, poolSizeCount: u32, - pPoolSizes: ^DescriptorPoolSize, + pPoolSizes: [^]DescriptorPoolSize, } DescriptorSetAllocateInfo :: struct { @@ -917,7 +917,7 @@ DescriptorSetAllocateInfo :: struct { pNext: rawptr, descriptorPool: DescriptorPool, descriptorSetCount: u32, - pSetLayouts: ^DescriptorSetLayout, + pSetLayouts: [^]DescriptorSetLayout, } DescriptorSetLayoutBinding :: struct { @@ -925,7 +925,7 @@ DescriptorSetLayoutBinding :: struct { descriptorType: DescriptorType, descriptorCount: u32, stageFlags: ShaderStageFlags, - pImmutableSamplers: ^Sampler, + pImmutableSamplers: [^]Sampler, } DescriptorSetLayoutCreateInfo :: struct { @@ -933,7 +933,7 @@ DescriptorSetLayoutCreateInfo :: struct { pNext: rawptr, flags: DescriptorSetLayoutCreateFlags, bindingCount: u32, - pBindings: ^DescriptorSetLayoutBinding, + pBindings: [^]DescriptorSetLayoutBinding, } WriteDescriptorSet :: struct { @@ -972,7 +972,7 @@ FramebufferCreateInfo :: struct { flags: FramebufferCreateFlags, renderPass: RenderPass, attachmentCount: u32, - pAttachments: ^ImageView, + pAttachments: [^]ImageView, width: u32, height: u32, layers: u32, @@ -982,13 +982,13 @@ SubpassDescription :: struct { flags: SubpassDescriptionFlags, pipelineBindPoint: PipelineBindPoint, inputAttachmentCount: u32, - pInputAttachments: ^AttachmentReference, + pInputAttachments: [^]AttachmentReference, colorAttachmentCount: u32, - pColorAttachments: ^AttachmentReference, - pResolveAttachments: ^AttachmentReference, + pColorAttachments: [^]AttachmentReference, + pResolveAttachments: [^]AttachmentReference, pDepthStencilAttachment: ^AttachmentReference, preserveAttachmentCount: u32, - pPreserveAttachments: ^u32, + pPreserveAttachments: [^]u32, } SubpassDependency :: struct { @@ -1006,11 +1006,11 @@ RenderPassCreateInfo :: struct { pNext: rawptr, flags: RenderPassCreateFlags, attachmentCount: u32, - pAttachments: ^AttachmentDescription, + pAttachments: [^]AttachmentDescription, subpassCount: u32, - pSubpasses: ^SubpassDescription, + pSubpasses: [^]SubpassDescription, dependencyCount: u32, - pDependencies: ^SubpassDependency, + pDependencies: [^]SubpassDependency, } CommandPoolCreateInfo :: struct { @@ -1126,7 +1126,7 @@ RenderPassBeginInfo :: struct { framebuffer: Framebuffer, renderArea: Rect2D, clearValueCount: u32, - pClearValues: ^ClearValue, + pClearValues: [^]ClearValue, } PhysicalDeviceSubgroupProperties :: struct { @@ -1189,7 +1189,7 @@ DeviceGroupRenderPassBeginInfo :: struct { pNext: rawptr, deviceMask: u32, deviceRenderAreaCount: u32, - pDeviceRenderAreas: ^Rect2D, + pDeviceRenderAreas: [^]Rect2D, } DeviceGroupCommandBufferBeginInfo :: struct { @@ -1202,11 +1202,11 @@ DeviceGroupSubmitInfo :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreCount: u32, - pWaitSemaphoreDeviceIndices: ^u32, + pWaitSemaphoreDeviceIndices: [^]u32, commandBufferCount: u32, - pCommandBufferDeviceMasks: ^u32, + pCommandBufferDeviceMasks: [^]u32, signalSemaphoreCount: u32, - pSignalSemaphoreDeviceIndices: ^u32, + pSignalSemaphoreDeviceIndices: [^]u32, } DeviceGroupBindSparseInfo :: struct { @@ -1220,16 +1220,16 @@ BindBufferMemoryDeviceGroupInfo :: struct { sType: StructureType, pNext: rawptr, deviceIndexCount: u32, - pDeviceIndices: ^u32, + pDeviceIndices: [^]u32, } BindImageMemoryDeviceGroupInfo :: struct { sType: StructureType, pNext: rawptr, deviceIndexCount: u32, - pDeviceIndices: ^u32, + pDeviceIndices: [^]u32, splitInstanceBindRegionCount: u32, - pSplitInstanceBindRegions: ^Rect2D, + pSplitInstanceBindRegions: [^]Rect2D, } PhysicalDeviceGroupProperties :: struct { @@ -1244,7 +1244,7 @@ DeviceGroupDeviceCreateInfo :: struct { sType: StructureType, pNext: rawptr, physicalDeviceCount: u32, - pPhysicalDevices: ^PhysicalDevice, + pPhysicalDevices: [^]PhysicalDevice, } BufferMemoryRequirementsInfo2 :: struct { @@ -1355,7 +1355,7 @@ RenderPassInputAttachmentAspectCreateInfo :: struct { sType: StructureType, pNext: rawptr, aspectReferenceCount: u32, - pAspectReferences: ^InputAttachmentAspectReference, + pAspectReferences: [^]InputAttachmentAspectReference, } ImageViewUsageCreateInfo :: struct { @@ -1374,11 +1374,11 @@ RenderPassMultiviewCreateInfo :: struct { sType: StructureType, pNext: rawptr, subpassCount: u32, - pViewMasks: ^u32, + pViewMasks: [^]u32, dependencyCount: u32, - pViewOffsets: ^i32, + pViewOffsets: [^]i32, correlationMaskCount: u32, - pCorrelationMasks: ^u32, + pCorrelationMasks: [^]u32, } PhysicalDeviceMultiviewFeatures :: struct { @@ -1486,7 +1486,7 @@ DescriptorUpdateTemplateCreateInfo :: struct { pNext: rawptr, flags: DescriptorUpdateTemplateCreateFlags, descriptorUpdateEntryCount: u32, - pDescriptorUpdateEntries: ^DescriptorUpdateTemplateEntry, + pDescriptorUpdateEntries: [^]DescriptorUpdateTemplateEntry, templateType: DescriptorUpdateTemplateType, descriptorSetLayout: DescriptorSetLayout, pipelineBindPoint: PipelineBindPoint, @@ -1770,7 +1770,7 @@ ImageFormatListCreateInfo :: struct { sType: StructureType, pNext: rawptr, viewFormatCount: u32, - pViewFormats: ^Format, + pViewFormats: [^]Format, } AttachmentDescription2 :: struct { @@ -1802,13 +1802,13 @@ SubpassDescription2 :: struct { pipelineBindPoint: PipelineBindPoint, viewMask: u32, inputAttachmentCount: u32, - pInputAttachments: ^AttachmentReference2, + pInputAttachments: [^]AttachmentReference2, colorAttachmentCount: u32, - pColorAttachments: ^AttachmentReference2, - pResolveAttachments: ^AttachmentReference2, + pColorAttachments: [^]AttachmentReference2, + pResolveAttachments: [^]AttachmentReference2, pDepthStencilAttachment: ^AttachmentReference2, preserveAttachmentCount: u32, - pPreserveAttachments: ^u32, + pPreserveAttachments: [^]u32, } SubpassDependency2 :: struct { @@ -1829,13 +1829,13 @@ RenderPassCreateInfo2 :: struct { pNext: rawptr, flags: RenderPassCreateFlags, attachmentCount: u32, - pAttachments: ^AttachmentDescription2, + pAttachments: [^]AttachmentDescription2, subpassCount: u32, - pSubpasses: ^SubpassDescription2, + pSubpasses: [^]SubpassDescription2, dependencyCount: u32, - pDependencies: ^SubpassDependency2, + pDependencies: [^]SubpassDependency2, correlatedViewMaskCount: u32, - pCorrelatedViewMasks: ^u32, + pCorrelatedViewMasks: [^]u32, } SubpassBeginInfo :: struct { @@ -1906,7 +1906,7 @@ DescriptorSetLayoutBindingFlagsCreateInfo :: struct { sType: StructureType, pNext: rawptr, bindingCount: u32, - pBindingFlags: ^DescriptorBindingFlags, + pBindingFlags: [^]DescriptorBindingFlags, } PhysicalDeviceDescriptorIndexingFeatures :: struct { @@ -1966,7 +1966,7 @@ DescriptorSetVariableDescriptorCountAllocateInfo :: struct { sType: StructureType, pNext: rawptr, descriptorSetCount: u32, - pDescriptorCounts: ^u32, + pDescriptorCounts: [^]u32, } DescriptorSetVariableDescriptorCountLayoutSupport :: struct { @@ -2040,21 +2040,21 @@ FramebufferAttachmentImageInfo :: struct { height: u32, layerCount: u32, viewFormatCount: u32, - pViewFormats: ^Format, + pViewFormats: [^]Format, } FramebufferAttachmentsCreateInfo :: struct { sType: StructureType, pNext: rawptr, attachmentImageInfoCount: u32, - pAttachmentImageInfos: ^FramebufferAttachmentImageInfo, + pAttachmentImageInfos: [^]FramebufferAttachmentImageInfo, } RenderPassAttachmentBeginInfo :: struct { sType: StructureType, pNext: rawptr, attachmentCount: u32, - pAttachments: ^ImageView, + pAttachments: [^]ImageView, } PhysicalDeviceUniformBufferStandardLayoutFeatures :: struct { @@ -2117,9 +2117,9 @@ TimelineSemaphoreSubmitInfo :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreValueCount: u32, - pWaitSemaphoreValues: ^u64, + pWaitSemaphoreValues: [^]u64, signalSemaphoreValueCount: u32, - pSignalSemaphoreValues: ^u64, + pSignalSemaphoreValues: [^]u64, } SemaphoreWaitInfo :: struct { @@ -2127,8 +2127,8 @@ SemaphoreWaitInfo :: struct { pNext: rawptr, flags: SemaphoreWaitFlags, semaphoreCount: u32, - pSemaphores: ^Semaphore, - pValues: ^u64, + pSemaphores: [^]Semaphore, + pValues: [^]u64, } SemaphoreSignalInfo :: struct { @@ -2201,7 +2201,7 @@ SwapchainCreateInfoKHR :: struct { imageUsage: ImageUsageFlags, imageSharingMode: SharingMode, queueFamilyIndexCount: u32, - pQueueFamilyIndices: ^u32, + pQueueFamilyIndices: [^]u32, preTransform: SurfaceTransformFlagsKHR, compositeAlpha: CompositeAlphaFlagsKHR, presentMode: PresentModeKHR, @@ -2213,11 +2213,11 @@ PresentInfoKHR :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreCount: u32, - pWaitSemaphores: ^Semaphore, + pWaitSemaphores: [^]Semaphore, swapchainCount: u32, - pSwapchains: ^SwapchainKHR, - pImageIndices: ^u32, - pResults: ^Result, + pSwapchains: [^]SwapchainKHR, + pImageIndices: [^]u32, + pResults: [^]Result, } ImageSwapchainCreateInfoKHR :: struct { @@ -2254,7 +2254,7 @@ DeviceGroupPresentInfoKHR :: struct { sType: StructureType, pNext: rawptr, swapchainCount: u32, - pDeviceMasks: ^u32, + pDeviceMasks: [^]u32, mode: DeviceGroupPresentModeFlagsKHR, } @@ -2379,14 +2379,14 @@ RectLayerKHR :: struct { PresentRegionKHR :: struct { rectangleCount: u32, - pRectangles: ^RectLayerKHR, + pRectangles: [^]RectLayerKHR, } PresentRegionsKHR :: struct { sType: StructureType, pNext: rawptr, swapchainCount: u32, - pRegions: ^PresentRegionKHR, + pRegions: [^]PresentRegionKHR, } SharedPresentSurfaceCapabilitiesKHR :: struct { @@ -2447,7 +2447,7 @@ QueryPoolPerformanceCreateInfoKHR :: struct { pNext: rawptr, queueFamilyIndex: u32, counterIndexCount: u32, - pCounterIndices: ^u32, + pCounterIndices: [^]u32, } PerformanceCounterResultKHR :: struct #raw_union { @@ -2696,14 +2696,14 @@ PipelineLibraryCreateInfoKHR :: struct { sType: StructureType, pNext: rawptr, libraryCount: u32, - pLibraries: ^Pipeline, + pLibraries: [^]Pipeline, } PresentIdKHR :: struct { sType: StructureType, pNext: rawptr, swapchainCount: u32, - pPresentIds: ^u64, + pPresentIds: [^]u64, } PhysicalDevicePresentIdFeaturesKHR :: struct { @@ -2755,11 +2755,11 @@ DependencyInfoKHR :: struct { pNext: rawptr, dependencyFlags: DependencyFlags, memoryBarrierCount: u32, - pMemoryBarriers: ^MemoryBarrier2KHR, + pMemoryBarriers: [^]MemoryBarrier2KHR, bufferMemoryBarrierCount: u32, - pBufferMemoryBarriers: ^BufferMemoryBarrier2KHR, + pBufferMemoryBarriers: [^]BufferMemoryBarrier2KHR, imageMemoryBarrierCount: u32, - pImageMemoryBarriers: ^ImageMemoryBarrier2KHR, + pImageMemoryBarriers: [^]ImageMemoryBarrier2KHR, } SemaphoreSubmitInfoKHR :: struct { @@ -2783,11 +2783,11 @@ SubmitInfo2KHR :: struct { pNext: rawptr, flags: SubmitFlagsKHR, waitSemaphoreInfoCount: u32, - pWaitSemaphoreInfos: ^SemaphoreSubmitInfoKHR, + pWaitSemaphoreInfos: [^]SemaphoreSubmitInfoKHR, commandBufferInfoCount: u32, - pCommandBufferInfos: ^CommandBufferSubmitInfoKHR, + pCommandBufferInfos: [^]CommandBufferSubmitInfoKHR, signalSemaphoreInfoCount: u32, - pSignalSemaphoreInfos: ^SemaphoreSubmitInfoKHR, + pSignalSemaphoreInfos: [^]SemaphoreSubmitInfoKHR, } PhysicalDeviceSynchronization2FeaturesKHR :: struct { @@ -2844,7 +2844,7 @@ CopyBufferInfo2KHR :: struct { srcBuffer: Buffer, dstBuffer: Buffer, regionCount: u32, - pRegions: ^BufferCopy2KHR, + pRegions: [^]BufferCopy2KHR, } ImageCopy2KHR :: struct { @@ -2865,7 +2865,7 @@ CopyImageInfo2KHR :: struct { dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, - pRegions: ^ImageCopy2KHR, + pRegions: [^]ImageCopy2KHR, } BufferImageCopy2KHR :: struct { @@ -2886,7 +2886,7 @@ CopyBufferToImageInfo2KHR :: struct { dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, - pRegions: ^BufferImageCopy2KHR, + pRegions: [^]BufferImageCopy2KHR, } CopyImageToBufferInfo2KHR :: struct { @@ -2896,7 +2896,7 @@ CopyImageToBufferInfo2KHR :: struct { srcImageLayout: ImageLayout, dstBuffer: Buffer, regionCount: u32, - pRegions: ^BufferImageCopy2KHR, + pRegions: [^]BufferImageCopy2KHR, } ImageBlit2KHR :: struct { @@ -2916,7 +2916,7 @@ BlitImageInfo2KHR :: struct { dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, - pRegions: ^ImageBlit2KHR, + pRegions: [^]ImageBlit2KHR, filter: Filter, } @@ -2938,7 +2938,7 @@ ResolveImageInfo2KHR :: struct { dstImage: Image, dstImageLayout: ImageLayout, regionCount: u32, - pRegions: ^ImageResolve2KHR, + pRegions: [^]ImageResolve2KHR, } DebugReportCallbackCreateInfoEXT :: struct { @@ -3054,9 +3054,9 @@ CuLaunchInfoNVX :: struct { blockDimZ: u32, sharedMemBytes: u32, paramCount: int, - pParams: ^rawptr, + pParams: [^]rawptr, extraCount: int, - pExtras: ^rawptr, + pExtras: [^]rawptr, } ImageViewHandleInfoNVX :: struct { @@ -3127,7 +3127,7 @@ ValidationFlagsEXT :: struct { sType: StructureType, pNext: rawptr, disabledValidationCheckCount: u32, - pDisabledValidationChecks: ^ValidationCheckEXT, + pDisabledValidationChecks: [^]ValidationCheckEXT, } PhysicalDeviceTextureCompressionASTCHDRFeaturesEXT :: struct { @@ -3179,7 +3179,7 @@ PipelineViewportWScalingStateCreateInfoNV :: struct { pNext: rawptr, viewportWScalingEnable: b32, viewportCount: u32, - pViewportWScalings: ^ViewportWScalingNV, + pViewportWScalings: [^]ViewportWScalingNV, } SurfaceCapabilities2EXT :: struct { @@ -3243,7 +3243,7 @@ PresentTimesInfoGOOGLE :: struct { sType: StructureType, pNext: rawptr, swapchainCount: u32, - pTimes: ^PresentTimeGOOGLE, + pTimes: [^]PresentTimeGOOGLE, } PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX :: struct { @@ -3264,7 +3264,7 @@ PipelineViewportSwizzleStateCreateInfoNV :: struct { pNext: rawptr, flags: PipelineViewportSwizzleStateCreateFlagsNV, viewportCount: u32, - pViewportSwizzles: ^ViewportSwizzleNV, + pViewportSwizzles: [^]ViewportSwizzleNV, } PhysicalDeviceDiscardRectanglePropertiesEXT :: struct { @@ -3279,7 +3279,7 @@ PipelineDiscardRectangleStateCreateInfoEXT :: struct { flags: PipelineDiscardRectangleStateCreateFlagsEXT, discardRectangleMode: DiscardRectangleModeEXT, discardRectangleCount: u32, - pDiscardRectangles: ^Rect2D, + pDiscardRectangles: [^]Rect2D, } PhysicalDeviceConservativeRasterizationPropertiesEXT :: struct { @@ -3358,11 +3358,11 @@ DebugUtilsMessengerCallbackDataEXT :: struct { messageIdNumber: i32, pMessage: cstring, queueLabelCount: u32, - pQueueLabels: ^DebugUtilsLabelEXT, + pQueueLabels: [^]DebugUtilsLabelEXT, cmdBufLabelCount: u32, - pCmdBufLabels: ^DebugUtilsLabelEXT, + pCmdBufLabels: [^]DebugUtilsLabelEXT, objectCount: u32, - pObjects: ^DebugUtilsObjectNameInfoEXT, + pObjects: [^]DebugUtilsObjectNameInfoEXT, } DebugUtilsMessengerCreateInfoEXT :: struct { @@ -3426,7 +3426,7 @@ SampleLocationsInfoEXT :: struct { sampleLocationsPerPixel: SampleCountFlags, sampleLocationGridSize: Extent2D, sampleLocationsCount: u32, - pSampleLocations: ^SampleLocationEXT, + pSampleLocations: [^]SampleLocationEXT, } AttachmentSampleLocationsEXT :: struct { @@ -3443,9 +3443,9 @@ RenderPassSampleLocationsBeginInfoEXT :: struct { sType: StructureType, pNext: rawptr, attachmentInitialSampleLocationsCount: u32, - pAttachmentInitialSampleLocations: ^AttachmentSampleLocationsEXT, + pAttachmentInitialSampleLocations: [^]AttachmentSampleLocationsEXT, postSubpassSampleLocationsCount: u32, - pPostSubpassSampleLocations: ^SubpassSampleLocationsEXT, + pPostSubpassSampleLocations: [^]SubpassSampleLocationsEXT, } PipelineSampleLocationsStateCreateInfoEXT :: struct { @@ -3511,7 +3511,7 @@ PipelineCoverageModulationStateCreateInfoNV :: struct { coverageModulationMode: CoverageModulationModeNV, coverageModulationTableEnable: b32, coverageModulationTableCount: u32, - pCoverageModulationTable: ^f32, + pCoverageModulationTable: [^]f32, } PhysicalDeviceShaderSMBuiltinsPropertiesNV :: struct { @@ -3537,7 +3537,7 @@ DrmFormatModifierPropertiesListEXT :: struct { sType: StructureType, pNext: rawptr, drmFormatModifierCount: u32, - pDrmFormatModifierProperties: ^DrmFormatModifierPropertiesEXT, + pDrmFormatModifierProperties: [^]DrmFormatModifierPropertiesEXT, } PhysicalDeviceImageDrmFormatModifierInfoEXT :: struct { @@ -3546,14 +3546,14 @@ PhysicalDeviceImageDrmFormatModifierInfoEXT :: struct { drmFormatModifier: u64, sharingMode: SharingMode, queueFamilyIndexCount: u32, - pQueueFamilyIndices: ^u32, + pQueueFamilyIndices: [^]u32, } ImageDrmFormatModifierListCreateInfoEXT :: struct { sType: StructureType, pNext: rawptr, drmFormatModifierCount: u32, - pDrmFormatModifiers: ^u64, + pDrmFormatModifiers: [^]u64, } ImageDrmFormatModifierExplicitCreateInfoEXT :: struct { @@ -3561,7 +3561,7 @@ ImageDrmFormatModifierExplicitCreateInfoEXT :: struct { pNext: rawptr, drmFormatModifier: u64, drmFormatModifierPlaneCount: u32, - pPlaneLayouts: ^SubresourceLayout, + pPlaneLayouts: [^]SubresourceLayout, } ImageDrmFormatModifierPropertiesEXT :: struct { @@ -3586,7 +3586,7 @@ ShaderModuleValidationCacheCreateInfoEXT :: struct { ShadingRatePaletteNV :: struct { shadingRatePaletteEntryCount: u32, - pShadingRatePaletteEntries: ^ShadingRatePaletteEntryNV, + pShadingRatePaletteEntries: [^]ShadingRatePaletteEntryNV, } PipelineViewportShadingRateImageStateCreateInfoNV :: struct { @@ -3594,7 +3594,7 @@ PipelineViewportShadingRateImageStateCreateInfoNV :: struct { pNext: rawptr, shadingRateImageEnable: b32, viewportCount: u32, - pShadingRatePalettes: ^ShadingRatePaletteNV, + pShadingRatePalettes: [^]ShadingRatePaletteNV, } PhysicalDeviceShadingRateImageFeaturesNV :: struct { @@ -3622,7 +3622,7 @@ CoarseSampleOrderCustomNV :: struct { shadingRate: ShadingRatePaletteEntryNV, sampleCount: u32, sampleLocationCount: u32, - pSampleLocations: ^CoarseSampleLocationNV, + pSampleLocations: [^]CoarseSampleLocationNV, } PipelineViewportCoarseSampleOrderStateCreateInfoNV :: struct { @@ -3630,7 +3630,7 @@ PipelineViewportCoarseSampleOrderStateCreateInfoNV :: struct { pNext: rawptr, sampleOrderType: CoarseSampleOrderTypeNV, customSampleOrderCount: u32, - pCustomSampleOrders: ^CoarseSampleOrderCustomNV, + pCustomSampleOrders: [^]CoarseSampleOrderCustomNV, } RayTracingShaderGroupCreateInfoNV :: struct { @@ -3648,9 +3648,9 @@ RayTracingPipelineCreateInfoNV :: struct { pNext: rawptr, flags: PipelineCreateFlags, stageCount: u32, - pStages: ^PipelineShaderStageCreateInfo, + pStages: [^]PipelineShaderStageCreateInfo, groupCount: u32, - pGroups: ^RayTracingShaderGroupCreateInfoNV, + pGroups: [^]RayTracingShaderGroupCreateInfoNV, maxRecursionDepth: u32, layout: PipelineLayout, basePipelineHandle: Pipeline, @@ -3702,7 +3702,7 @@ AccelerationStructureInfoNV :: struct { flags: BuildAccelerationStructureFlagsNV, instanceCount: u32, geometryCount: u32, - pGeometries: ^GeometryNV, + pGeometries: [^]GeometryNV, } AccelerationStructureCreateInfoNV :: struct { @@ -3719,14 +3719,14 @@ BindAccelerationStructureMemoryInfoNV :: struct { memory: DeviceMemory, memoryOffset: DeviceSize, deviceIndexCount: u32, - pDeviceIndices: ^u32, + pDeviceIndices: [^]u32, } WriteDescriptorSetAccelerationStructureNV :: struct { sType: StructureType, pNext: rawptr, accelerationStructureCount: u32, - pAccelerationStructures: ^AccelerationStructureNV, + pAccelerationStructures: [^]AccelerationStructureNV, } AccelerationStructureMemoryRequirementsInfoNV :: struct { @@ -3869,7 +3869,7 @@ PipelineVertexInputDivisorStateCreateInfoEXT :: struct { sType: StructureType, pNext: rawptr, vertexBindingDivisorCount: u32, - pVertexBindingDivisors: ^VertexInputBindingDivisorDescriptionEXT, + pVertexBindingDivisors: [^]VertexInputBindingDivisorDescriptionEXT, } PhysicalDeviceVertexAttributeDivisorFeaturesEXT :: struct { @@ -3889,7 +3889,7 @@ PipelineCreationFeedbackCreateInfoEXT :: struct { pNext: rawptr, pPipelineCreationFeedback: ^PipelineCreationFeedbackEXT, pipelineStageCreationFeedbackCount: u32, - pPipelineStageCreationFeedbacks: ^PipelineCreationFeedbackEXT, + pPipelineStageCreationFeedbacks: [^]PipelineCreationFeedbackEXT, } PhysicalDeviceComputeShaderDerivativesFeaturesNV :: struct { @@ -3945,7 +3945,7 @@ PipelineViewportExclusiveScissorStateCreateInfoNV :: struct { sType: StructureType, pNext: rawptr, exclusiveScissorCount: u32, - pExclusiveScissors: ^Rect2D, + pExclusiveScissors: [^]Rect2D, } PhysicalDeviceExclusiveScissorFeaturesNV :: struct { @@ -4162,9 +4162,9 @@ ValidationFeaturesEXT :: struct { sType: StructureType, pNext: rawptr, enabledValidationFeatureCount: u32, - pEnabledValidationFeatures: ^ValidationFeatureEnableEXT, + pEnabledValidationFeatures: [^]ValidationFeatureEnableEXT, disabledValidationFeatureCount: u32, - pDisabledValidationFeatures: ^ValidationFeatureDisableEXT, + pDisabledValidationFeatures: [^]ValidationFeatureDisableEXT, } CooperativeMatrixPropertiesNV :: struct { @@ -4357,7 +4357,7 @@ GraphicsShaderGroupCreateInfoNV :: struct { sType: StructureType, pNext: rawptr, stageCount: u32, - pStages: ^PipelineShaderStageCreateInfo, + pStages: [^]PipelineShaderStageCreateInfo, pVertexInputState: ^PipelineVertexInputStateCreateInfo, pTessellationState: ^PipelineTessellationStateCreateInfo, } @@ -4366,9 +4366,9 @@ GraphicsPipelineShaderGroupsCreateInfoNV :: struct { sType: StructureType, pNext: rawptr, groupCount: u32, - pGroups: ^GraphicsShaderGroupCreateInfoNV, + pGroups: [^]GraphicsShaderGroupCreateInfoNV, pipelineCount: u32, - pPipelines: ^Pipeline, + pPipelines: [^]Pipeline, } BindShaderGroupIndirectCommandNV :: struct { @@ -4410,8 +4410,8 @@ IndirectCommandsLayoutTokenNV :: struct { pushconstantSize: u32, indirectStateFlags: IndirectStateFlagsNV, indexTypeCount: u32, - pIndexTypes: ^IndexType, - pIndexTypeValues: ^u32, + pIndexTypes: [^]IndexType, + pIndexTypeValues: [^]u32, } IndirectCommandsLayoutCreateInfoNV :: struct { @@ -4420,9 +4420,9 @@ IndirectCommandsLayoutCreateInfoNV :: struct { flags: IndirectCommandsLayoutUsageFlagsNV, pipelineBindPoint: PipelineBindPoint, tokenCount: u32, - pTokens: ^IndirectCommandsLayoutTokenNV, + pTokens: [^]IndirectCommandsLayoutTokenNV, streamCount: u32, - pStreamStrides: ^u32, + pStreamStrides: [^]u32, } GeneratedCommandsInfoNV :: struct { @@ -4432,7 +4432,7 @@ GeneratedCommandsInfoNV :: struct { pipeline: Pipeline, indirectCommandsLayout: IndirectCommandsLayoutNV, streamCount: u32, - pStreams: ^IndirectCommandsStreamNV, + pStreams: [^]IndirectCommandsStreamNV, sequencesCount: u32, preprocessBuffer: Buffer, preprocessOffset: DeviceSize, @@ -4463,7 +4463,7 @@ CommandBufferInheritanceViewportScissorInfoNV :: struct { pNext: rawptr, viewportScissor2D: b32, viewportDepthCount: u32, - pViewportDepths: ^Viewport, + pViewportDepths: [^]Viewport, } PhysicalDeviceTexelBufferAlignmentFeaturesEXT :: struct { @@ -4729,14 +4729,14 @@ PhysicalDeviceMutableDescriptorTypeFeaturesVALVE :: struct { MutableDescriptorTypeListVALVE :: struct { descriptorTypeCount: u32, - pDescriptorTypes: ^DescriptorType, + pDescriptorTypes: [^]DescriptorType, } MutableDescriptorTypeCreateInfoVALVE :: struct { sType: StructureType, pNext: rawptr, mutableDescriptorTypeListCount: u32, - pMutableDescriptorTypeLists: ^MutableDescriptorTypeListVALVE, + pMutableDescriptorTypeLists: [^]MutableDescriptorTypeListVALVE, } PhysicalDeviceVertexInputDynamicStateFeaturesEXT :: struct { @@ -4837,7 +4837,7 @@ PipelineColorWriteCreateInfoEXT :: struct { sType: StructureType, pNext: rawptr, attachmentCount: u32, - pColorWriteEnables: ^b32, + pColorWriteEnables: [^]b32, } PhysicalDeviceGlobalPriorityQueryFeaturesEXT :: struct { @@ -4943,8 +4943,8 @@ AccelerationStructureBuildGeometryInfoKHR :: struct { srcAccelerationStructure: AccelerationStructureKHR, dstAccelerationStructure: AccelerationStructureKHR, geometryCount: u32, - pGeometries: ^AccelerationStructureGeometryKHR, - ppGeometries: ^^AccelerationStructureGeometryKHR, + pGeometries: [^]AccelerationStructureGeometryKHR, + ppGeometries: ^[^]AccelerationStructureGeometryKHR, scratchData: DeviceOrHostAddressKHR, } @@ -4963,7 +4963,7 @@ WriteDescriptorSetAccelerationStructureKHR :: struct { sType: StructureType, pNext: rawptr, accelerationStructureCount: u32, - pAccelerationStructures: ^AccelerationStructureKHR, + pAccelerationStructures: [^]AccelerationStructureKHR, } PhysicalDeviceAccelerationStructureFeaturesKHR :: struct { @@ -5056,9 +5056,9 @@ RayTracingPipelineCreateInfoKHR :: struct { pNext: rawptr, flags: PipelineCreateFlags, stageCount: u32, - pStages: ^PipelineShaderStageCreateInfo, + pStages: [^]PipelineShaderStageCreateInfo, groupCount: u32, - pGroups: ^RayTracingShaderGroupCreateInfoKHR, + pGroups: [^]RayTracingShaderGroupCreateInfoKHR, maxPipelineRayRecursionDepth: u32, pLibraryInfo: ^PipelineLibraryCreateInfoKHR, pLibraryInterface: ^RayTracingPipelineInterfaceCreateInfoKHR, @@ -5128,7 +5128,7 @@ ImportMemoryWin32HandleInfoKHR :: struct { ExportMemoryWin32HandleInfoKHR :: struct { sType: StructureType, pNext: rawptr, - pAttributes: ^SECURITY_ATTRIBUTES, + pAttributes: [^]SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR, } @@ -5150,12 +5150,12 @@ Win32KeyedMutexAcquireReleaseInfoKHR :: struct { sType: StructureType, pNext: rawptr, acquireCount: u32, - pAcquireSyncs: ^DeviceMemory, - pAcquireKeys: ^u64, - pAcquireTimeouts: ^u32, + pAcquireSyncs: [^]DeviceMemory, + pAcquireKeys: [^]u64, + pAcquireTimeouts: [^]u32, releaseCount: u32, - pReleaseSyncs: ^DeviceMemory, - pReleaseKeys: ^u64, + pReleaseSyncs: [^]DeviceMemory, + pReleaseKeys: [^]u64, } ImportSemaphoreWin32HandleInfoKHR :: struct { @@ -5171,7 +5171,7 @@ ImportSemaphoreWin32HandleInfoKHR :: struct { ExportSemaphoreWin32HandleInfoKHR :: struct { sType: StructureType, pNext: rawptr, - pAttributes: ^SECURITY_ATTRIBUTES, + pAttributes: [^]SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR, } @@ -5180,9 +5180,9 @@ D3D12FenceSubmitInfoKHR :: struct { sType: StructureType, pNext: rawptr, waitSemaphoreValuesCount: u32, - pWaitSemaphoreValues: ^u64, + pWaitSemaphoreValues: [^]u64, signalSemaphoreValuesCount: u32, - pSignalSemaphoreValues: ^u64, + pSignalSemaphoreValues: [^]u64, } SemaphoreGetWin32HandleInfoKHR :: struct { @@ -5205,7 +5205,7 @@ ImportFenceWin32HandleInfoKHR :: struct { ExportFenceWin32HandleInfoKHR :: struct { sType: StructureType, pNext: rawptr, - pAttributes: ^SECURITY_ATTRIBUTES, + pAttributes: [^]SECURITY_ATTRIBUTES, dwAccess: DWORD, name: LPCWSTR, } @@ -5227,7 +5227,7 @@ ImportMemoryWin32HandleInfoNV :: struct { ExportMemoryWin32HandleInfoNV :: struct { sType: StructureType, pNext: rawptr, - pAttributes: ^SECURITY_ATTRIBUTES, + pAttributes: [^]SECURITY_ATTRIBUTES, dwAccess: DWORD, } @@ -5235,12 +5235,12 @@ Win32KeyedMutexAcquireReleaseInfoNV :: struct { sType: StructureType, pNext: rawptr, acquireCount: u32, - pAcquireSyncs: ^DeviceMemory, - pAcquireKeys: ^u64, - pAcquireTimeoutMilliseconds: ^u32, + pAcquireSyncs: [^]DeviceMemory, + pAcquireKeys: [^]u64, + pAcquireTimeoutMilliseconds: [^]u32, releaseCount: u32, - pReleaseSyncs: ^DeviceMemory, - pReleaseKeys: ^u64, + pReleaseSyncs: [^]DeviceMemory, + pReleaseKeys: [^]u64, } SurfaceFullScreenExclusiveInfoEXT :: struct {